| OpenMP... |
| ... uma Interface de Programação de Aplicação (API) para programação multiprocessada em memória compartilhada, compatível com C, C++ e Fortran focada na simplicidade e abstração de alto nível. |
| Open MPI... |
| ... soluçção distinta do OpenMP voltada para sistemas de memória distribuída (clusters) na qual nós separados concectados em rede não compartilham a mesma memória física. |
| Diretiva #pragma... |
| ... instrução especial ao compilador para tratar o código de forma específica, indicando onde e como o paralelismo deve ser aplicado. |
| Thread Mestre... |
| ... thread de índice 0 que gerencia o fluxo, cria (fork) outras threads para executar regiões paralelas e as encerra (join) ao final, similar ao pthread_create e join. |
| #pragma omp parallel... |
| ... diretiva fundamental que define uma região de código (bloco entre chaves) a ser executada simultaneamente por múltiplas threads. |
| omp_get_thread_num()... |
| ... função que retorna o identificador único (ID) da thread atual (um número entre 0 e o total de threas menos 1), permitindo diferenciar o trabalho de cada uma. |
| Controle de Threads... |
| ... o número de threads pode ser definido via diretiva num_threads(), função omp_set_num_threads() ou pela variável de ambiente OMP_NUM_THREADS. |
| Variáveis privadas... |
| ... variáveis declaradas dentro de uma região paralela ou marcadas com a diretiva private(), cada thread possui sua própria cópia independente, evitando interferência mútua. |
| #pragma omp parallel for... |
| ... diretiva que simplifica a paralelização de loops for, dividindo e mapeando automaticamente as iterações do laço entre as threads disponíveis. |
| False Sharing (compartilhamento falso)... |
| ... perda de desempenho que ocorre quando threads atualizam variáveis diferentes que estão no mesmo bloco de cache, forçando a atualização constante da memória principal para manter a coerência. |
| #pragma omp barrier... |
| ... mecanismo de sincronização que pausa a execução de todas as threads num ponto específico até que todas tenham alcançado esse ponto. |
| #pragma omp critical (exclusão mútua)... |
| ... diretiva que define um bloco de código que só pode ser executado por uma thread de cada vez, garantindo a integridade de dados compartilhados (evita condições de corrida). |
| #pragma omp atomic... |
| ... uma forma otimizada de exclusão mútua para operações simples (incrementos x++ ou somas +=), aproveita instruções de hardware para ser mais rápida que o critical. |
| omp_get_wtime()... |
| ... função usada para medir o tempo de execução (em segundos), permitindo calcular o ganho de desempenho (speedup) das soluções paralelas. |