我需要一些OpenMP幫助。如果一個線程在for循環中結束,它可能會幫助另一個線程,將它分開嗎?我有一個循環在休息的地方,並且線程不會同時結束,所以有很多工作的線程,以及其他完成的線程。 (所以有沒有使用的核心)。我在corei7上運行我的程序,看起來OpenMP將循環分成8個線程。但是一段時間當一個線程完成這項工作後,利用率開始下降。OpenMP優化調度for循環
#pragma omp parallel for
for(i = 0; i < Vector.size(); i++) {
for(j = 0; j < othervector.size(); j++) {
{some code}
if(sth is true) break;
}
}
謝謝。