@art1636203

Как добавить использование GPU в программы на Python?

Пару месяцев как начал изучать Python, и имеется много разных скриптов на нем, например вот такой:
перебирающий символы для поиска seed в aes256 - https://github.com/daedalus/misc/blob/master/crack...
Написан "как обычно" используя по умолчанию только мощность процессора.
Собственно вопрос - как добавить возможность использовать GPU для таких программ? Нужно полностью переписывать код?
  • Вопрос задан
  • 11452 просмотра
Решения вопроса 1
@SolidMinus
PyCUDA https://documen.tician.de/pycuda/

Нет, полностью не надо. Только там где идет перебор seed. Надо распараллелить по ядрам куда. Конкретно как это в питоне делается я хз, юзаю CUDA из Си. Уверен, что в PyCuda все еще проще.

P.S. Для работы требуется видеокарта Nvidia с установленной CUDA toolkit

UPD: Погуглил. Поддержки у питона CUDA API нет. PyCUDA использует wrapper для Си-образного кода для параллельного программирования от Nvidia. Придется весь код перебора переписывать в этом контексте, и исполнять его через PyCUDA. В документации есть пример такой реализации. Поэтому вердикт: если хочешь юзать GPU, придется изучать еще как кодить под GPU.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Вот статья на эту тему. Кроме PyCUDA есть еще Numba. Это JIT компилятор который может запускать ваш код как на CPU так и на GPU. Работать он будет медленнее чем PyCUDA, но зато вам не придется переписывать код.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
28 мар. 2024, в 21:25
2000 руб./за проект
28 мар. 2024, в 21:17
5000 руб./за проект
28 мар. 2024, в 20:46
150000 руб./за проект