Commit 1d4fdb93 authored by Julien Jerphanion's avatar Julien Jerphanion

Revert "Add queue to workers randomly"

This reverts commit 39363f1c.

Reverting to experiment with the original runtime again,
to see if removing the logging helps.
parent 08b9c06d
......@@ -104,6 +104,7 @@ cdef cypclass Scheduler:
pthread_barrier_t barrier
sem_t num_free_queues
atomic[int] num_pending_queues
int next_worker
int num_workers
sem_t done
volatile bint is_done
......@@ -112,6 +113,7 @@ cdef cypclass Scheduler:
self = <lock Scheduler> consume alloc()
if num_workers == 0: num_workers = sysconf(_SC_NPROCESSORS_ONLN)
self.num_workers = num_workers
self.next_worker = 0
sem_init(&self.num_free_queues, 0, 0)
sem_init(&self.done, 0, 0)
self.num_pending_queues.store(0)
......@@ -139,8 +141,9 @@ cdef cypclass Scheduler:
sem_destroy(&self.done)
void post_queue(self, lock SequentialMailBox queue):
# Add a queue to workers randomly
worker = self.workers[<int> rand() % self.num_workers]
# Add a queue to workers in round robin
worker = self.workers[<int> self.next_worker]
self.next_worker = (self.next_worker + 1) % self.num_workers
with wlocked worker:
queue.has_worker = True
worker.queues.push_back(queue)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment