![]() |
Home | Libraries | People | FAQ | More |
Performance of Boost.Coroutine was measured
on the platforms shown in the following table. Performance measurements were
taken using rdtsc and boost::chrono::high_resolution_clock,
with overhead corrections, on x86 platforms. In each case, cache warm-up was
accounted for, and the one running thread was pinned to a single CPU. The code
was compiled using the build options, 'variant = release cxxflags = -DBOOST_DISABLE_ASSERTS'.
Table 1.1. Perfomance of coroutine
|
Platform |
switch |
construction (protected stack-allocator) |
construction (simple stack-allocator) |
construction (preallocated stack-allocator) |
|---|---|---|---|---|
|
i386 [a] |
78 ns / 77 cycles |
188868 ns / 245093 cycles |
31860 ns / 31812 cycles |
13127 ns / 19764 cycles |
|
x86_64 [b] |
28 ns / 74 cycles |
46916 ns / 109569 cycles |
14368 ns / 22705 cycles |
6114 ns / 16728 cycles |
|
[a] AMD Athlon 64 DualCore 4400+ [b] Intel Core2 Q6700 | ||||