This shows you the differences between two versions of the page.
app:laboratoare:03 [2024/10/22 02:56] alexandru.bala [Resurse] |
app:laboratoare:03 [2024/10/22 11:06] (current) alexandru.bala [Tasks (opțional)] |
||
---|---|---|---|
Line 202: | Line 202: | ||
* ''COPYIN'' - asignarea unei variabile ''THREADPRIVATE'' este vizibilă tuturor thread-urilor | * ''COPYIN'' - asignarea unei variabile ''THREADPRIVATE'' este vizibilă tuturor thread-urilor | ||
- | ===== Tasks (opțional) ===== | + | ===== Tasks ===== |
Task-urile în OpenMP reprezintă un concept prin care putem să avem thread pools pentru paralelizarea de soluții ale căror dimensiune nu o știm (echivalent cu ''ExecutorService'' din Java). Un task este executat la un moment dat de către un thread din thread pool. | Task-urile în OpenMP reprezintă un concept prin care putem să avem thread pools pentru paralelizarea de soluții ale căror dimensiune nu o știm (echivalent cu ''ExecutorService'' din Java). Un task este executat la un moment dat de către un thread din thread pool. | ||
Line 283: | Line 283: | ||
<note>De probă, încercați să puneți ORDERED la for-urile paralelizate, pentru a vedea cum este afectată performanța.</note> | <note>De probă, încercați să puneți ORDERED la for-urile paralelizate, pentru a vedea cum este afectată performanța.</note> | ||
- | * **(opțional)** Paralelizați folosind task-uri codul din [[https://github.com/cs-pub-ro/app-labs/blob/master/lab3/skel/tree.c | tree.c]] (folosiți task-uri în funcțiile ''preorder'' și ''height'' - la ultima trebuie să folosiți ''taskwait''). | + | * Paralelizați folosind task-uri codul din [[https://github.com/cs-pub-ro/app-labs/blob/master/lab3/skel/tree.c | tree.c]] (folosiți task-uri în funcțiile ''preorder'' și ''height'' - la ultima trebuie să folosiți ''taskwait''). |
===== Resurse ===== | ===== Resurse ===== |