OpenMP を見ていると、ここで削減する 2 つの値があることがわかるように、最小長と最大長を見つける for ループがあります。
for (size_t i = 0; i < m_patterns.size(); ++i)
{// start for loop
if (m_patterns[i].size() < m_lmin)
m_lmin = m_patterns[i].size();
else if (m_patterns[i].size() > m_lmax)
m_lmax = m_patterns[i].size();
}// end for loop
次のことはできますか
#pragma omp parallel for reduction (min:m_lmin,max:m_lmax)
または、for ループを 2 つの for ループに書き直す必要があります。1 つは最小用、もう 1 つは最大用です。
別の質問.. OpenMPでconcurrent_vectorのようなtbbコンテナーを使用できますか