কম্পিউটার টিউটোরিয়াল

OpenMP কী? সি/সি++-এ প্যারালল প্রোগ্রামিংয়ের জন্য কম্পাইলার ডিরেক্টিভ

সংক্ষিপ্ত বিবরণ

OpenMP (Open Multi-Processing) হল কম্পাইলার ডিরেক্টিভ ও API সেট যা শেয়ার্ড-মেমরি সিস্টেমে প্যারালল প্রোগ্রামিং সক্ষম করে। C, C++, Fortran-এ সমর্থিত।

কীভাবে কাজ করে

  • `#pragma omp parallel` ডিরেক্টিভ দিয়ে প্যারালল রিজন চিহ্নিত করুন
  • রানটাইম স্বয়ংক্রিয়ভাবে CPU কোর সংখ्यानুসারি থ্রেড তৈরি করে
  • ডুয়াল-কোরে ২ থ্রেড, কোয়াড-কোরে ৪ থ্রেড

উদাহরণ

#include <omp.h>
#include <stdio.h>

int main() {
    /* সিকোয়েনশিয়াল কোড */
    #pragma omp parallel
        printf("I am a parallel region.\n");
    /* সিকোয়েনশিয়াল কোড */
    return 0;
}

অতিরিক্ত বৈশিষ্ট্য

  • লুপ প্যারাললাইজেশন: `#pragma omp parallel for`
  • থ্রেড সংখ্যা ম্যানুয়ালি সেট: `omp_set_num_threads(n)`
  • ডেটা শেয়ারিং: `shared`, `private`, `reduction` ক্লজ
  • Linux, Windows, macOS-এ GCC, Clang, MSVC, Intel Compiler-এ উপলব্ধ

কম্পাইল

gcc -fopenmp program.c -o program
  1. AI ফাইল কী? অ্যাডোব ইলাস্ট্রেটর আর্টওয়ার্ক ফাইল

  2. ৩ডি প্রিন্টিং কী? ইতিহাস, কাজকাজ ও ভবিষ্যৎ

  3. আইপি ঠিকানা কী?

  4. Windows 11 SE খুঁজে বের করুন: Microsoft-এর ক্লাসরুম-রেডি OS