所谓的游戏引擎不支持多核是什么意思?
以前经常看到说XX游戏不支持多核,前两年wow好像就是,现在不知道怎么样。就windows os来说,一个process里运行了多个thread,操作系统会自动schedule这些thread任务到不同的cpu核上,难道说这些个不支持多核的引擎都是单线程在跑的?
嗯就是这个意思 多线程不难,为了提升效率把一个东西由单线程搞成多线程很难…… 积重难返 单线程是最简单的,多线程看的头晕,什么锁啊互斥调度好麻烦 一个线程要跑graphic , AI , physics, UI等等那么多东西? 为什么老滚5的双核补丁只有几个mb
——— 来自Stage1st Reader For iOS ReiFukai 发表于 2014-11-5 15:36
一个线程要跑graphic , AI , physics, UI等等那么多东西?
上面有人说了,它本身也是会开很多线程的,但是可能某个线程占了80%的运算量 比如辐射3? 太太请您自重 发表于 2014-11-5 15:41
为什么老滚5的双核补丁只有几个mb
——— 来自Stage1st Reader For iOS
最常见的并行化是按任务分核,比如画面一个核,其他一个核。有点同步性误差也可以接受。
但如果是同一个任务分到多个核上水平不高的真能写出并行减速的效果来 s1巨巨真多啊 dx11才开始支持多线程渲染, dx11时代以前的引擎的基本上都不支持多线程, 当然也不表示支持dx11就一定就启用了多线程特性 单线程程序和多线程程序就是完全两种东西。 ReiFukai 发表于 2014-11-5 15:36
一个线程要跑graphic , AI , physics, UI等等那么多东西?
graphic 大多是GPU,API怎么处理的不管,UI也是API,graphic、AI跟physic要同步 反正多线程编程是很考验技术水平的东西 abcbuzhiming 发表于 2014-11-5 16:06
正在被多线程搞的蛋疼的人飘过,以前一直以为很多牛逼公司开发的游戏服务器程序都是多线程的,后来才发现原 ...
这种做法进程间也不是同样存在数据交互和同步的问题? ReiFukai 发表于 2014-11-5 16:13
这种做法进程间也不是同样存在数据交互和同步的问题?
运算中间数据会比运算结果数据大上好几个数量级,交互结果数据的延时是可以接受的 最需要并行处理的部分已扔GPU,所以还好。 abcbuzhiming 发表于 2014-11-5 16:46
进程之间交换数据的时候直接开个线程安全队列,一边往里面写,另外一边读,生产者消费者模型就行了,这种 ...
这样的话是不是需要一个全局性的进程来统一处理各个逻辑进程所产生的数据?相当于只有一个消费者来读这个安全队列 ReiFukai 发表于 2014-11-5 15:36
一个线程要跑graphic , AI , physics, UI等等那么多东西?
graphic可以单独跑
你说的剩下那些都是cpu的事
Ai和physics分线程跑简直是开玩笑 不就是……用户级多线程吗…… 搭车问,那比如现在的处理器有什么双核 四线程,四核八线程之类。那如果一个游戏只支持单核 的话,在这里也只能用一个线程了咯 ? lxs85 发表于 2014-11-5 18:36
搭车问,那比如现在的处理器有什么双核 四线程,四核八线程之类。那如果一个游戏只支持单核 的话,在这里也 ...
至少可以独占一核省的后台程序来抢资源 lxs85 发表于 2014-11-5 18:36
搭车问,那比如现在的处理器有什么双核 四线程,四核八线程之类。那如果一个游戏只支持单核 的话,在这里也 ...
因为玩游戏的同时要放直播,听音乐,准备好课件等你的学生进来的时候可以秒换。。
曾经做过很粗浅的图像分析的多线程优化。。脑袋都肿了。。最后我觉得我的逻辑完美无缺,各种overhead都考虑的十分到位。。各种测试死活性能提高的不多。。然后教授说有个东西叫沼泽效应,死心吧。。我就再不玩这东西了
页:
[1]