» 您尚未登录:请 登录 | 注册 | 标签 | 帮助 | 小黑屋 |


发新话题
打印

[其他] 谈谈“虚拟内存”对游戏运行的作用

引用:
原帖由 Vimrise 于 2009-6-26 11:34 发表

360可以直接从光盘获取数据,不见得比PS3效率低多少。
从光盘读啥数据?读运算过程中的、或者运算结果的数据?


TOP

引用:
原帖由 喋血战狼 于 2009-6-26 11:46 发表

  开始人参了
    我从头到尾都是在说,虚拟内存造成传输瓶颈  在游戏中不可取
       是你一直说对PS3性能有很大的提升啊
        现在又用你自己的观点来咬我一口
          更无奈的还指着自己的观点是错的
你说不可取,这就是一个没有余地的说法。当然你这个说法是建立在你对游戏运行到底需要些什么数据来维持并不了解的基础上造成的。你认为游戏中所需要的数据都是无时无刻的被需要,以为每秒要把内存中的所有数据过滤至少30遍?
本人从来没说有很大的提升,在适用范围内,可以让游戏得以运行实现, 这就是意义。



TOP

引用:
原帖由 测试一下 于 2009-6-26 11:51 发表


你有没有下限啊~

你找出第一台计算机有内存的证据出来...

难道你以为你从内存寿命可能大于CPU改为第一台计算机有内存就会正确了?~

电子表什么时候出的?~

小霸王又是什么时候出的?~
你又来找骂了不是? 不管什么时候出的, 未必比硬盘的出现还晚?


TOP

引用:
原帖由 epicgame 于 2009-6-26 11:53 发表


可笑啊可笑,如果虚拟内存的效率不如内存,又如何解决内存不足的问题?
试问一个慢速的设备如何能替代一个高速设备~
因为内存里面保存的数据并不是每时每刻都需要被调用。有的可能每秒上万次, 有的可能几小时一次。

TOP

引用:
原帖由 测试一下 于 2009-6-26 11:55 发表


彻底败了...

果然人不要脸天下无敌...
还欠骂啊?
欠骂就回答下面的问题:
电子手表现问世还是硬盘现问世?
电子手表里面有内存吗?
那“为了解决硬盘与高速缓存之间速率的问题,才设计出内存。”这句话有没有问题?

TOP

引用:
原帖由 村上春樹 于 2009-6-26 11:58 发表


既然是幾小時一次,那為何還要放在硬盤裡當作虛擬內存
哈哈.
读取硬盘上100MB的程序,可能运算出一个1MB的结果, 这个结果可能十几分钟才要被调用一次。
假如内存中有100个这样的1MB的结果,是保持这100个1MB在内存? 浪费100MB的空间。 丢掉再次参上就要读取硬盘上100*100MB的数据再计算产生。程序员可以以为这100个1MB的数据都在内存中。然而,如果有虚拟内存,那么这些数据将会被系统临时存放在硬盘。需要的时候系统会调用, 这样,既不浪费内存空间, 也不浪费重新读取程序并重新计算的时间。

TOP

引用:
原帖由 村上春樹 于 2009-6-26 12:04 发表
有這麼SB的程序開發員?

自己預測讀取到內存的資料中有些是會幾小時才用到一次的我就先讀進去然後放在虛擬內存裡面

現在玩家還在打第一關,就先把最後一關的音樂先丟到內存了
.
.
.現在玩家還在城鎮里,就先 ...
数据种类太多, 请不要用你仅有的知识去衡量。

TOP

引用:
原帖由 测试一下 于 2009-6-26 12:05 发表


这是何等的下限啊...

继续看你炫耀智商...
这回变聪明了, 知道继续玩你那低级的把戏。 否则骂死你。

TOP

引用:
原帖由 喋血战狼 于 2009-6-26 12:14 发表

  可能万岁
    估计无敌
      推测秒杀
        大概血洗
这个  你 可能 估计 大概 就把大家的数据和论点全秒了啊

  100MB可能运算出1MB  这1MB可能十几分钟才用一次
  于是 FF神就可能赢了
请你不要将别人的习惯用语当成你的理由。

TOP

引用:
原帖由 喋血战狼 于 2009-6-26 12:25 发表
更何况,我需要那个1MB的数据怎么办??硬盘读取??
我靠   回到起点,  有时间等你读出来么????
一般这种保存运算结果的东西不会乱丢,至少该是丢堆栈段吧  或者是把保存结果的地址放入堆栈段
对于一个先进 ...
你可以不去读这1MB结果, 而去读硬盘上100MB的程序,再来计算这个结果。

堆栈不是用来保存这个的。
把地址放入堆栈更是可笑, 把地址保存了, 然后数据丢掉? 哪还要地址干嘛,找空气?
为什么要暂时挪出去,当然是在内存不够的情况下啊, 你内存够又不要你挪。

TOP

引用:
原帖由 村上春樹 于 2009-6-26 12:25 发表


真是太可怕了

下一個一分鐘又要更新之前計算過的東西,硬盤又得更新了

所有可能的東西都得三不五時存儲,而且是用低速的硬盤在做暫存...這效率阿。

真正需要的時候一讀,發現不在硬盤裡面,是要重新算一 ...
在内存一定的情况下, 将不常用的东西用低效率的方法保存, 给频率高的东西腾出内存空间,这么说你明白了吗? 台妓系高材生。

TOP

引用:
原帖由 cc0128 于 2009-6-26 12:33 发表

请看C++入门。了解下指针的作用。
你C++学到脑残了吧。
你没看他说, 这东西一般不会乱丢(也就是说不会在硬盘上保存副本,而释放内存里的原始数据),起码也会压堆栈,或者将数据地址压堆栈(那就是说,将数据地址压入堆栈, 数据删除,也不做备份)。

TOP

引用:
原帖由 村上春樹 于 2009-6-26 12:34 发表


讀100mb的程序啊

以硬盤一秒10~20MB平均速,光這樣讀取就要4秒以上

每秒30FPS的 需求呢?

光等一個計算結果就要三四秒,還沒考慮應用程式中各項交互關聯的依存性呢

AI計算後的資料沒出來,ANIMAION要 ...
又来30FPS了, 算了, 你智商太低,不便交流, 本来我也不想看繁体。

TOP

引用:
原帖由 喋血战狼 于 2009-6-26 12:38 发表

   红字部分吓的我魂飞魄散。能找到地址,居然还找不到数据。
     打个比方,我去我朋友家。只要他家的地址,沿路去找就是了。
     你总不能说,要朋友先把家里的东西都给你  然后才可以吧
    更何况,一个十 ...
看你敏而好学, 我就举个例子给你。
你不是学过单片机吗, 知道单片机有串口吧(其实用PC串口也是一个意思)。
你把每次在串口中读到的数据放在一个 unsigned char temp_sbuf 中, 然后你准备读100个串口数据, 用个数组保存(指针数组)。 每来一个串口数据, 你就将其放入temp_sbuf, 然后将temp_sbuf的地址保存到你的数组中。试问你能通过这个数组找回这100个串口数据吗?

TOP

引用:
原帖由 喋血战狼 于 2009-6-26 12:47 发表

   用缓存区来保存结果  我太欢乐了   原来游戏开发人员这样玩的
    我总算笑翻了
    我就继续说吧  从缓冲区读出的数据,会放到数据段分配的指针的位置,然后依次存储。然后返回这个数组的首指针如堆栈段
   ...
一般这种保存运算结果的东西不会乱丢,至少该是丢堆栈段吧  或者是把保存结果的地址放入堆栈段
对于一个先进后出的堆栈段  谁能判定什么时候需要提前读取????
哪你这句话什么意思? 既然你知道要保持原始数据,那就肯定要占用内存,也就是说那些不常用的也要保存。

TOP

发新话题
     
官方公众号及微博