vak: (Default)
[personal profile] vak
Технология OpenMP незаметно вошла в программистский быт. Надо будет освоить на досуге.

Простой пример кода на Си (взято из Фейсбука).
#include <stdio.h>

int main()
{
    volatile int ncores = 0;

    #pragma omp parallel
    {
        #pragma omp atomic
        ncores++;
    }
    printf("ncores = %d\n", ncores);
    return 0;
}
Компилируем под Убунту. Предварительно надо установить библиотеку OMP:
$ sudo apt install libomp-dev
$ clang -fopenmp main.c -o openmp
Запускаем:
$ ./openmp
ncores = 40
Действительно, на моём компьютере присутствует 40 процессорных ядер.
This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

If you are unable to use this captcha for any reason, please contact us by email at support@dreamwidth.org