Skip to content

perf(executor): ArrayQueue is slow #852

@George-Miao

Description

@George-Miao

ArrayQueue is used each time a task is scheduled:

  • When scheduling locally, ArrayQueue::pop is called repeatedly to piggyback remote schedules
  • When scheduling remotely, ArrayQueue::push is called

And ArrayQueue::pop is EXPENSIVE, really expensive: multiple atomic load and a SeqCst atomic fence when empty.

Metadata

Metadata

Assignees

Labels

help wantedExtra attention is neededpackage: executorRelated to compio-executorperformancePerformance related (regression/optimization)

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions