Вопросы по теме 'openacc'

проверка использования памяти NVIDIA __shared__ при наличии директивы cache
Я экспериментирую с предложением кеширования OpenACC, используя PGI 14.10. У меня есть простой цикл, основанный на показанном на слайдах [1]: #include <stdlib.h> int main(int argc, char **argv) { int N = 1024; int *restrict x =...
146 просмотров
schedule 10.11.2021

PGI openACC: целевое устройство с графическим процессором
У меня две карты NVIDIA: $ ls /dev/nv* /dev/nvidia0 /dev/nvidia1 /dev/nvidiactl /dev/nvidia-uvm Как настроить таргетинг на конкретную карту с помощью pgcc? Как убедиться, что код сгенерирован для nvidia0 (device = 0) или nvidia1 (device =...
1373 просмотров
schedule 24.10.2021

Я не могу заставить! $ Acc параллельно работать (а вот ядра acc работают)
Я пытался использовать OpenACC с простым кодом, но, думаю, я не совсем понимаю, как писать вложенные циклы OpenACC или что делает private. Процедура, которую я пытаюсь распараллелить, такова: SUBROUTINE zcs(zc,kmin,kmax,ju2,jl2)...
65 просмотров
schedule 16.11.2021

openacc объявляет о проблеме с функцией pow в C ++ в вычислительной области acc
Я пытаюсь использовать openACC для ускорения некоторой части моего кода. Одна часть кода использовала функцию pow () из стандартной библиотеки. Однако при компиляции произошла ошибка PGCC-S-0155-Процедуры, вызываемые в вычислительной области,...
62 просмотров
schedule 05.11.2021

Компиляция кода параллельного ЦП c ++ OpenACC с использованием GCC (G ++)
При попытке скомпилировать код OpenACC с помощью GCC-9.3.0 (g ++), настроенного с --enable-languages=c,c++,lto --disable-multilib , следующий код не использует несколько ядер, тогда как, если один и тот же код скомпилирован с помощью компилятора pgc...
641 просмотров
schedule 10.09.2021

OpenACC - Как узнать, занято ли устройство некоторыми операциями CUDA?
У меня есть код на основе CUDA, и я хочу включить OpenACC в некоторые части кода. Но функция, которую я пытаюсь распараллелить с помощью кода OpenACC, иногда управляется вызовами CUDA, а иногда - нет. Мой вопрос в том, как я могу запросить...
498 просмотров
schedule 17.01.2022

Можно ли использовать CUBLAS с OpenACC?
Мне нужно реализовать функцию, которая у меня уже есть в CUDA-C, используя директивы OpenACC (мне нужно сделать сравнение). В исходном коде есть вызов cubasSgemv, есть ли способ использовать библиотеку cublas под openacc?
537 просмотров
schedule 25.02.2022

производные типы fortran openacc с размещаемыми
Я читал, что ручное глубокое копирование типов, производных от Fortran, возможно, но следующая простая тестовая программа не работает во время выполнения; программа скомпилирована чисто с использованием PGI v16.10. Что не так? program Test...
505 просмотров
schedule 27.02.2022

Какая директива OpenACC укажет компилятору выполнить инструкцию только на устройстве?
Я изучаю OpenACC с помощью Fortran (с набором инструментов от Nvidia) и делаю это, портируя свою реализацию решателя Conjugate Gradient (CG) на графические процессоры. Ясно, что я пытаюсь сохранить как можно больше данных на устройстве (памяти...
53 просмотров
schedule 13.03.2022

открытый ACC: нет вывода с компилятором PGI
Я студентка бакалавриата, изучаю открытый ACC на стажировке. Я сам сделал базовый образец кода для тестирования компилятора рабочей станции PGI (версия 14.1), который работает хорошо, и он работал с инструкцией командной строки 'pgcc -acc lab04.c...
666 просмотров
schedule 20.03.2022

Используйте атомарные функции в OpenACC
Я хочу использовать атомарные функции с директивами OpenACC. Какие параметры компиляции pgc++ могут помочь? Должен ли я использовать определенный заголовочный файл?
849 просмотров
schedule 23.03.2022

Openacc: как сделать сортировку вставками более параллельной
Не могли бы вы предложить, как я могу сделать openacc более параллельным. Я делаю сортировку слиянием с сортировкой вставками. Должен ли я использовать «цикл» или «для» для использования цикла. Также для сортировки вставками она должна быть ядерной...
461 просмотров
schedule 22.04.2022

OPEN ACC - как управлять данными Struct внутри подпрограмм?
У меня есть такая структура: typedef struct Data_{ double **v; . . . double *press; }Data; В основной функции у меня есть цикл while, внутри которого он называется подпрограммой, в которой объявлены данные, и я использую следующую...
64 просмотров
schedule 15.06.2022

Среда Windows OpenACC
Я хотел бы начать разработку программы OpenACC, и у меня есть несколько вопросов: можно ли выполнить код OpenACC на графическом процессоре AMD? Если это так, я ищу компилятор, доступный для среды Windows. Я потратил час, чтобы ничего не найти, я...
222 просмотров
schedule 18.07.2022

Итерационный алгоритм Карацубы, распараллеленный и векторизованный с использованием OpenACC на C ++
Я пытаюсь распараллелить итеративную версию алгоритма Карацубы с помощью OpenACC на C ++. Я хотел бы спросить, как я могу векторизовать внутренний for loop . Мой компилятор показывает это сообщение об этом цикле: 526, Complex loop carried...
198 просмотров

Как применить директиву OpenACC сокращения к многомерному вектору?
Я пытаюсь распараллелить некоторый код с помощью OpenACC. #pragma acc parallel loop reduction (+:matriz()) for(auto i = 0; i <= (width-siz); i += siz) for(auto j = 0; j <= (width-siz); j += siz)...
37 просмотров
schedule 03.08.2022

как получить доступную память на устройстве
Я пытаюсь получить, сколько свободной памяти у меня есть на устройстве. Для этого я вызываю функцию cuda cuMemGetInfo из кода на фортране, но она возвращает отрицательные значения свободного объема памяти, поэтому явно что-то не так. Кто-нибудь...
2280 просмотров
schedule 25.08.2022

OpenACC: сложный цикл несет зависимость от '* (* (b))' предотвращает распараллеливание
Я использую OpenACC с динамическим распределением массивов. Вот как я распределяю: float **a; float **b; float **c; float **seq; a=(float**)malloc(SIZE*sizeof(float*)); b=(float**)malloc(SIZE*sizeof(float*));...
2780 просмотров
schedule 30.01.2023

OpenACC красно-черный Gauss-Seidel медленнее, чем CPU
Я добавил директивы OpenACC в свой красно-черный решатель Гаусса-Зейделя для уравнения Лапласа (простая задача с нагретой пластиной), но код с ускорением на GPU не быстрее, чем на CPU, даже для больших задач. Я также написал версию CUDA, и она...
1351 просмотров
schedule 12.12.2022

Всегда ли все строки внутри ядра openACC работают на GPU?
Интересно что-то связанное со структурой ядра. Может каждая строка внутри ядер не работает на GPU? например, у меня есть этот код: #pragma acc kernels copy(a[0:n],b[0:n]) { #pragma acc loop for (i = 0; i < n; i++)...
186 просмотров
schedule 11.12.2022