Opened 12 years ago
Last modified 12 years ago
#4732 new Feature Requests
Event Ports for Solaris
Reported by: | Owned by: | chris_kohlhoff | |
---|---|---|---|
Milestone: | To Be Determined | Component: | asio |
Version: | Boost Development Trunk | Severity: | Optimization |
Keywords: | Cc: |
Description
Hi,
Is it possible to add support for event ports on the Solaris platform? I've written an application that uses the thread-pool strategy from the HTTP Server 2 example. As I understand, the /dev/poll method on Solaris needs lots of synchronization between threads.
I've noticed that my application does not nearly scale linearly with an increase in threads. Highest throughput is obtained at approximately 7 threads, after which I get diminishing returns. I think this could be due to the inter-thread synchronization needed to access /dev/poll? Please find 2 links detailing event ports and/or comparison with /dev/poll.
Jacques
If you are using the HTTP Server 2 design (io_service-per-CPU) then there is no contended synchronization in asio with respect to /dev/poll. Each io_service would have its own /dev/poll descriptor. The sub-linear scaling might be due to something else.
Realistically, support for event ports would need to be sponsored/funded. Please let me know if you are interested in pursuing that option.