0
我已經寫在Visual Studio 2012開MP一個計劃,我有一些problem.this是我的代碼:的#pragma OMP VS CPU 100%使用率的關鍵
#pragma omp parallel num_threads(4) private(k)
{
#pragma omp for
for(k=0x20AC6E12AF3E4DB0;k<=MAXINT64;k++)
{
U.k=k;
init();
Decrypt(s1);
Decrypt(s2);
}
}
上面的代碼編譯,我的CPU使用率是100%,但產量是錯誤的。當我更改代碼這樣:
#pragma omp parallel num_threads(4) private(k)
{
#pragma omp for
for(k=0x20AC6E12AF3E4DB0;k<=MAXINT64;k++)
{
U.k=k;
init();
#pragma omp critical
{
Decrypt(s1);
Decrypt(s2);
}
}
}
輸出成爲正確的,但在這種情況下,我的CPU使用率不是100%,我居然瘦了並行! 我能做什麼?
iPhone?視覺工作室?咦? –