Я ищу, чтобы можно было сделать часть Java-программы, в частности, необходимость многих повторных, немного сложных вычислений, выполняться на графическом процессоре компьютера, а не только на процессоре , Я знаю, что библиотеки, подобные LWJGL, позволяют программам Java использовать графический процессор, но я не нашел простого способа просто выполнить вычисления на нем, которые не обязательно связаны с графикой.Выполнение вычислений на графическом процессоре в Java
Есть ли способ, например, ускорить следующий код с помощью графического процессора компьютера?
long t = System.currentTimeMillis();
double x;
for(int i=0; i < 1080; i++){
for(int j=0; j<1920; j++){
x = Math.sqrt(Math.tan(1d - Math.sin(i * j)));
}
}
System.out.println(System.currentTimeMillis() - t);
Когда я проверяю выше, только-процессор работает, функция, она занимает около 1,25 секунды для его завершения.
Загляните в OpenCL, есть привязки для Java: http://www.jocl.org/ –
Будет ли OpenCL работать только для графических процессоров AMD/Nvidia? – user2649681
Да, если драйверы поддерживают его (что больше всего должно). Это API с кросс-платформой, и это не ограничивается графическими процессорами (он может легко отступать от выполнения ЦП для того же кода, если нет графического процессора, например). –