免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: wuxb45
打印 上一主题 下一主题

[C] 很大的int数组值初始化为其index,如何做比较快呢? [复制链接]

论坛徽章:
0
31 [报告]
发表于 2010-07-07 19:50 |只看该作者
你的文件映射解决方案把一切都建立在假设上(只读一遍,不马上用,磁盘访问别的数据时会提前cache住它)。即便如此,也改变不了如果硬盘100MB/s的IO速度,读1GB就总共需要10.24秒的事实。而无论你是一起读还是分开读,或者是延迟读,按需读。

而读写1GB内存,随便一个杂牌的DDR2 800内存条要是0.5秒之内搞不定,它就不用叫内存了。

论坛徽章:
2
技术图书徽章
日期:2013-09-04 15:21:51酉鸡
日期:2013-11-01 21:20:20
32 [报告]
发表于 2010-07-08 00:56 |只看该作者
如果程序无法忍受赋值初始化的时间,还是通过文件方式初始化好一些。文件不仅可以放在磁盘中,可以放在电子盘中,也是可以放在内存中的(对mfs就是干这个的)。如果经常初始化,舍去一定的内存存储初始化文件,从业务系统结构上,也是可以忍受的。这些事情应该属于系分或者设计干的。

论坛徽章:
5
狮子座
日期:2013-08-20 10:12:24午马
日期:2013-11-23 18:04:102015年辞旧岁徽章
日期:2015-03-03 16:54:152015亚冠之德黑兰石油
日期:2015-06-29 18:11:1115-16赛季CBA联赛之新疆
日期:2024-02-21 10:00:53
33 [报告]
发表于 2010-07-08 09:53 |只看该作者
你的文件映射解决方案把一切都建立在假设上(只读一遍,不马上用,磁盘访问别的数据时会提前cache住它)。即 ...
没本 发表于 2010-07-07 19:50



    是吗?你做过测试吗?写一个代码来看看。

如果需要立即使用,我在2L就给出了一个方案了。

论坛徽章:
0
34 [报告]
发表于 2010-07-08 10:31 |只看该作者
回复 32# mirnshi


    没看出你的观点和我9楼的发言有什么大的分歧。我只针对那些认为读磁盘文件比直接初始化内存还快的人(见我15楼回贴)。RAM盘自然不在此列。

论坛徽章:
0
35 [报告]
发表于 2010-07-08 10:34 |只看该作者
是吗?你做过测试吗?写一个代码来看看。

如果需要立即使用,我在2L就给出了一个方案了。
starwing83 发表于 2010-07-08 09:53



    磁盘是低速IO,内存是高速IO,明摆着的事实。它们测试更是随便哪款电脑测评软件都会进行的。想看测试直接上泡泡网、硬派网之类的网站,测试一大堆。

论坛徽章:
5
狮子座
日期:2013-08-20 10:12:24午马
日期:2013-11-23 18:04:102015年辞旧岁徽章
日期:2015-03-03 16:54:152015亚冠之德黑兰石油
日期:2015-06-29 18:11:1115-16赛季CBA联赛之新疆
日期:2024-02-21 10:00:53
36 [报告]
发表于 2010-07-08 11:14 |只看该作者
请注意我说话的条件可以吗?你也成承认了,我的解决方案是有假设的。那么你又为什么要回避这个假设呢?


另外,你还是没有评论我2L的方案。

论坛徽章:
0
37 [报告]
发表于 2010-07-08 12:15 |只看该作者
分歧了??笑死我了。“没本”兄弟貌似曾经在哪里见过??

论坛徽章:
0
38 [报告]
发表于 2010-07-08 13:21 |只看该作者
2楼的方案使用起来难道不麻烦么?每次访问不仅限制了程序的写法,还要if分支判断,频繁访问会拖慢了整个程序。

论坛徽章:
0
39 [报告]
发表于 2010-07-08 13:25 |只看该作者
回复 37# ah13k


    我最近主要在这里活动,偶尔在别的技术论坛也有发帖。老兄还在那里见过我么?

论坛徽章:
2
戌狗
日期:2013-11-06 17:35:36寅虎
日期:2014-10-20 23:12:29
40 [报告]
发表于 2010-07-08 14:40 |只看该作者
其实我觉得,如果不是频繁执行初始化的话,己就用for循环加个寄存器变量,估计就行了。 其他的情况,两位大牛都说了。其实你们说的是假设的条件不一样都是很好的方案,学习了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP