https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66059
Adrian Wielgosik <adrian.wielgosik at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |adrian.wielgosik at gmail dot com --- Comment #9 from Adrian Wielgosik <adrian.wielgosik at gmail dot com> --- I did a simple comparison of the improved libstdc++ implementation and Daniel's one - the difference in time and resource usage is still significant. $ cat with_stdlib.cpp #include <utility> std::make_index_sequence<5000> thing; $ cat with_tao.cpp #include <make_integer_sequence.hpp> tao::seq::make_index_sequence<5000> thing; $ ./g++trunk with_stdlib.cpp -c -ftime-report Execution times (seconds) phase setup : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 1%) wall 1386 kB ( 1%) ggc phase parsing : 0.97 (100%) usr 0.01 (100%) sys 0.97 (98%) wall 118230 kB (99%) ggc phase finalize : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 1%) wall 0 kB ( 0%) ggc |name lookup : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 1%) wall 440 kB ( 0%) ggc |overload resolution : 0.03 ( 3%) usr 0.00 ( 0%) sys 0.03 ( 3%) wall 335 kB ( 0%) ggc parser (global) : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 1%) wall 1459 kB ( 1%) ggc parser struct body : 0.02 ( 2%) usr 0.00 ( 0%) sys 0.01 ( 1%) wall 1049 kB ( 1%) ggc parser inl. func. body : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 1%) wall 37 kB ( 0%) ggc template instantiation : 0.95 (98%) usr 0.01 (100%) sys 0.94 (95%) wall 115432 kB (96%) ggc TOTAL : 0.97 0.01 0.99 119627 kB Internal checks disabled; compiler is not suited for release. Configure with --enable-checking=release to enable checks. $ ./g++trunk -I sequences/include/tao/seq/ with_tao.cpp -c -ftime-report Execution times (seconds) phase setup : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall 1386 kB (16%) ggc phase parsing : 0.10 (100%) usr 0.01 (100%) sys 0.11 (100%) wall 7413 kB (84%) ggc |name lookup : 0.01 (10%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall 450 kB ( 5%) ggc preprocessing : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 9%) wall 192 kB ( 2%) ggc parser (global) : 0.01 (10%) usr 0.00 ( 0%) sys 0.01 ( 9%) wall 1483 kB (17%) ggc parser struct body : 0.02 (20%) usr 0.00 ( 0%) sys 0.02 (18%) wall 1063 kB (12%) ggc template instantiation : 0.07 (70%) usr 0.01 (100%) sys 0.07 (64%) wall 4563 kB (52%) ggc TOTAL : 0.10 0.01 0.11 8811 kB Internal checks disabled; compiler is not suited for release. Configure with --enable-checking=release to enable checks.