Open Multi-Processing

Publicat: 13 Iun 2011 00:00

1. Introducere

OpenMP (Open Multi-Processing) este o interfata de programare a aplicatiilor (API) care suporta multiprocesarea memoriei partajate pe mai multe platforme in limbajul C, C + +, Fortran si pe mai multe sisteme de operare, inclusiv Unix si platforme Microsoft Windows. Acesta consta intr-un set de directive compilator, si variabile de mediu care influenteaza comportamentul in timpul rularii.


Fiind acceptat de catre un grup mare de furnizori de hardware si software, OpenMP este un model portabil, scalabil, care ofera programatorilor o interfata simpla si flexibila pentru dezvoltarea de aplicatii pentru calcul paralel destinate unei palete largi de platforme: de la desktop la supercomputer.


Primele specificatii ale architecturii OpenMP au fost publicate pentru Fortran in Octombrie 1997. Un an mai tarziu, a fost prezentat un standard pentru C/C++. In anul 2000 a fost dezvoltata versiunea 2.0 pentru Fortran, iar pentru C/C++ in 2002.
Cea mai recenta versiune a API-ului a fost publicata in Mai 2008. Noutatile aduse de aceasta ultima versiune sunt „task”-urile si „task construct”.


2. Descriere
OpenMP este o implementare a multithreading, o metoda de paralelizare unde "firul" principal de executie (o serie de instructiuni executate consecutiv) gestioneaza un anumit numar de "fire" supuse, iar o sarcina este impartita intre ele. Firele sunt apoi executate simultan, iar timpul de executie este impartit diferitelor procesoare.


Sectiunea de cod care este menit sa ruleze in paralel este marcat in consecinta, cu o directiva preprocesata, care va cauza crearea „firelor de executie” inainte de executarea codului. Fiecare fir de executie are un „id” atasat, care poate fi obtinut folosind o functie (numita omp_get_thread_num()). Id-ul este de tip intreg, iar firul principal are id-ul 0. Dupa executia codului paralelizat, firele lansate se altatura din nou celui principal, care continua pana la finalizare programului.


Initial, fiecare fir executa sectiunea de cod paralelizata independent. „Work-sharing constructs” (constructii pentru impartirea sarcinilor) pot fi folosite pentru a divide o sarcina intre mai multe fire, iar acestea sa-si imparta mai departe cate o sectiune de cod. Atat sarcinile paralelizate cat si datele paralelizate pot fi obtinute folosind OpenMP.

Trebuie sa citesti

Vacante in inima naturii
Vacante in inima naturii

Blocarea impusa de autoritati pe fondul pandemiei coronavirusului a facut imposibila deplasarea in ultimele saptamani. Dar acum, cand oamenii pot incepe sa faca din nou planuri de vacanta, am selectat mai jos cateva destinatii din Romania pentru a incerca daca doriti sa evitati locurile aglomerate

Sfaturi de baza pentru tinutele office
Sfaturi de baza pentru tinutele office

Daca si tu ai un job care presupune munca intr-un birou, mai mult ca sigur te-ai lovit din cand in cand de o lipsa de inspiratie in crearea tinutelor office pentru fiecare zi a saptamani. Chiar daca achizitionezi noi articole vestimentare, outfit-ul tau poate parea in continuare unul repetitiv. Ei

Avantajele si dezavantajele angajatilor care lucreaza de acasa
Avantajele si dezavantajele angajatilor care lucreaza de acasa

Raspandirea activitatii la domiciliu deschide o gama noua de posibilitati pentru modul in care intreprinderile pot functiona singure. Pe langa oportunitati si beneficii, munca la domiciliu aduce noi responsabilitati pentru angajator si angajat. Angajatii cu serviciu de 26 de saptamani au dreptul

Locuri din Istanbul unde gasiti Shisha
Locuri din Istanbul unde gasiti Shisha

Fumatul a fost considerat a fi un simbol al statutului, cu cea mai mare onoare rezervata celor care fumau impreuna cu sultanul. In acele zile shisha continea doar tutun. Cu toate acestea, in ultimii ani, o multime de arome, inclusiv menta, capsune, mar, trandafir si cappuccino, au devenit

Avantajele unei periute electrice
Avantajele unei periute electrice

Alegerea unei periude de dinti este o actiune destul de complicata din punctul meu de vedere. Pe piata exista o varietate enorma de modele, atat electrice cat si normale. Inainte sa trec la avantajele pe care le ofera o periuta electrica, vreau sa va reamintesc faptul ca igiena orala este deosebit

Teste Online

MODELE ATOMICE SI RADIATII X

MODELE ATOMICE SI RADIATII X cls XI

mai multe »
Acest site foloseste Cookie-uri.
Folosim cookie-uri pentru a personaliza continutul si reclamele, pentru a oferi caracteristici specifice retelelor sociale si pentru a analiza traficul nostru. De asemenea, impartasim informatii despre felul in care ne utilizati site-ul, cu partenerii nostri de pe retelele sociale, de publicitate si de statistica in conformitate cu Politica de confidentialitate. Va puteti administra preferintele in Setari cookie.