Хеширование SHA-256 на видеокарте. Решение, которое использовало бы GPU

66
28 января 2022, 14:40

Нужно увеличить скорость хеширования sha256 через python. Стандартный hashlib работает через CPU. Какую библиотеку и/или решение использовать для GPU хеширования. Готовых решений нигде не нашёл...

UPD: Не обязательно python. Нужно простое решение которое бы использовало GPU.

Answer 1

Судя по комментариям, автору интересен расчёт хеша для отдельных значений.

Начать с того что алгоритм расчёта одного хеша SHA-256 не подразумевает параллелизацию: каждое промежуточное значение является функцией от предыдущего, и так далее до исходного. То есть, нет никакого смысла и не будет никакой выгоды от расчёта одного хеша на GPU.

Использование GPU для таких операций не приведёт к какому-либо выигрышу, и даже сделает всю операцию существенно медленней. GPU рассчитан на параллельную обработку больших массивов информации, что подразумевает под собой существенные временные расходы на буферизацию, сброс состояния, и так далее.

Если вы обрабатываете огромные массивы информации, например, как при 3D рендеринге или обучении нейронных сетей, то эти задержки не делают погоды. Но вы их всё равно учитываете, например, при подборе размера батча для алгоритмов машинного обучения - он не должен быть слишком маленьким.

Если же вы собираетесь обрабатывать буквально байты, то - мои сожаления - GPU вам не поможет. Затраты времени на передачу информации туда-сюда с CPU на GPU и обратно превысят любое возможное ускорение от параллелизации расчёта. Которой, как мы уже выяснили, не может быть при расчёте отдельных значений.

Наверное потому автор не нашел готовых библиотек для этой операции.

READ ALSO
Рекурсивные generic типы в C#

Рекурсивные generic типы в C#

Я хотел бы создать экземпляр класса с обобщением, используя в качестве обобщения тип этого класса

87
В чем смысл интерфейсов?

В чем смысл интерфейсов?

Есть такой интерфейс:

162
При запросе к MSSQL выдает ошибку

При запросе к MSSQL выдает ошибку

Я начинающий программистПри выполнении command2

103
HtmlAgilityPack c# Спарсить расписание с сайта

HtmlAgilityPack c# Спарсить расписание с сайта

Вопрос заключается в том как именно спарсить расписание

177