cpu处理所有游戏的逻辑运算,CPU100%是因为程序写的不好,搞了个简单的封闭循环,很容易就100%的 fonfon 发表于 2010-9-15 08:07
不要本末倒置了,cpu才是真正的“中央处理器”,gpu老实说,更贴切地,只能称为协处理器 就是那些需要大规 ... kakaku.bj.cn 发表于 2010-9-15 09:46
请问什么是封闭循环? 是不是有开放循环? yyzjp 发表于 2010-9-15 10:31
cpu负责运行操作系统,负责把程序交过来的任务分配给各种硬件(显卡,声卡)去完成,如果cpu不够力,显卡就 ... westlee 发表于 2010-9-15 11:46
就是死循环...代码逻辑判断没写好..就不停地循环判断,不走下一步... xzmmpb 发表于 2010-9-15 13:04
[quote]现在的的情况是显卡满载时CPU往往连50%都不到 那是因为现在的游戏对双核(多核)cpu优化的不好, 只使用了其中的一个核心。wchf2 发表于 2010-9-15 11:03
int k=1 if(k xzmmpb 发表于 2010-9-15 13:09
理论什么的我不清楚,实际情况就是:窗口模式运行尘埃2,同时打开任务管理器和GPU-Z来监视占用情况,CP ... asdf007 发表于 2010-9-15 14:25
我知道,其实就是Infinite Loop。 但是我的意思是写游戏的程序员都是水平很厉害的,一般都不会犯 ... yyzjp 发表于 2010-9-15 14:14
很简单啊,单核闪龙在这个游戏这个场景中发送给显卡的指令已经可以让98gt满载了,用e84去推,当然就没啥 ... westlee 发表于 2010-9-15 17:01
没有CPU,显卡有啥用 cyberlife 发表于 2010-9-15 10:17
给你贴两段简单的程序说明这个问题。 第一段就会每时每刻100%,第二段就不会。 不好的程序: while ... zhjecho 发表于 2010-9-15 17:03
多谢! 虽然我并不精通Windows 消息编程,但是如果是 单核CPU,即使第一种写法它也不会耗尽100% 的CP ... yyzjp 发表于 2010-9-15 17:31
不调用WaitMessage就会一直在while里循环。 WaitMessage使线程挂起,所以即使一直没有新的消息,也不会一直 ... bird11530000 发表于 2010-9-15 23:05
其实跟Windows没关系。用WindowsAPI只是为了写起来简单而已(懒。。。) 第一段就是所谓“忙等 ... zhjecho 发表于 2010-9-16 10:16
所以我的结论就是, 大多数情况下不是程序员的水平导致CPU占用率高,而是其他的一些我们不太清楚的东东, ... yyzjp 发表于 2010-9-16 10:39
对游戏数据/状态考虑不全也是程序员水平的一个方面…… lotuis 发表于 2010-9-16 10:53
很好,同意你的观点。 我的Concern是即使第一种写法,也不会把CPU核心100%占用掉! 想想我们 ... yyzjp 发表于 2010-9-16 10:37