Свързани въпроси 'openmp'

За комбинацията от OpenMP и -Ofast
Приложих OpenMP паралелизиране в for цикъл , където имам сума , която е основната причина за забавяне на моя код. Когато го направих, разбрах, че крайните резултати не са същите, които получих за кода без паралелизиране (който е написан на C)....
186 изгледи
schedule 26.09.2022

как мога да конвертирам последователна програма в паралелна с помощта на openMP?
Започвам с openMP и искам да паралелизирам тази част от кода: for (i=0 ;i<n ;i++) for (j=1 ;j<n ;j++) A[i][j]+=A[i][j-1]; Как мога да направя това for успоредно?
1750 изгледи

boost или openMP за многопоточност?
трябва да парализирам някакъв код и един мой пържен предложи да използвам boost за него. Точно сега разглеждам openMP и се чудя какво според вас е по-добро за тази задача.
1098 изгледи
schedule 05.10.2022

Openmp компилира, но parallel for не работи, както е планирано в C
Работя на Mac OSX 10.8.3 и програмирам на C. Използвам bash като моя обвивка и използвам gcc-mp-4.7 от macports, тъй като знам, че gcc от apple понякога не работи напълно с openmp. Пускал съм няколко openmp файла преди и те обикновено работят добре,...
1038 изгледи
schedule 08.10.2022

OpenMP parallel прави състояние на състезание за четене и запис?
Малко съм объркан относно условията на състезание, които могат да възникнат в OpenMP По-конкретно, имам два масива A и B , които съдържат данни, и искам да използвам данните в един, да изчисля нещо и да го съхраня в друг. моят fortran код ще...
385 изгледи
schedule 10.10.2022

OpenMP модел с разделена става
Паралелизирам няколко разделени for-цикли, използвайки OpenMP. Докато отстранявах грешки в gdb, открих, че множеството нишки се създават, когато изпълнението достигне първия паралелен регион. Множеството нишки излязоха в края на изпълнението на...
285 изгледи
schedule 20.10.2022

Предоставяне на частен предварително разпределен буфер за нишка към паралелен цикъл for()?
Моята програма съдържа for() цикъл, който обработва някои необработени данни за изображение, ред по ред, които искам да паралелизирам с помощта на OpenMP по следния начин: ... #if defined(_OPENMP) int const threads = 8;...
1887 изгледи
schedule 03.11.2022

Измерете времето за изпълнение в C++ OpenMP код
Изпълнявам .cpp код (i) в последователен стил и (ii) използвам изрази на OpenMP. Опитвам се да видя часовата разлика. За изчисляване на времето използвам това: #include <time.h> ..... main() { clock_t start, finish; start = clock();...
36683 изгледи
schedule 31.10.2023

В паралелен код на OpenMP ще има ли някаква полза за memset да се изпълнява паралелно?
Имам блокове памет, които могат да бъдат доста големи (по-големи от L2 кеша) и понякога трябва да ги настроя изцяло на нула. memset е добър в сериен код, но какво ще кажете за паралелния код? Някой има ли опит, ако извикването на memset от...
2851 изгледи
schedule 02.11.2023

C++ OpenMP запис в специфичен елемент от споделен масив/вектор
Имам дългогодишна програма за симулация и планирам да използвам OpenMP за успоредяване на някои кодове за ускоряване. Нов съм в OpenMP и имам следния въпрос. Като се има предвид, че симулацията е стохастична, имам следната структура на данните и...
3795 изгледи
schedule 26.11.2022

Проблеми с настройката на OMP_THREAD_LIMIT по време на изпълнение (c++ gcc 4.4.7)
здравей, Имам доста голяма програма, която се опитвам да свържа. Досега това е успешно и всички основни неща работят по предназначение. Сега искам да направя малко фантастична работа с каскадни нишки във вложен режим. По същество искам...
2029 изгледи
schedule 01.12.2022

Mex файлът се изпълнява последователно въпреки паралелното компилиране
Тествам основен openmp паралелен код с mex файл. Проблемът е, че изглежда, че работи само с една нишка, въпреки указанията ми да я стартирам с 2 нишки. Ето кода: #include "mex.h" #include "omp.h" #include <iostream> void mexFunction(int...
581 изгледи
schedule 24.11.2023

Отворете MP, ако OpenMP:друго
Проблем: Имам някакъв код, който аз и няколко други пишехме, взех кода и го накарах да използва mpi и openmp със страхотни резултати (помага, че го изпълнявам на Blue Gene/Q). Едно нещо, на което не съм фен, е, че сега не мога да компилирам кода...
1292 изгледи
schedule 13.10.2022

локални указатели в OpenMP
Локалните променливи трябва да бъдат автоматично лични за всяка нишка. Какво ще кажете за локален указател, сочещ към някакъв адрес извън паралелния регион, като например A * a = new A[10]; int i, j; for (i = 0; i < 10; i++){ A * local_i...
5009 изгледи
schedule 01.12.2022

Производителност на паралелен OpenMP код със и без оптимизация на компилатора (Sun CC)
Работя по проект, в който бяхме помолени да напишем прост OpenMP код за паралелизиране на програма, която работи с диференциални уравнения. Също така бяхме помолени да тестваме производителността на кода със и без оптимизации на компилатора. Работя...
400 изгледи

Странна грешка в моята проста програма OpenMP (използвайки C)
Получавам тази грешка, когато се опитвам да компилирам моята C програма: omptest.c: In function ‘int ack(int, int)’: omptest.c:13:23: error: invalid form of ‘#pragma omp atomic’ before ‘;’ token ans = ack(m-1,1);} ^...
223 изгледи
schedule 29.11.2022

Лоша практика ли е да се извиква exit() в паралелен регион в OpenMP?
Имам програма, използваща както MPI, така и OpenMP. Господарят ражда няколко роби. Всеки подчинен е многонишков с OpenMP и една нишка е предназначена за комуникации (MPI_THREAD_FUNNELED). Когато комуникационната нишка получи съобщение от...
557 изгледи
schedule 15.12.2023

OpenMP - за присвояване на нишка на цикъл
Да предположим, че имам масив с индекси 0..n-1. Има ли начин да изберете кои клетки да обработва всяка нишка? напр. нишка 0 ще обработва клетки 0 и 5, нишка 1 ще обработва клетки 1 и 6 и т.н.
1431 изгледи
schedule 01.01.2024

Паралелизиране на функция с помощта на openMP в C
Написах програма, която въвежда размера на матрицата и броя на нишките и след това генерира произволна двоична матрица от 0 и 1. След това трябва да намеря клъстери от 1 и да дам на всеки клъстер уникален номер. Получавам изхода правилно, но имам...
447 изгледи
schedule 31.12.2023

Има ли някакъв разделител на обхвата по подразбиране в OpenMP?
Нов съм в OpenMP, току-що направих първия си опит, беше матрично умножение. Просто се чудя дали в openMP съществува разделител на блокове по подразбиране? следното е моят код: #include <stdio.h> #include <omp.h> #define MAX_THREADS 4...
65 изгледи
schedule 21.10.2022