“算力”自电脑诞生以来就是一个热门话题,如今的cpu相较于过去数十年间,性能已经有了质的飞跃,但即使是这样,在cpu面对大量浮点数运算时,也只能是“力不从心”。
那么电脑硬件中有没有可以快速处理浮点数的硬件呢?
当然有,gpu就是为此而生的!虽然gpu平常只是处理图形,但我们可以用“通用计算”API,使gpu做浮点数运算
但问题来了,gpu做浮点数运算的API兼容性都不好......
CUDA和OpenCL还有DirectX 11的兼容性都不尽人意.......
那么有没有替代方案?就是gles 3.0的Tranform Feedback,虽然严格意义上它不是gpu的通用计算API
但可以实现gpu的通用计算!!!
并且,在Godot4.X,备用渲染就是gles3.0,所以,本人趁着空闲时间,写了个简单的GDscript调用gpu运算的绑定,本质就是用gles 3.0的Tranform Feedback:
![](http://tiebapic.baidu.com/forum/w%3D580/sign=48ccde919118367aad897fd51e728b68/2773279b033b5bb53177334621d3d539b700bca9.jpg?tbpicau=2024-08-06-05_bd05677be6ccea580b7d742a02391aff)
![](http://tiebapic.baidu.com/forum/w%3D580/sign=cf8f9593a751f819f1250342eab54a76/2a6ac72a2834349bf5a67d3ddeea15ce37d3bea9.jpg?tbpicau=2024-08-06-05_f13127e4adaf18886c0b94ca8cad0fce)
![](http://tiebapic.baidu.com/forum/w%3D580/sign=87108fff2e12b31bc76ccd21b6193674/d86d7359252dd42adca91213143b5bb5c8eab8a9.jpg?tbpicau=2024-08-06-05_f7e9bb7af36774ad56ac0c9b422949a5)
代码体量也比较小,只是封装了7个函数:
![](http://tiebapic.baidu.com/forum/w%3D580/sign=7b67e575eb039245a1b5e107b795a4a8/8846b28b87d6277f268621803f381f30e824fcbd.jpg?tbpicau=2024-08-06-05_5cbd62e02eeb503cdc237ee4821943d4)
改插件可以完成简易的gpu运算
本人目前正在编写错误处理的部分,写完后会发布改插件和源码
那么电脑硬件中有没有可以快速处理浮点数的硬件呢?
当然有,gpu就是为此而生的!虽然gpu平常只是处理图形,但我们可以用“通用计算”API,使gpu做浮点数运算
但问题来了,gpu做浮点数运算的API兼容性都不好......
CUDA和OpenCL还有DirectX 11的兼容性都不尽人意.......
那么有没有替代方案?就是gles 3.0的Tranform Feedback,虽然严格意义上它不是gpu的通用计算API
但可以实现gpu的通用计算!!!
并且,在Godot4.X,备用渲染就是gles3.0,所以,本人趁着空闲时间,写了个简单的GDscript调用gpu运算的绑定,本质就是用gles 3.0的Tranform Feedback:
![](http://tiebapic.baidu.com/forum/w%3D580/sign=48ccde919118367aad897fd51e728b68/2773279b033b5bb53177334621d3d539b700bca9.jpg?tbpicau=2024-08-06-05_bd05677be6ccea580b7d742a02391aff)
![](http://tiebapic.baidu.com/forum/w%3D580/sign=cf8f9593a751f819f1250342eab54a76/2a6ac72a2834349bf5a67d3ddeea15ce37d3bea9.jpg?tbpicau=2024-08-06-05_f13127e4adaf18886c0b94ca8cad0fce)
![](http://tiebapic.baidu.com/forum/w%3D580/sign=87108fff2e12b31bc76ccd21b6193674/d86d7359252dd42adca91213143b5bb5c8eab8a9.jpg?tbpicau=2024-08-06-05_f7e9bb7af36774ad56ac0c9b422949a5)
代码体量也比较小,只是封装了7个函数:
![](http://tiebapic.baidu.com/forum/w%3D580/sign=7b67e575eb039245a1b5e107b795a4a8/8846b28b87d6277f268621803f381f30e824fcbd.jpg?tbpicau=2024-08-06-05_5cbd62e02eeb503cdc237ee4821943d4)
改插件可以完成简易的gpu运算
本人目前正在编写错误处理的部分,写完后会发布改插件和源码