Skip to content

Make friend schedulers more robust #10343

Closed
@brson

Description

@brson

Right now when you spawn a SingleThreaded task, its scheduler is given a 'friend' scheduler to which it sends work that can't be executed. This creates a situation where threads that are rejecting a lot of work serialize a bunch of tasks through a single other thread which may not be able to run that work in a reasonable time.

Instead of sending work to a single friend it needs to either go back into the general pool, or (better) single-threaded schedulers should add their work queues to the global pool of work queues for stealing.

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-runtimeArea: std's runtime and "pre-main" init for handling backtraces, unwinds, stack overflows

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions