C++ではOpenMPよりも、std algorithmが並列に動いた方が便利だよね。ということで作りました。元ネタはhttps://twitter.com/cpp_akira/status/16195866927です。 #ifdef _OPENMP inline size_t concurrency_omp() { size_t n; #pragma omp parallel { n = omp_get_num_threads(); } return n; } #endif inline size_t concurrency() { #ifdef _OPENMP static size_t const n{concurrency_omp()}; #else // g++ 4.5's hardware_concurrency() always returns zero :-( auto c