龙芯开源社区

 找回密码
 注册新用户(newuser)
查看: 3545|回复: 8

我对64位软件开发内存使用量提升的认识

[复制链接]
发表于 2012-11-6 13:34:40 | 显示全部楼层 |阅读模式
很多64位软件运行比32位软件要消耗更多的内存.
我认为其中指针和碎内存用的过多造成的.
比如定义一个链表,这是所有指针从32字节编程64字节自然更消耗内存.而这个链表内节点如果本身存数的数据很少,而且节点数量很多,这个消费比就很浪费.
如果要让节约内存,就必须尽量减少指针的使用
其中一个简单的办法就是使用相对大块的内存,然后利用算法来定位地址.

请问各位有什么看法
发表于 2012-11-6 14:08:36 | 显示全部楼层
以史为鉴 可以知兴替 当初是如何从16位提升到32位的呢
 楼主| 发表于 2012-11-6 22:17:16 | 显示全部楼层
以史为鉴 可以知兴替 当初是如何从16位提升到32位的呢
water 发表于 2012-11-6 14:08



    当初16位的时候内存是安K计算的,现在是按G计算的.但是现在看内存发展速度明显减缓了.
发表于 2012-11-7 07:50:53 | 显示全部楼层
超过4G就行
发表于 2012-11-7 08:45:18 | 显示全部楼层
你用的是同时兼容32和64的OS吗?如果纯64的话不会占很多内存的,并且稳定性比32位的好很多。
 楼主| 发表于 2012-11-8 00:09:42 | 显示全部楼层
你用的是同时兼容32和64的OS吗?如果纯64的话不会占很多内存的,并且稳定性比32位的好很多。
502782090 发表于 2012-11-7 08:45



    各种64位系统都在用,最近写了一个程序专门测试内存消耗,如果系统中指针很多,64位还是浪费不少内存的。
发表于 2012-11-11 17:58:58 | 显示全部楼层
实际内存消耗量确实会增大,但不会大的那么离谱需要拿出来单独说事吧?

还是说想在 16k 内存内存的设备里面讨论用多少位合适?
现在内存发展速度我觉得反而是现在的软件对于内存的需求量和 32 位环境下面区别不是太大,内存没有继续大幅增加的动力。

不过话说在 64 位环境用 32、16 位指针我觉得还是有用处的。不过实际实现难度估计不低,毕竟统一的长度和变长度会增加程序的识别要求。
 楼主| 发表于 2012-11-11 19:07:14 | 显示全部楼层
实际内存消耗量确实会增大,但不会大的那么离谱需要拿出来单独说事吧?

还是说想在 16k 内存内存的设备里 ...
jiangtao9999 发表于 2012-11-11 17:58


大多数应用却是没事,如果是开发大并发量应用还是要注意。

    我在实际开发中已经碰到类似问题了,在一个应用中需要处理大量零碎信息,统计了一下每个数据节点的指针很多,占用了32%,如果64位的号,内存量就大了很多。

我是想说,程序员要知道64位以后内存消耗的变换,以及在一些特殊场景采取一些有针对性的算法来节约内存,更好的发挥性能。
发表于 2012-11-14 17:19:59 | 显示全部楼层
这种大量零碎信息处理,还是考虑数据存取的优化算法吧……

本版积分规则

小黑屋|手机版|Archiver|Lemote Inc.  

GMT+8, 2019-9-22 07:35 , Processed in 0.194062 second(s), 18 queries .

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