我想知道在编写并行程序以将变量声明插入并行部分时是否有益?因为阿姆达尔定律说,如果程序的更多部分是并行的,那就更好了,但我看不出并行化变量声明和返回语句的意义,例如,这是正常的并行代码:
#include <omp.h>
int main(void) {
int a = 0;
int b[5];
#pragma omp parallel
{
#pragma omp for
for (int i = 0; i < 5; ++i) {
b[i] = a;
}
}
return 0;
}
写这个对 Amdahl 定律有好处吗(所以 100% 的程序是并行的):
#include <omp.h>
int main(void) {
#pragma omp parallel
{
int a = 0;
int b[5];
#pragma omp for
for (int i = 0; i < 5; ++i) {
b[i] = a;
}
return 0;
}
}