Вопросы по теме 'openmp'
Ужасная производительность - простая проблема накладных расходов или программный недостаток?
У меня есть то, что я понимаю как относительно простую конструкцию OpenMP. Проблема в том, что программа работает примерно в 100-300 раз быстрее с 1 потоком по сравнению с 2 потоками. 87% программы тратится на gomp_send_wait() и еще 9,5% на...
8311 просмотров
schedule
27.05.2024
Как проверить версию OpenMP в Linux
Интересно, как проверить версию OpenMP на удаленной Linux-машине?
Я тоже не знаю, где он установлен.
64829 просмотров
schedule
14.07.2022
omp parallel vs. omp parallel для
В чем разница между этими двумя?
[A]
#pragma omp parallel
{
#pragma omp for
for(int i = 1; i < 100; ++i)
{
...
}
}
[B]
#pragma omp parallel for
for(int i = 1; i < 100; ++i)
{
...
}
189783 просмотров
schedule
02.03.2022
Включение OpenMp в Visual Studio дает сообщение об ошибке
Почему включение OpenMp для определенного приложения возвращает это сообщение об ошибке «Неустранимая ошибка пользователя 1002: не все конструкции совместного использования выполняются всеми потоками», когда я пытаюсь запустить его в Visual Studio?...
338 просмотров
schedule
21.05.2022
Библиотеки параллельных данных на C/C++
У меня есть прототип C#, который сильно параллелен данным, и я добился чрезвычайно успешного ускорения на порядок с помощью конструкции Parallel.For в .NETv4. Теперь мне нужно написать программу в собственном коде, и мне интересно, какие у меня есть...
1069 просмотров
schedule
19.02.2024
Связывание с помощью OpenMp с ctypes
У меня есть функция c99, использующая openmp, которая работает, как и ожидалось. Я также написал интерфейс Python, используя ctypes, который вызывает проблему. Ctypes/python не может найти библиотеку для openmp. Вот сообщение об ошибке:
File...
1130 просмотров
schedule
11.08.2023
OpenMP - выполнение потоков на чанках
У меня есть следующий фрагмент кода, который я хочу сделать параллельным определенным образом. Я делаю ошибку, и, следовательно, не все потоки выполняют цикл, как я думал. Было бы здорово, если бы кто-нибудь помог мне определить эту ошибку.
Это...
931 просмотров
schedule
20.10.2022
Не удается заставить OpenMP создавать более одного потока
#include <omp.h>
#include <stdio.h>
int main(int argc, char* argv[])
{
omp_set_num_threads(4);
printf("numThreads = %d\n", omp_get_num_threads());
}
Этот код печатает:
количество потоков = 1
Это скомпилировано в Visual...
867 просмотров
schedule
15.10.2023
Pthreads против OpenMP
Я создаю многопоточное приложение на C с использованием Linux.
Я не уверен, следует ли мне использовать API потока POSIX или API OpenMP.
Каковы плюсы и минусы их использования?
Изменить:
Может ли кто-нибудь уточнить, создают ли оба...
52434 просмотров
schedule
21.03.2022
В многопоточном C/C++ блокирует ли malloc/new кучу при выделении памяти
Мне любопытно, есть ли блокировка выделения памяти, если два потока одновременно запрашивают выделение памяти. Я использую OpenMP для многопоточности, код C++.
ОС: в основном Linux, но хотелось бы знать и для Windows и Mac.
10508 просмотров
schedule
18.04.2023
нашел ли я ошибку libxml2 (утечка памяти при многопоточном разборе)?
На самом деле я работаю над кодом обработки данных, используя libxml2 . Я застрял в утечке памяти, которую невозможно удалить. Вот минимальный код для его генерации:
#include <stdlib.h>
#include <stdio.h>
#include...
3713 просмотров
schedule
21.12.2023
Centos openmp с gcc 4.1.2
Я не могу сказать, установлен ли openmp в этой новой установке Centos, которую я только что установил с помощью инструментов разработчика.
Я попытался запустить ldconfig -p | grep openmp и я не вижу его в списке.
Доступен ли он для Centos с...
9225 просмотров
schedule
01.01.2023
Производительность параллельного программирования OpenMP на C
Я написал программу на C для Pi вычислений с использованием OpenMP, получив помощь из книги. Я считаю, что производительность этой программы будет зависеть от используемых процессоров.
В моем случае я использовал переменную среды для проверки...
440 просмотров
schedule
12.02.2023
Сложный цикл в программе C++, переносимой на OpenMP и MPI?
У меня есть программа для обработки чисел на С++. Структура:
а) ввод данных, подготовка данных
б) "большой" цикл, использует глобальные и локальные данные (много разных переменных в обоих случаях)
c) постобработка результатов и запись данных...
445 просмотров
schedule
28.05.2022
Вызов QApplication::processEvents() внутри цикла OpenMP?
Приветствую всех,
В моем приложении QT я использую OpenMP для распараллеливания циклов. В цикле я хочу обновить значения индикатора выполнения текущего QMainWindow. Следующий фрагмент кода показывает, как я пытаюсь это сделать:
#ifdef...
1438 просмотров
schedule
09.06.2023
распараллелить внутренний цикл с помощью openmp
У меня есть три вложенных цикла, но распараллеливать можно только самый внутренний. Условия остановки внешнего и среднего цикла зависят от вычислений, выполняемых самым внутренним циклом, и поэтому я не могу изменить порядок.
Я использовал...
2645 просмотров
schedule
04.08.2022
Декомпозиция динамического цикла OpenMP на куски
Я использую OpenMP для параллельного прохождения большого цикла. Допустим, массив, над которым я работаю, имеет всего N записей. Я хотел бы, чтобы один поток делал первые записи N/2, а другой поток - последние N/2.
Я должен избегать того, чтобы...
4549 просмотров
schedule
14.11.2023
параллельное равномерное распределение псевдослучайного числа с использованием OpenMP
я использую в своей программе повышение равномерного распределения между 0 и 1:
#include <boost/random/uniform_01.hpp>
#include <boost/random.hpp>
static boost::mt19937 rng;
static boost::uniform_01<boost::mt19937&>...
832 просмотров
schedule
05.01.2024
Почему эта программа OpenMP медленнее, чем однопоточная?
Пожалуйста, посмотрите на этот код.
Однопоточная программа: http://pastebin.com/KAx4RmSJ . Составлено с помощью:
g ++ -lrt -O2 main.cpp -o nnlv2
Многопоточность с openMP: http://pastebin.com/fbe4gZSn Скомпилировано с помощью:...
5302 просмотров
schedule
29.03.2024
Вектор контейнера Stl push_back с многопоточностью OpenMP
Я хочу вставить объект в вектор из разных потоков. Нет. ниток зависит от машины.
#pragma omp parallel shared(Spaces, LookUpTable) private(LutDistribution, tid)
{
tid = omp_get_thread_num();
BestCoreSpaces.push_back(...
3846 просмотров
schedule
13.12.2023