最終更新:
mikk_ni3_92 2008年05月23日(金) 15:11:08履歴
現在地 >> メニュー >> OpenMP >> OMP::基本編02::sections構文
以下のように「#pragma omp parallel構文」で並列指定すると、
そのブロック内の内容は全てのスレッドで実行されてしまう。
#pragma omp parallel num_threads(3)
{
printf("hello,World OpenMP\n"); //3個の出力がでる。
}
並列処理において、それぞれのスレッドで別々の処理を行う場合は
sections構文で指定できる。
#pargma omp parallel sections
{
#pragma omp section
/* タスクA */
#pragma omp section
/* タスクB */
#pragma omp section
/* タスクC */
}
この場合「タスクA、B、C」がそれぞれ並列で実行される。
サンプルコード → OMP::sections構文
以下のように「#pragma omp parallel構文」で並列指定すると、
そのブロック内の内容は全てのスレッドで実行されてしまう。
#pragma omp parallel num_threads(3)
{
printf("hello,World OpenMP\n"); //3個の出力がでる。
}
並列処理において、それぞれのスレッドで別々の処理を行う場合は
sections構文で指定できる。
#pargma omp parallel sections
{
#pragma omp section
/* タスクA */
#pragma omp section
/* タスクB */
#pragma omp section
/* タスクC */
}
この場合「タスクA、B、C」がそれぞれ並列で実行される。
サンプルコード → OMP::sections構文