Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

OpenMP คืออะไร? สำหรับการเขียนโปรแกรมขนาน

OpenMP เป็น API และ Compiler Directives สำหรับ C/C++/Fortran รันขนานบน Shared Memory

คุณสมบัติหลัก

  • #pragma omp parallel สร้างทีมเธรดตามจำนวนโปรเซสเซอร์
  • ควบคุมจำนวนเธรดด้วย omp_set_num_threads() หรือ environment variable
  • จัดการตัวแปร shared/private ด้วย clause
  • รองรับ loop parallelization (#pragma omp for)

ตัวอย่างพื้นฐาน

#include <omp.h>
#include <stdio.h>
int main() {
    #pragma omp parallel
    printf("Thread %d: Hello\n", omp_get_thread_num());
    return 0;
}

คอมไพล์

gcc -fopenmp program.c -o program