KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I was testing algorithms and run into this weird behavior, when std::accumulate is faster than a simple for cycle. Looking at the generated assembler I'm not much wiser :-) It seems that the for cycle is optimized into MMX instructions, while accumulate expands into a loop. This is the code. The behavior manifests with -O3 optimization level, gcc 4.7.1 #include <vector> #include <chrono> #include <iostream> #include <random> #include <algorithm> using namespace std;
Tags (comma-separated)
Save Edits
Cancel