mackncheesiest / DSSoCEmulator

Linux userspace environment for emulating DSSoCs

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Implement pthread-level work queues

mackncheesiest opened this issue · comments

Requirements:

  • Each thread has a queue of tasks
  • Schedulers are able to query each thread for an estimate of their current queue's execution length (i.e. the sum of the ETAs for tasks in the queue)
  • It must be thread-safe for the scheduler/dispatch core to push work to the queue and for the pthread to pop work off in a FIFO manner
  • Rather than return to an idle state upon finishing task execution and waiting for the dispatch core to change its flag to "running", a hardware thread should continuously poll its queue for available work when it is not actively computing