PyCUDA или этому коду нужно ускорение.
Как же повысить скорость в Python при недостатках:
Более низкая скорость работы;
Более высокое потребление памяти написанных программ по сравнению с аналогичным кодом, написанным на компилируемых языках ( C или C++).