让我们假设游戏开发者开发一个应用程序。因此,在编写应用程序时,开发人员会编写一些代码段,这些代码段应该转到CPU,还有一些代码段应该转到GPU或由调度程序在运行时决定?CPU和面向GPU的代码有什么区别?
回答
CPU和GPU是不同的,经过优化可以做不同的事情。图形处理器不那么聪明,但大量更多的并行和执行大量的专业处理,而不是传统的CPU更一般的处理。
GPU必须由CPU分配任务。没有调度程序运行时间的可能性,因为它们不同,可以有不同的指令。
对于nVidia的PhysX,CPU和GPU之间的选择可以由用户通过控制面板进行选择,包括自动设置,因此对于某些使用该设置的程序,可以在运行时进行选择。 – rcgldr
这很有趣......没有理由说明为什么GPU上的任何事情都不能在CPU上完成...但是,尽管我对这种功能一无所知,但我不得不假设控制面板是什么做的是翻转一下,这样某些操作/调用通过两种不同的实现来实现,一种使用CPU,另一种使用GPU,但要清楚,但这些实际上是两个基本不同的代码位,而不是相同的代码重新安排。 – Michael
我唯一使用PhysX的游戏总是选择CPU,或者至少这是游戏设置中显示的内容(控制面板也有一个选项可以将当前设置显示为叠加层),所以我没有多少游戏实际上使用这个选项,但它在控制面板中。 – rcgldr
既然你已经标记了C
,那么让我告诉你,你用C语言编写的任何程序,使用GCC
或任何编译器进行编译都是针对你的CPU。
如果您编写代码并使用常规编译器进行编译,但它不针对GPU执行,代码将始终在CPU上执行。
您的图形库调用是由您的CPU“执行”,但面向图形的调用(例如,绘制东西)由GPU操作。
此外,回答这取决于您正在执行的语言和程序。 CUDA和OpenCL或OpenGL计算着色器在GPU上执行。
所以基本上,你的代码的所有程序执行,即在代码中设置编译器环境以渲染调用是由CPU完成的。
- 1. 下面的代码1和代码2有什么区别?
- 2. “Cuda Device”和GPU有什么区别?
- 3. 为什么Opencv GPU代码比CPU慢?
- 4. 面对和朝向有什么区别?
- 5. cpu和GPU之间的区别(图形)
- 6. 代码有什么区别
- 7. CPU和芯片组有什么区别?
- 8. 代码和程序有什么区别?
- 9. 我的代码和教程代码有什么区别?
- 10. EXC_BAD_ACCESS中的代码= 1和代码= 2有什么区别?
- 11. CPU和GPU相同的代码库
- 12. “cpu/mem-loads/pp”和“cpu/mem-loads /”有什么区别?
- 13. 困惑!代码第一和代码之间有什么区别?
- 14. 原始代码和修改代码有什么区别?
- 15. 代码审查和代码审计有什么区别?
- 16. 编译代码和可执行代码有什么区别?
- 17. 串行CPU与GPU代码
- 18. 这两个代码有什么区别?
- 19. 这段代码有什么区别
- 20. 这些verilog代码有什么区别?
- 21. 这两个代码有什么区别
- 22. 这些C++代码有什么区别?
- 23. 这两个代码有什么区别?
- 24. 这两个代码有什么区别
- 25. 以下代码段有什么区别?
- 26. 这段代码有什么区别?
- 27. 这段代码(extjs)有什么区别?
- 28. 这两位代码有什么区别?
- 29. 两个代码有什么区别
- 30. 2段代码有什么区别?
阅读标签说明前加入!这与嵌入式无关。正如它给出的是语言不可知的。 – Olaf