设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
12
返回列表 发新帖
楼主: 慕月寒霜
打印 上一主题 下一主题

[已经解决] 请问开关太多了游戏会卡吗?

[复制链接]

Lv1.梦旅人

梦石
0
星屑
61
在线时间
24 小时
注册时间
2008-8-5
帖子
1924
11
发表于 2010-9-17 08:48:49 | 只看该作者
默认脚本限制了开关的数组(开关的容器)体积为 5000,所以在二十一世纪的家用机上基本没影响,不过理论上,如果你取消了这个上限,当你的数组超过一定体积,当 CPU 的 L1 Cache,甚至 L2 Cache 都容纳不下可寻址的数组元素时,就会造成引用局部性的降低,减少 Cache 的命中率,降低内存操作的效率,而内存操作效率的降低也会直接导致程序时间效率的损失
实际上只是使用开关就超过 Cache 大小的游戏是很难想象的,以英特尔奔腾早期的 P5 处理器为例,8 KB 的数据 Cache,如果一个开关占用 4 bytes,需要 2000 以上的开关数量才能超过 L1 Cache,想必你还没用到 2000 个吧?
在二十一世纪,数据量低于一万的时候,基本可以考虑为“常量”空间,不必太过担心空间效率的问题。不过尽量紧密分配线性数据是一个好习惯,如果你用了 1 号开关,用了 4999 号开关,而中间有大量闲置开关,这也是一种空间浪费,所谓勿以恶小而为之,保护环境,人人有责
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
23 小时
注册时间
2010-9-12
帖子
45
12
 楼主| 发表于 2010-9-17 13:51:08 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
18 小时
注册时间
2010-8-5
帖子
89
13
发表于 2010-9-17 18:12:16 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-27 11:55

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表