BIND 10 #2874: Test the Coroutines/RCU approach for resolver multi-threading
BIND 10 Development
do-not-reply at isc.org
Thu Jul 18 07:04:39 UTC 2013
#2874: Test the Coroutines/RCU approach for resolver multi-threading
-------------------------------------+-------------------------------------
Reporter: vorner | Owner:
Type: task | UnAssigned
Priority: medium | Status:
Component: resolver | reviewing
Keywords: | Milestone:
Sensitive: 0 | Sprint-20130723
Sub-Project: DNS | Resolution:
Estimated Difficulty: 7 | CVSS Scoring:
Total Hours: 0 | Defect Severity: N/A
| Feature Depending on Ticket:
| Add Hours to Ticket: 0
| Internal?: 0
-------------------------------------+-------------------------------------
Changes (by vorner):
* owner: vorner => UnAssigned
* status: accepted => reviewing
Comment:
Hello
It is ready for review. There are probably two things:
The boost coroutine library is not available on all systems and it needs
compiled boost (headers-only is not enough). I added some simple check for
boost, but I'm not sure if it is done properly or when it'll break. I'd
not like the compilation to break just because of the benchmark, so I'm
thinking we either need to do the checks properly (but I did not succeed
in learning how to use autoconf properly, I must have some mental block
there), or provide an explicit switch to enable the resolver benchmarks ‒
most people don't want them anyway. Yet another option would be not to
merge these to master, but to a separate branch, but I don't really like
that much.
The other thing, I hope it is not too hard to read. It seems better with
these coroutines than with the state-less ones, but it is still kind of
mind-bending to try and follow them through the scheduler (they look OK if
looked only from inside of the coroutine, so all the complexity is in the
scheduler).
--
Ticket URL: <http://bind10.isc.org/ticket/2874#comment:4>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development
More information about the bind10-tickets
mailing list