Аннотации:
Проводится сравнение эффективности CPU и GPU реализаций некоторых комбинаторных алгоритмов, используемых в криптоанализе. В частности, анализируются причины, по которым не удается эффективно реализовать на GPU алгоритмы, осуществляющие «интеллектуальный перебор». Показывается, что применение специальных техник трансформации потока управления позволяет существенно компенсировать потери производительности, возникающие из-за неэффективного исполнения условных переходов на SIMD-устройстве. Однако
ограничения, которые накладывают механизмы работы с памятью, применяемые в современных GPU, для рассматриваемых алгоритмов оказываются непреодолимыми. В качестве тестовых задач рассматриваются задачи обращения криптографических функций DES иА5/1. In this work we assess performance of CPU and GPU implementations of some widely-used cryptanalytic combinatorial algorithms. In particular, we analyze obstacles for effective GPU implementation of "smart" combinatorial algorithms. Next, to alleviate performance problems arising from inefficient processing of conditional expressions in SIMD-devices we devise some special control flow graph transformation techniques. Finally, we demonstrate that contemporary CPU's memory access schemes are incompatible with typical memory access patterns of "smart" combinatorial algorithms studied. We use DES and A5/1 cryptographic functions as test cases.
Описание:
Булавинцев Вадим Германович, программист, лаборатория дискретного анализа.
Институт динамики систем и теории управления им. В.М. Матросова СО РАН (Иркутск,
Российская Федерация), v.g.bulavintsev@gmail.com. V.G. Bulavintsev, Matrosov Institute for System Dynamics and Control Theory of Siberian Branch of Russian Academy of Sciences (Irkutsk, Russian Federation)v.g.bulavintsev@gmail.com