[erlang-questions] +swt very_low doesn't seem to avoid schedulers getting
Vance Shipley
vances@REDACTED
Tue Oct 16 13:08:12 CEST 2012
Rickard,
Maybe you can offer some insight into a problem I'm having. I have
a linked in driver which uses port level blocking with many ports.
The driver uses driver_set_timer() to wake up in so many milliseconds
(e.g. 10ms) to do a small amount of work in it's timeout() callback.
What we see is that despite a low CPU usage and multiple schedulers
often the timeout will be called quite late (e.g. 10-20ms late).
I have spent quite a bit of time looking at the implementation of the
schedulers but am not sure what's going on. I am beginning to think
the shceduler is going off to do aux work.
We've tried changing +swt without effect. What do you think?
On Wed, Oct 10, 2012 at 09:12:23PM +0200, Rickard Green wrote:
} This compaction of load onto fewer schedulers is there in order to
} reduce communication overhead when there aren't enough work to
} fully utilize all schedulers. The performance gain of this
} compaction depends on the hardware.
--
-Vance
More information about the erlang-questions
mailing list