Введение
Проверка скорости
Изображение создано с помощью нейросети ChatGPT 5 (DALL-E).
Развитие графических ускорителей, на примере фирмы процессоров NVIDIA, напомнило мне былые времена,
когда для 286 процессора фирмы Intel на материнских платах существовал дополнительный слот для арифметического процессора.
С его помощью можно было выполнять вычисления чисел с плавающей точкой значительно быстрее.
В голову также пришли воспоминания о видеокарте S3, для которой можно было приобрести процессор
обработки файлов MPEG, и карту ТВ-приемника, для котрой была доступна аналогичная опция, наряду с
процессором декодера телетекста.
В то время, однако, не возникало вопроса, нужен ли ускоритель (дополнительный декодер).
Производитель заранее рассчитывал, что его карта обеспечивает определенные возможности с расширением,
и дает их ограниченно или вовсе не предоставляет.
С развитием технологий арифметический сопроцессор стал входит в состав основного процессора Intel,
центральные процессоры вполне уверенно декодируют видеофайлы с помощью программного обеспечения,
поэтому потребность в специальных дополнительных процессорах для решения этих задач отпали.
Однако, новые времена - новые запросы.
Для майнинга криптовалют собирают целые фермы - кластеры специализированных процессоров,
развитие нейросетей также подстегнуло интерес к специальным схемам обработки данных для их поддержки.
так получилось, что в моей лаборатории благополучно жили NVIDIA GTS 8600 (2008 год) и GT 740 (2018 год).
До поры до времени мне не приходило в голову использовать для чего-то другого, нежели трансляция изображения на монитор.
Впрочем, лукавлю - в 2013 - 2014 годах я использовал карты для майнинга gridcoins - вознаграждения за
научные вычисления на платформе BOINC. Увы, другого применения этих карт в то время у меня не нашлось.
Но размышления о дальнейшем развитии лаборатории подвигли на испытания этих карт.
Чтобы решить сегодня эту задачу, потребовалось проявить смекалку и настойчивость - карты не принадлежат к
числу современных и их поддержка либо закончилась, либо скоро останется в прошлом.
Запустив драйвера устройств и включив их фирменные возможности, я задумался - что же можно с их помощью сегодня делать?
По понятным причинам, выбор оказался невелик, однако, меню располагаемых возможностей оказалось вполне
достойным для учебных и даже служебных целей.
В это же время возник следующий вопрос - видеокарты уже немолодые, их вычислительная производительность может быть не сопоставима
с вычислительной производительностью центральных процессоров. Насколько имеет смысл использовать ресурсы видеокарт, располагая
мощными центральными процессорами.
Здесь я должен сделать оговорку - центральные процессоры моих материнских плат тоже не принадлежат к числу современных.
Испытания GT 740 проводились в упряжке с процессором Intel Core2Quad Q9650 @ 3.00GHz × 4
В этой статье я хочу показать на реальных экспериментах, где GPU действительно выигрывает у CPU, а где — нет, и почему.
Для этого я сравнил три принципиально разные задачи:
- классический шифр Хилла,
- постквантовый алгоритм на основе Learning With Errors (LWE)/1/,
- нейросетевую модель Whisper для распознавания речи.
Постановка задачи и оборудование
Конечной целью испытания было получение ответа на вопрос - когда GPU сокращает время обработки данных
по сравнению с выполнением вычислений центральным процессором, а когда его использование наоборот увеличивает
затраты на расчеты.
Все эксперименты выполнены на одном и том же оборудовании:
- CPU: четырёхъядерный Core2Quad,
- GPU: NVIDIA GeForce GT 740 (Kepler, Compute Capability 3.0),
- ОС: Ubuntu Linux 22,
- реализация: C/CUDA и Python-обвязки,
- честные замеры времени с раздельным учётом I/O, передачи данных и вычислений.
Шифр Хилла: GPU проигрывает
Шифр Хилла — классический линейный симметричный шифр, основанный на умножении матрицы на вектор по модулю.
Настройки шифра:
- ключ — матрица 128×128;
- вход — видеофайл ~76 MiB;
- CPU-версия — оптимизированный C (-O3 -march=native);
- GPU-версия — CUDA-ядро + передача данных через PCIe.
Результат:
- CPU: ~2 секунды;
- GPU: ~15 секунд.
GPU оказался почти в 8 раз медленнее.
Почему:
- целочисленная арифметика низкой сложности;
- низкая арифметическая плотность (мало операций на байт данных);
- большая стоимость передачи данных CPU → GPU;
- CPU эффективно использует кэш и SIMD.
Вывод:
GPU не ускоряет классическую криптографию автоматически.
Для таких алгоритмов CPU часто остаётся лучшим выбором.
LWE: GPU начинает выигрывать — но не сразу
Алгоритмы на основе Learning With Errors лежат /2/
в основе постквантовой криптографии/3/. Базовая операция имеет вид:
b = A × s + e ( mod q )
где матрица A является фиксированным параметром (ключом), а
векторы s и e меняются для каждого сообщения.
Одиночное сообщение
При обработке одного сообщения:
CPU: ~0.049 с
GPU: ~0.110 с
GPU проигрывает — по той же причине, что и в случае с Хиллом: матрицу A (16 MiB)
нужно передать по PCIe.
Много сообщений при одном ключе
Однако в реальной криптографической модели:
ключ (матрица A) фиксирован;
сообщений много.
Я провёл серию экспериментов, где одна и та же матрица A загружается на
GPU один раз, а затем обрабатывается K различных сообщений.
K ,
(сообщений)
CPU,
сек/сообщение
GPU,
сек/сообщение
Ускорение
1
0.049
0.110
0.45×
4
0.029
0.034
~1×
16
0.028
0.015
1.8×
64
0.027
0.0107
2.5×
256
0.028
0.0097
2.9×
Критическая точка — K ≈ 16.
Начиная с этого момента GPU стабильно выигрывает.
Почему:
-
стоимость загрузки ключа амортизируется;
-
ядро GPU стабильно считает ~0.009 с на сообщение;
CPU масштабируется линейно, GPU — суб-линейно.
Вывод:
GPU в постквантовой криптографии — это ускоритель сервиса, а не одиночной операции.
Whisper: GPU раскрывается полностью
Whisper — нейросетевая модель распознавания речи. Здесь ситуация принципиально иная.
Эксперименты:
модели: tiny и base;
вход: аудиофайл ~30 секунд;
метрика: Real-Time Factor (RTF).
Результаты
Модель
CPU RTF
GPU RTF
Ускорение
Whisper tiny
~0.96
~0.16
~6×
Whisper base
~2.23
~0.10
>20×
GPU уверенно и кратно выигрывает.
Почему:
основная операция — матрица × матрица;
высокая арифметическая плотность;
веса модели загружаются один раз;
данные обрабатываются потоками;
архитектура GPU идеально соответствует задаче.
Вывод:
Whisper — пример задачи, почти идеально совпадающей с архитектурой GPU.
Общая картина
Сводя всё вместе:
Алгоритм
GPU
результат
Шифр Хилла
❌ Проигрыш по отношению к CPU
LWE
(1 сообщение)
❌ Проигрыш по отношению к CPU
LWE (K ≥ 16)
⚠️ Умеренный выигрыш у CPU
Whisper
✅ Крупный выигрыш
Главный вывод
GPU ускоряет не алгоритмы, а типы вычислений.
GPU эффективен, если:
один и тот же набор данных используется многократно;
вычислений много по отношению к объёму данных;
задача хорошо параллелится.
Формально это можно выразить так:
Для эффективной работы алгоритма должно соблюдаться условие:
\({
\Large
\frac{\text{Вычисления}}
{\text{Передача данных}}
\gg 1
}
\)
Если это условие не выполняется — CPU остаётся лучшим выбором.
Заключение
Куда "уходит" время
Изображение создано с помощью нейросети ChatGPT 5 (DALL-E).
Эти эксперименты ценны тем, что:
сравнивают криптографию, постквантовую криптографию и ИИ;
выполнены на одном и том же оборудовании;
основаны на реальных измерениях, а не маркетинговых обещаниях.
GPU — мощный инструмент, но только в тех задачах, где его архитектура действительно востребована. И именно
это понимание сегодня важнее, чем слепая вера в «ускорение на видеокарте».
Примечания
1)
SIMD (Single Instruction, Multiple Data —
«Одиночный поток команд, множественный поток данных») — это принцип вычислений и набор инструкций процессора,
который позволяет выполнять одну и ту же операцию одновременно над множеством элементов данных,
обеспечивая параллелизм на уровне данных, что в разы ускоряет задачи, требующие обработки больших объемов однотипных данных.
2)
Learning With Errors (LWE) (Обучение с ошибками) – это фундаментальная задача в криптографии на основе решеток,
которая лежит в основе многих постквантовых криптосистем, включая шифрование и подпись, а также гомоморфное шифрование;
её сложность эквивалентна решению сложнейших задач на решетках, что делает её устойчивой к атакам даже квантовыми компьютерами,
и заключается в необходимости найти секрет, имея систему зашумленных линейных уравнений,
где шум затрудняет восстановление истинного решения.
3)
Постквантовая криптография — часть криптографии, которая остаётся актуальной и при появлении квантовых компьютеров и квантовых атак.
Так как по скорости вычисления традиционных криптографических алгоритмов квантовые компьютеры значительно превосходят классические
компьютерные архитектуры, современные криптографические системы становятся потенциально уязвимыми для криптографических атак.
("Википедия")
В работе над статьёй принимал участие ChatGPT версии 5.
Изображение создано с помощью нейросети ChatGPT 5 (DALL-E).
Развитие графических ускорителей, на примере фирмы процессоров NVIDIA, напомнило мне былые времена,
когда для 286 процессора фирмы Intel на материнских платах существовал дополнительный слот для арифметического процессора.
С его помощью можно было выполнять вычисления чисел с плавающей точкой значительно быстрее.
В голову также пришли воспоминания о видеокарте S3, для которой можно было приобрести процессор
обработки файлов MPEG, и карту ТВ-приемника, для котрой была доступна аналогичная опция, наряду с
процессором декодера телетекста.
В то время, однако, не возникало вопроса, нужен ли ускоритель (дополнительный декодер).
Производитель заранее рассчитывал, что его карта обеспечивает определенные возможности с расширением,
и дает их ограниченно или вовсе не предоставляет.
С развитием технологий арифметический сопроцессор стал входит в состав основного процессора Intel,
центральные процессоры вполне уверенно декодируют видеофайлы с помощью программного обеспечения,
поэтому потребность в специальных дополнительных процессорах для решения этих задач отпали.
Однако, новые времена - новые запросы.
Для майнинга криптовалют собирают целые фермы - кластеры специализированных процессоров,
развитие нейросетей также подстегнуло интерес к специальным схемам обработки данных для их поддержки.
так получилось, что в моей лаборатории благополучно жили NVIDIA GTS 8600 (2008 год) и GT 740 (2018 год).
До поры до времени мне не приходило в голову использовать для чего-то другого, нежели трансляция изображения на монитор.
Впрочем, лукавлю - в 2013 - 2014 годах я использовал карты для майнинга gridcoins - вознаграждения за
научные вычисления на платформе BOINC. Увы, другого применения этих карт в то время у меня не нашлось.
Но размышления о дальнейшем развитии лаборатории подвигли на испытания этих карт.
Чтобы решить сегодня эту задачу, потребовалось проявить смекалку и настойчивость - карты не принадлежат к
числу современных и их поддержка либо закончилась, либо скоро останется в прошлом.
Запустив драйвера устройств и включив их фирменные возможности, я задумался - что же можно с их помощью сегодня делать?
По понятным причинам, выбор оказался невелик, однако, меню располагаемых возможностей оказалось вполне
достойным для учебных и даже служебных целей.
В это же время возник следующий вопрос - видеокарты уже немолодые, их вычислительная производительность может быть не сопоставима
с вычислительной производительностью центральных процессоров. Насколько имеет смысл использовать ресурсы видеокарт, располагая
мощными центральными процессорами.
Здесь я должен сделать оговорку - центральные процессоры моих материнских плат тоже не принадлежат к числу современных.
Испытания GT 740 проводились в упряжке с процессором Intel Core2Quad Q9650 @ 3.00GHz × 4
В этой статье я хочу показать на реальных экспериментах, где GPU действительно выигрывает у CPU, а где — нет, и почему.
Для этого я сравнил три принципиально разные задачи:
- классический шифр Хилла,
- постквантовый алгоритм на основе Learning With Errors (LWE)/1/,
- нейросетевую модель Whisper для распознавания речи.
Постановка задачи и оборудование
Конечной целью испытания было получение ответа на вопрос - когда GPU сокращает время обработки данных
по сравнению с выполнением вычислений центральным процессором, а когда его использование наоборот увеличивает
затраты на расчеты.
Все эксперименты выполнены на одном и том же оборудовании:
- CPU: четырёхъядерный Core2Quad,
- GPU: NVIDIA GeForce GT 740 (Kepler, Compute Capability 3.0),
- ОС: Ubuntu Linux 22,
- реализация: C/CUDA и Python-обвязки,
- честные замеры времени с раздельным учётом I/O, передачи данных и вычислений.
Шифр Хилла: GPU проигрывает
Шифр Хилла — классический линейный симметричный шифр, основанный на умножении матрицы на вектор по модулю.
Настройки шифра:
- ключ — матрица 128×128;
- вход — видеофайл ~76 MiB;
- CPU-версия — оптимизированный C (-O3 -march=native);
- GPU-версия — CUDA-ядро + передача данных через PCIe.
Результат:
- CPU: ~2 секунды;
- GPU: ~15 секунд.
GPU оказался почти в 8 раз медленнее.
Почему:
- целочисленная арифметика низкой сложности;
- низкая арифметическая плотность (мало операций на байт данных);
- большая стоимость передачи данных CPU → GPU;
- CPU эффективно использует кэш и SIMD.
Вывод:
GPU не ускоряет классическую криптографию автоматически.
Для таких алгоритмов CPU часто остаётся лучшим выбором.
LWE: GPU начинает выигрывать — но не сразу
Алгоритмы на основе Learning With Errors лежат /2/
в основе постквантовой криптографии/3/. Базовая операция имеет вид:
b = A × s + e ( mod q )
где матрица A является фиксированным параметром (ключом), а
векторы s и e меняются для каждого сообщения.
Одиночное сообщение
При обработке одного сообщения:
CPU: ~0.049 с
GPU: ~0.110 с
GPU проигрывает — по той же причине, что и в случае с Хиллом: матрицу A (16 MiB)
нужно передать по PCIe.
Много сообщений при одном ключе
Однако в реальной криптографической модели:
ключ (матрица A) фиксирован;
сообщений много.
Я провёл серию экспериментов, где одна и та же матрица A загружается на
GPU один раз, а затем обрабатывается K различных сообщений.
K ,
(сообщений)
CPU,
сек/сообщение
GPU,
сек/сообщение
Ускорение
1
0.049
0.110
0.45×
4
0.029
0.034
~1×
16
0.028
0.015
1.8×
64
0.027
0.0107
2.5×
256
0.028
0.0097
2.9×
Критическая точка — K ≈ 16.
Начиная с этого момента GPU стабильно выигрывает.
Почему:
-
стоимость загрузки ключа амортизируется;
-
ядро GPU стабильно считает ~0.009 с на сообщение;
CPU масштабируется линейно, GPU — суб-линейно.
Вывод:
GPU в постквантовой криптографии — это ускоритель сервиса, а не одиночной операции.
Whisper: GPU раскрывается полностью
Whisper — нейросетевая модель распознавания речи. Здесь ситуация принципиально иная.
Эксперименты:
модели: tiny и base;
вход: аудиофайл ~30 секунд;
метрика: Real-Time Factor (RTF).
Результаты
Модель
CPU RTF
GPU RTF
Ускорение
Whisper tiny
~0.96
~0.16
~6×
Whisper base
~2.23
~0.10
>20×
GPU уверенно и кратно выигрывает.
Почему:
основная операция — матрица × матрица;
высокая арифметическая плотность;
веса модели загружаются один раз;
данные обрабатываются потоками;
архитектура GPU идеально соответствует задаче.
Вывод:
Whisper — пример задачи, почти идеально совпадающей с архитектурой GPU.
Общая картина
Сводя всё вместе:
Алгоритм
GPU
результат
Шифр Хилла
❌ Проигрыш по отношению к CPU
LWE
(1 сообщение)
❌ Проигрыш по отношению к CPU
LWE (K ≥ 16)
⚠️ Умеренный выигрыш у CPU
Whisper
✅ Крупный выигрыш
Главный вывод
GPU ускоряет не алгоритмы, а типы вычислений.
GPU эффективен, если:
один и тот же набор данных используется многократно;
вычислений много по отношению к объёму данных;
задача хорошо параллелится.
Формально это можно выразить так:
Для эффективной работы алгоритма должно соблюдаться условие:
\({
\Large
\frac{\text{Вычисления}}
{\text{Передача данных}}
\gg 1
}
\)
Если это условие не выполняется — CPU остаётся лучшим выбором.
Заключение
Куда "уходит" время
Изображение создано с помощью нейросети ChatGPT 5 (DALL-E).
Эти эксперименты ценны тем, что:
сравнивают криптографию, постквантовую криптографию и ИИ;
выполнены на одном и том же оборудовании;
основаны на реальных измерениях, а не маркетинговых обещаниях.
GPU — мощный инструмент, но только в тех задачах, где его архитектура действительно востребована. И именно
это понимание сегодня важнее, чем слепая вера в «ускорение на видеокарте».
Примечания
1)
SIMD (Single Instruction, Multiple Data —
«Одиночный поток команд, множественный поток данных») — это принцип вычислений и набор инструкций процессора,
который позволяет выполнять одну и ту же операцию одновременно над множеством элементов данных,
обеспечивая параллелизм на уровне данных, что в разы ускоряет задачи, требующие обработки больших объемов однотипных данных.
2)
Learning With Errors (LWE) (Обучение с ошибками) – это фундаментальная задача в криптографии на основе решеток,
которая лежит в основе многих постквантовых криптосистем, включая шифрование и подпись, а также гомоморфное шифрование;
её сложность эквивалентна решению сложнейших задач на решетках, что делает её устойчивой к атакам даже квантовыми компьютерами,
и заключается в необходимости найти секрет, имея систему зашумленных линейных уравнений,
где шум затрудняет восстановление истинного решения.
3)
Постквантовая криптография — часть криптографии, которая остаётся актуальной и при появлении квантовых компьютеров и квантовых атак.
Так как по скорости вычисления традиционных криптографических алгоритмов квантовые компьютеры значительно превосходят классические
компьютерные архитектуры, современные криптографические системы становятся потенциально уязвимыми для криптографических атак.
("Википедия")
В работе над статьёй принимал участие ChatGPT версии 5.
Конечной целью испытания было получение ответа на вопрос - когда GPU сокращает время обработки данных
по сравнению с выполнением вычислений центральным процессором, а когда его использование наоборот увеличивает
затраты на расчеты.
Все эксперименты выполнены на одном и том же оборудовании:
- CPU: четырёхъядерный Core2Quad,
- GPU: NVIDIA GeForce GT 740 (Kepler, Compute Capability 3.0),
- ОС: Ubuntu Linux 22,
- реализация: C/CUDA и Python-обвязки,
- честные замеры времени с раздельным учётом I/O, передачи данных и вычислений.
Шифр Хилла: GPU проигрывает
Шифр Хилла — классический линейный симметричный шифр, основанный на умножении матрицы на вектор по модулю.
Настройки шифра:
- ключ — матрица 128×128;
- вход — видеофайл ~76 MiB;
- CPU-версия — оптимизированный C (-O3 -march=native);
- GPU-версия — CUDA-ядро + передача данных через PCIe.
Результат:
- CPU: ~2 секунды;
- GPU: ~15 секунд.
GPU оказался почти в 8 раз медленнее.
Почему:
- целочисленная арифметика низкой сложности;
- низкая арифметическая плотность (мало операций на байт данных);
- большая стоимость передачи данных CPU → GPU;
- CPU эффективно использует кэш и SIMD.
Вывод:
GPU не ускоряет классическую криптографию автоматически.
Для таких алгоритмов CPU часто остаётся лучшим выбором.
LWE: GPU начинает выигрывать — но не сразу
Алгоритмы на основе Learning With Errors лежат /2/
в основе постквантовой криптографии/3/. Базовая операция имеет вид:
b = A × s + e ( mod q )
где матрица A является фиксированным параметром (ключом), а
векторы s и e меняются для каждого сообщения.
Одиночное сообщение
При обработке одного сообщения:
CPU: ~0.049 с
GPU: ~0.110 с
GPU проигрывает — по той же причине, что и в случае с Хиллом: матрицу A (16 MiB)
нужно передать по PCIe.
Много сообщений при одном ключе
Однако в реальной криптографической модели:
ключ (матрица A) фиксирован;
сообщений много.
Я провёл серию экспериментов, где одна и та же матрица A загружается на
GPU один раз, а затем обрабатывается K различных сообщений.
K ,
(сообщений)
CPU,
сек/сообщение
GPU,
сек/сообщение
Ускорение
1
0.049
0.110
0.45×
4
0.029
0.034
~1×
16
0.028
0.015
1.8×
64
0.027
0.0107
2.5×
256
0.028
0.0097
2.9×
Критическая точка — K ≈ 16.
Начиная с этого момента GPU стабильно выигрывает.
Почему:
-
стоимость загрузки ключа амортизируется;
-
ядро GPU стабильно считает ~0.009 с на сообщение;
CPU масштабируется линейно, GPU — суб-линейно.
Вывод:
GPU в постквантовой криптографии — это ускоритель сервиса, а не одиночной операции.
Whisper: GPU раскрывается полностью
Whisper — нейросетевая модель распознавания речи. Здесь ситуация принципиально иная.
Эксперименты:
модели: tiny и base;
вход: аудиофайл ~30 секунд;
метрика: Real-Time Factor (RTF).
Результаты
Модель
CPU RTF
GPU RTF
Ускорение
Whisper tiny
~0.96
~0.16
~6×
Whisper base
~2.23
~0.10
>20×
GPU уверенно и кратно выигрывает.
Почему:
основная операция — матрица × матрица;
высокая арифметическая плотность;
веса модели загружаются один раз;
данные обрабатываются потоками;
архитектура GPU идеально соответствует задаче.
Вывод:
Whisper — пример задачи, почти идеально совпадающей с архитектурой GPU.
Общая картина
Сводя всё вместе:
Алгоритм
GPU
результат
Шифр Хилла
❌ Проигрыш по отношению к CPU
LWE
(1 сообщение)
❌ Проигрыш по отношению к CPU
LWE (K ≥ 16)
⚠️ Умеренный выигрыш у CPU
Whisper
✅ Крупный выигрыш
Главный вывод
GPU ускоряет не алгоритмы, а типы вычислений.
GPU эффективен, если:
один и тот же набор данных используется многократно;
вычислений много по отношению к объёму данных;
задача хорошо параллелится.
Формально это можно выразить так:
Для эффективной работы алгоритма должно соблюдаться условие:
\({
\Large
\frac{\text{Вычисления}}
{\text{Передача данных}}
\gg 1
}
\)
Если это условие не выполняется — CPU остаётся лучшим выбором.
Заключение
Куда "уходит" время
Изображение создано с помощью нейросети ChatGPT 5 (DALL-E).
Эти эксперименты ценны тем, что:
сравнивают криптографию, постквантовую криптографию и ИИ;
выполнены на одном и том же оборудовании;
основаны на реальных измерениях, а не маркетинговых обещаниях.
GPU — мощный инструмент, но только в тех задачах, где его архитектура действительно востребована. И именно
это понимание сегодня важнее, чем слепая вера в «ускорение на видеокарте».
Примечания
1)
SIMD (Single Instruction, Multiple Data —
«Одиночный поток команд, множественный поток данных») — это принцип вычислений и набор инструкций процессора,
который позволяет выполнять одну и ту же операцию одновременно над множеством элементов данных,
обеспечивая параллелизм на уровне данных, что в разы ускоряет задачи, требующие обработки больших объемов однотипных данных.
2)
Learning With Errors (LWE) (Обучение с ошибками) – это фундаментальная задача в криптографии на основе решеток,
которая лежит в основе многих постквантовых криптосистем, включая шифрование и подпись, а также гомоморфное шифрование;
её сложность эквивалентна решению сложнейших задач на решетках, что делает её устойчивой к атакам даже квантовыми компьютерами,
и заключается в необходимости найти секрет, имея систему зашумленных линейных уравнений,
где шум затрудняет восстановление истинного решения.
3)
Постквантовая криптография — часть криптографии, которая остаётся актуальной и при появлении квантовых компьютеров и квантовых атак.
Так как по скорости вычисления традиционных криптографических алгоритмов квантовые компьютеры значительно превосходят классические
компьютерные архитектуры, современные криптографические системы становятся потенциально уязвимыми для криптографических атак.
("Википедия")
В работе над статьёй принимал участие ChatGPT версии 5.
Настройки шифра:
- ключ — матрица 128×128;
- вход — видеофайл ~76 MiB;
- CPU-версия — оптимизированный C (-O3 -march=native);
- GPU-версия — CUDA-ядро + передача данных через PCIe.
- CPU: ~2 секунды;
- GPU: ~15 секунд.
GPU оказался почти в 8 раз медленнее.
Почему:
- целочисленная арифметика низкой сложности;
- низкая арифметическая плотность (мало операций на байт данных);
- большая стоимость передачи данных CPU → GPU;
- CPU эффективно использует кэш и SIMD.
Вывод:
GPU не ускоряет классическую криптографию автоматически.
Для таких алгоритмов CPU часто остаётся лучшим выбором.
LWE: GPU начинает выигрывать — но не сразу
Алгоритмы на основе Learning With Errors лежат /2/
в основе постквантовой криптографии/3/. Базовая операция имеет вид:
b = A × s + e ( mod q )
где матрица A является фиксированным параметром (ключом), а
векторы s и e меняются для каждого сообщения.
Одиночное сообщение
При обработке одного сообщения:
CPU: ~0.049 с
GPU: ~0.110 с
GPU проигрывает — по той же причине, что и в случае с Хиллом: матрицу A (16 MiB)
нужно передать по PCIe.
Много сообщений при одном ключе
Однако в реальной криптографической модели:
ключ (матрица A) фиксирован;
сообщений много.
Я провёл серию экспериментов, где одна и та же матрица A загружается на
GPU один раз, а затем обрабатывается K различных сообщений.
K ,
(сообщений)
CPU,
сек/сообщение
GPU,
сек/сообщение
Ускорение
1
0.049
0.110
0.45×
4
0.029
0.034
~1×
16
0.028
0.015
1.8×
64
0.027
0.0107
2.5×
256
0.028
0.0097
2.9×
Критическая точка — K ≈ 16.
Начиная с этого момента GPU стабильно выигрывает.
Почему:
-
стоимость загрузки ключа амортизируется;
-
ядро GPU стабильно считает ~0.009 с на сообщение;
CPU масштабируется линейно, GPU — суб-линейно.
Вывод:
GPU в постквантовой криптографии — это ускоритель сервиса, а не одиночной операции.
Whisper: GPU раскрывается полностью
Whisper — нейросетевая модель распознавания речи. Здесь ситуация принципиально иная.
Эксперименты:
модели: tiny и base;
вход: аудиофайл ~30 секунд;
метрика: Real-Time Factor (RTF).
Результаты
Модель
CPU RTF
GPU RTF
Ускорение
Whisper tiny
~0.96
~0.16
~6×
Whisper base
~2.23
~0.10
>20×
GPU уверенно и кратно выигрывает.
Почему:
основная операция — матрица × матрица;
высокая арифметическая плотность;
веса модели загружаются один раз;
данные обрабатываются потоками;
архитектура GPU идеально соответствует задаче.
Вывод:
Whisper — пример задачи, почти идеально совпадающей с архитектурой GPU.
Общая картина
Сводя всё вместе:
Алгоритм
GPU
результат
Шифр Хилла
❌ Проигрыш по отношению к CPU
LWE
(1 сообщение)
❌ Проигрыш по отношению к CPU
LWE (K ≥ 16)
⚠️ Умеренный выигрыш у CPU
Whisper
✅ Крупный выигрыш
Главный вывод
GPU ускоряет не алгоритмы, а типы вычислений.
GPU эффективен, если:
один и тот же набор данных используется многократно;
вычислений много по отношению к объёму данных;
задача хорошо параллелится.
Формально это можно выразить так:
Для эффективной работы алгоритма должно соблюдаться условие:
\({
\Large
\frac{\text{Вычисления}}
{\text{Передача данных}}
\gg 1
}
\)
Если это условие не выполняется — CPU остаётся лучшим выбором.
Заключение
Куда "уходит" время
Изображение создано с помощью нейросети ChatGPT 5 (DALL-E).
Эти эксперименты ценны тем, что:
сравнивают криптографию, постквантовую криптографию и ИИ;
выполнены на одном и том же оборудовании;
основаны на реальных измерениях, а не маркетинговых обещаниях.
GPU — мощный инструмент, но только в тех задачах, где его архитектура действительно востребована. И именно
это понимание сегодня важнее, чем слепая вера в «ускорение на видеокарте».
Примечания
1)
SIMD (Single Instruction, Multiple Data —
«Одиночный поток команд, множественный поток данных») — это принцип вычислений и набор инструкций процессора,
который позволяет выполнять одну и ту же операцию одновременно над множеством элементов данных,
обеспечивая параллелизм на уровне данных, что в разы ускоряет задачи, требующие обработки больших объемов однотипных данных.
2)
Learning With Errors (LWE) (Обучение с ошибками) – это фундаментальная задача в криптографии на основе решеток,
которая лежит в основе многих постквантовых криптосистем, включая шифрование и подпись, а также гомоморфное шифрование;
её сложность эквивалентна решению сложнейших задач на решетках, что делает её устойчивой к атакам даже квантовыми компьютерами,
и заключается в необходимости найти секрет, имея систему зашумленных линейных уравнений,
где шум затрудняет восстановление истинного решения.
3)
Постквантовая криптография — часть криптографии, которая остаётся актуальной и при появлении квантовых компьютеров и квантовых атак.
Так как по скорости вычисления традиционных криптографических алгоритмов квантовые компьютеры значительно превосходят классические
компьютерные архитектуры, современные криптографические системы становятся потенциально уязвимыми для криптографических атак.
("Википедия")
В работе над статьёй принимал участие ChatGPT версии 5.
Алгоритмы на основе Learning With Errors лежат /2/ в основе постквантовой криптографии/3/. Базовая операция имеет вид:
где матрица A является фиксированным параметром (ключом), а векторы s и e меняются для каждого сообщения.
Одиночное сообщениеПри обработке одного сообщения:
CPU: ~0.049 с
GPU: ~0.110 с
GPU проигрывает — по той же причине, что и в случае с Хиллом: матрицу A (16 MiB) нужно передать по PCIe.
Много сообщений при одном ключеОднако в реальной криптографической модели:
ключ (матрица A) фиксирован;
сообщений много.
Я провёл серию экспериментов, где одна и та же матрица A загружается на GPU один раз, а затем обрабатывается K различных сообщений.
|
K , |
CPU, |
GPU, |
Ускорение |
|---|---|---|---|
|
1 |
0.049 |
0.110 |
0.45× |
|
4 |
0.029 |
0.034 |
~1× |
|
16 |
0.028 |
0.015 |
1.8× |
|
64 |
0.027 |
0.0107 |
2.5× |
|
256 |
0.028 |
0.0097 |
2.9× |
Критическая точка — K ≈ 16.
Начиная с этого момента GPU стабильно выигрывает.
Почему:
-
стоимость загрузки ключа амортизируется;
-
ядро GPU стабильно считает ~0.009 с на сообщение;
CPU масштабируется линейно, GPU — суб-линейно.
Вывод:
GPU в постквантовой криптографии — это ускоритель сервиса, а не одиночной операции.
Whisper: GPU раскрывается полностью
Whisper — нейросетевая модель распознавания речи. Здесь ситуация принципиально иная.
Эксперименты:
модели: tiny и base;
вход: аудиофайл ~30 секунд;
метрика: Real-Time Factor (RTF).
Результаты
Модель
CPU RTF
GPU RTF
Ускорение
Whisper tiny
~0.96
~0.16
~6×
Whisper base
~2.23
~0.10
>20×
GPU уверенно и кратно выигрывает.
Почему:
основная операция — матрица × матрица;
высокая арифметическая плотность;
веса модели загружаются один раз;
данные обрабатываются потоками;
архитектура GPU идеально соответствует задаче.
Вывод:
Whisper — пример задачи, почти идеально совпадающей с архитектурой GPU.
Общая картина
Сводя всё вместе:
Алгоритм
GPU
результат
Шифр Хилла
❌ Проигрыш по отношению к CPU
LWE
(1 сообщение)
❌ Проигрыш по отношению к CPU
LWE (K ≥ 16)
⚠️ Умеренный выигрыш у CPU
Whisper
✅ Крупный выигрыш
Главный вывод
GPU ускоряет не алгоритмы, а типы вычислений.
GPU эффективен, если:
один и тот же набор данных используется многократно;
вычислений много по отношению к объёму данных;
задача хорошо параллелится.
Формально это можно выразить так:
Для эффективной работы алгоритма должно соблюдаться условие:
\({
\Large
\frac{\text{Вычисления}}
{\text{Передача данных}}
\gg 1
}
\)
Если это условие не выполняется — CPU остаётся лучшим выбором.
Заключение
Куда "уходит" время
Изображение создано с помощью нейросети ChatGPT 5 (DALL-E).
Эти эксперименты ценны тем, что:
сравнивают криптографию, постквантовую криптографию и ИИ;
выполнены на одном и том же оборудовании;
основаны на реальных измерениях, а не маркетинговых обещаниях.
GPU — мощный инструмент, но только в тех задачах, где его архитектура действительно востребована. И именно
это понимание сегодня важнее, чем слепая вера в «ускорение на видеокарте».
Примечания
1)
SIMD (Single Instruction, Multiple Data —
«Одиночный поток команд, множественный поток данных») — это принцип вычислений и набор инструкций процессора,
который позволяет выполнять одну и ту же операцию одновременно над множеством элементов данных,
обеспечивая параллелизм на уровне данных, что в разы ускоряет задачи, требующие обработки больших объемов однотипных данных.
2)
Learning With Errors (LWE) (Обучение с ошибками) – это фундаментальная задача в криптографии на основе решеток,
которая лежит в основе многих постквантовых криптосистем, включая шифрование и подпись, а также гомоморфное шифрование;
её сложность эквивалентна решению сложнейших задач на решетках, что делает её устойчивой к атакам даже квантовыми компьютерами,
и заключается в необходимости найти секрет, имея систему зашумленных линейных уравнений,
где шум затрудняет восстановление истинного решения.
3)
Постквантовая криптография — часть криптографии, которая остаётся актуальной и при появлении квантовых компьютеров и квантовых атак.
Так как по скорости вычисления традиционных криптографических алгоритмов квантовые компьютеры значительно превосходят классические
компьютерные архитектуры, современные криптографические системы становятся потенциально уязвимыми для криптографических атак.
("Википедия")
В работе над статьёй принимал участие ChatGPT версии 5.
Whisper — нейросетевая модель распознавания речи. Здесь ситуация принципиально иная.
Эксперименты:
модели: tiny и base;
вход: аудиофайл ~30 секунд;
метрика: Real-Time Factor (RTF).
|
Модель |
CPU RTF |
GPU RTF |
Ускорение |
|---|---|---|---|
|
Whisper tiny |
~0.96 |
~0.16 |
~6× |
|
Whisper base |
~2.23 |
~0.10 |
>20× |
GPU уверенно и кратно выигрывает.
Почему:
основная операция — матрица × матрица;
высокая арифметическая плотность;
веса модели загружаются один раз;
данные обрабатываются потоками;
архитектура GPU идеально соответствует задаче.
Вывод:
Whisper — пример задачи, почти идеально совпадающей с архитектурой GPU.
Общая картина
Сводя всё вместе:
Алгоритм
GPU
результат
Шифр Хилла
❌ Проигрыш по отношению к CPU
LWE
(1 сообщение)
❌ Проигрыш по отношению к CPU
LWE (K ≥ 16)
⚠️ Умеренный выигрыш у CPU
Whisper
✅ Крупный выигрыш
Главный вывод
GPU ускоряет не алгоритмы, а типы вычислений.
GPU эффективен, если:
один и тот же набор данных используется многократно;
вычислений много по отношению к объёму данных;
задача хорошо параллелится.
Формально это можно выразить так:
Для эффективной работы алгоритма должно соблюдаться условие:
\({
\Large
\frac{\text{Вычисления}}
{\text{Передача данных}}
\gg 1
}
\)
Если это условие не выполняется — CPU остаётся лучшим выбором.
Заключение
Куда "уходит" время
Изображение создано с помощью нейросети ChatGPT 5 (DALL-E).
Эти эксперименты ценны тем, что:
сравнивают криптографию, постквантовую криптографию и ИИ;
выполнены на одном и том же оборудовании;
основаны на реальных измерениях, а не маркетинговых обещаниях.
GPU — мощный инструмент, но только в тех задачах, где его архитектура действительно востребована. И именно
это понимание сегодня важнее, чем слепая вера в «ускорение на видеокарте».
Примечания
1)
SIMD (Single Instruction, Multiple Data —
«Одиночный поток команд, множественный поток данных») — это принцип вычислений и набор инструкций процессора,
который позволяет выполнять одну и ту же операцию одновременно над множеством элементов данных,
обеспечивая параллелизм на уровне данных, что в разы ускоряет задачи, требующие обработки больших объемов однотипных данных.
2)
Learning With Errors (LWE) (Обучение с ошибками) – это фундаментальная задача в криптографии на основе решеток,
которая лежит в основе многих постквантовых криптосистем, включая шифрование и подпись, а также гомоморфное шифрование;
её сложность эквивалентна решению сложнейших задач на решетках, что делает её устойчивой к атакам даже квантовыми компьютерами,
и заключается в необходимости найти секрет, имея систему зашумленных линейных уравнений,
где шум затрудняет восстановление истинного решения.
3)
Постквантовая криптография — часть криптографии, которая остаётся актуальной и при появлении квантовых компьютеров и квантовых атак.
Так как по скорости вычисления традиционных криптографических алгоритмов квантовые компьютеры значительно превосходят классические
компьютерные архитектуры, современные криптографические системы становятся потенциально уязвимыми для криптографических атак.
("Википедия")
В работе над статьёй принимал участие ChatGPT версии 5.
Сводя всё вместе:
|
Алгоритм |
GPU |
|---|---|
|
Шифр Хилла |
❌ Проигрыш по отношению к CPU |
|
LWE |
❌ Проигрыш по отношению к CPU |
|
LWE (K ≥ 16) |
⚠️ Умеренный выигрыш у CPU |
|
Whisper |
✅ Крупный выигрыш |
Главный вывод
GPU ускоряет не алгоритмы, а типы вычислений.
GPU эффективен, если:
один и тот же набор данных используется многократно;
вычислений много по отношению к объёму данных;
задача хорошо параллелится.
Формально это можно выразить так:
Для эффективной работы алгоритма должно соблюдаться условие:
\({
\Large
\frac{\text{Вычисления}}
{\text{Передача данных}}
\gg 1
}
\)
Если это условие не выполняется — CPU остаётся лучшим выбором.
Заключение
Куда "уходит" время
Изображение создано с помощью нейросети ChatGPT 5 (DALL-E).
Эти эксперименты ценны тем, что:
сравнивают криптографию, постквантовую криптографию и ИИ;
выполнены на одном и том же оборудовании;
основаны на реальных измерениях, а не маркетинговых обещаниях.
GPU — мощный инструмент, но только в тех задачах, где его архитектура действительно востребована. И именно
это понимание сегодня важнее, чем слепая вера в «ускорение на видеокарте».
Примечания
1)
SIMD (Single Instruction, Multiple Data —
«Одиночный поток команд, множественный поток данных») — это принцип вычислений и набор инструкций процессора,
который позволяет выполнять одну и ту же операцию одновременно над множеством элементов данных,
обеспечивая параллелизм на уровне данных, что в разы ускоряет задачи, требующие обработки больших объемов однотипных данных.
2)
Learning With Errors (LWE) (Обучение с ошибками) – это фундаментальная задача в криптографии на основе решеток,
которая лежит в основе многих постквантовых криптосистем, включая шифрование и подпись, а также гомоморфное шифрование;
её сложность эквивалентна решению сложнейших задач на решетках, что делает её устойчивой к атакам даже квантовыми компьютерами,
и заключается в необходимости найти секрет, имея систему зашумленных линейных уравнений,
где шум затрудняет восстановление истинного решения.
3)
Постквантовая криптография — часть криптографии, которая остаётся актуальной и при появлении квантовых компьютеров и квантовых атак.
Так как по скорости вычисления традиционных криптографических алгоритмов квантовые компьютеры значительно превосходят классические
компьютерные архитектуры, современные криптографические системы становятся потенциально уязвимыми для криптографических атак.
("Википедия")
В работе над статьёй принимал участие ChatGPT версии 5.
GPU ускоряет не алгоритмы, а типы вычислений.
GPU эффективен, если:
один и тот же набор данных используется многократно;
вычислений много по отношению к объёму данных;
задача хорошо параллелится.
Формально это можно выразить так:
Для эффективной работы алгоритма должно соблюдаться условие: \({ \Large \frac{\text{Вычисления}} {\text{Передача данных}} \gg 1 } \)
Если это условие не выполняется — CPU остаётся лучшим выбором.
Заключение
Куда "уходит" время
Изображение создано с помощью нейросети ChatGPT 5 (DALL-E).
Эти эксперименты ценны тем, что:
сравнивают криптографию, постквантовую криптографию и ИИ;
выполнены на одном и том же оборудовании;
основаны на реальных измерениях, а не маркетинговых обещаниях.
GPU — мощный инструмент, но только в тех задачах, где его архитектура действительно востребована. И именно
это понимание сегодня важнее, чем слепая вера в «ускорение на видеокарте».
Примечания
1)
SIMD (Single Instruction, Multiple Data —
«Одиночный поток команд, множественный поток данных») — это принцип вычислений и набор инструкций процессора,
который позволяет выполнять одну и ту же операцию одновременно над множеством элементов данных,
обеспечивая параллелизм на уровне данных, что в разы ускоряет задачи, требующие обработки больших объемов однотипных данных.
2)
Learning With Errors (LWE) (Обучение с ошибками) – это фундаментальная задача в криптографии на основе решеток,
которая лежит в основе многих постквантовых криптосистем, включая шифрование и подпись, а также гомоморфное шифрование;
её сложность эквивалентна решению сложнейших задач на решетках, что делает её устойчивой к атакам даже квантовыми компьютерами,
и заключается в необходимости найти секрет, имея систему зашумленных линейных уравнений,
где шум затрудняет восстановление истинного решения.
3)
Постквантовая криптография — часть криптографии, которая остаётся актуальной и при появлении квантовых компьютеров и квантовых атак.
Так как по скорости вычисления традиционных криптографических алгоритмов квантовые компьютеры значительно превосходят классические
компьютерные архитектуры, современные криптографические системы становятся потенциально уязвимыми для криптографических атак.
("Википедия")
В работе над статьёй принимал участие ChatGPT версии 5.
Изображение создано с помощью нейросети ChatGPT 5 (DALL-E).
Эти эксперименты ценны тем, что:
сравнивают криптографию, постквантовую криптографию и ИИ;
выполнены на одном и том же оборудовании;
основаны на реальных измерениях, а не маркетинговых обещаниях.
GPU — мощный инструмент, но только в тех задачах, где его архитектура действительно востребована. И именно это понимание сегодня важнее, чем слепая вера в «ускорение на видеокарте».
Примечания
1)
SIMD (Single Instruction, Multiple Data —
«Одиночный поток команд, множественный поток данных») — это принцип вычислений и набор инструкций процессора,
который позволяет выполнять одну и ту же операцию одновременно над множеством элементов данных,
обеспечивая параллелизм на уровне данных, что в разы ускоряет задачи, требующие обработки больших объемов однотипных данных.
2)
Learning With Errors (LWE) (Обучение с ошибками) – это фундаментальная задача в криптографии на основе решеток,
которая лежит в основе многих постквантовых криптосистем, включая шифрование и подпись, а также гомоморфное шифрование;
её сложность эквивалентна решению сложнейших задач на решетках, что делает её устойчивой к атакам даже квантовыми компьютерами,
и заключается в необходимости найти секрет, имея систему зашумленных линейных уравнений,
где шум затрудняет восстановление истинного решения.
3)
Постквантовая криптография — часть криптографии, которая остаётся актуальной и при появлении квантовых компьютеров и квантовых атак.
Так как по скорости вычисления традиционных криптографических алгоритмов квантовые компьютеры значительно превосходят классические
компьютерные архитектуры, современные криптографические системы становятся потенциально уязвимыми для криптографических атак.
("Википедия")
В работе над статьёй принимал участие ChatGPT версии 5.
1) SIMD (Single Instruction, Multiple Data — «Одиночный поток команд, множественный поток данных») — это принцип вычислений и набор инструкций процессора, который позволяет выполнять одну и ту же операцию одновременно над множеством элементов данных, обеспечивая параллелизм на уровне данных, что в разы ускоряет задачи, требующие обработки больших объемов однотипных данных.
2) Learning With Errors (LWE) (Обучение с ошибками) – это фундаментальная задача в криптографии на основе решеток, которая лежит в основе многих постквантовых криптосистем, включая шифрование и подпись, а также гомоморфное шифрование; её сложность эквивалентна решению сложнейших задач на решетках, что делает её устойчивой к атакам даже квантовыми компьютерами, и заключается в необходимости найти секрет, имея систему зашумленных линейных уравнений, где шум затрудняет восстановление истинного решения.
3)
Постквантовая криптография — часть криптографии, которая остаётся актуальной и при появлении квантовых компьютеров и квантовых атак.
Так как по скорости вычисления традиционных криптографических алгоритмов квантовые компьютеры значительно превосходят классические
компьютерные архитектуры, современные криптографические системы становятся потенциально уязвимыми для криптографических атак.
("Википедия")
В работе над статьёй принимал участие ChatGPT версии 5.