由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 问个hash函数问题
相关主题
问个程序问题也问个二维数组的函数传递问题
size不固定的struct怎么定义呀?ask a c question
在子函数内开内存,返回主函数指针然后释放空间是不是很糟糕的(转载)关于malloc/free和循环
这个怎么allocate memory?数组定义的时候,分配空间了么?
c的问题(2)初学C,对什么该free一直搞不明白
用数组做参数,在函数内部如何知道数组的size?ask a simple question about int pointer.
又一道面试题,我是不是想多了?free(char *)的问题 (转载)
问个c语言的问题问一个c语言malloc的问题
相关话题的讨论汇总
话题: array话题: malloc话题: hash话题: 1g话题: 函数
进入Programming版参与讨论
1 (共1页)
v*******e
发帖数: 11604
1
开个1G的静态数组,用hash函数来索引。那么是不是用到0.5G后就会性能大大下降啊?
有没有解决办法了?内存大小对我的程序很重要,没办法那样浪费呀。有没有不浪费的
办法?
b*******s
发帖数: 5216
2
mem mapped files

【在 v*******e 的大作中提到】
: 开个1G的静态数组,用hash函数来索引。那么是不是用到0.5G后就会性能大大下降啊?
: 有没有解决办法了?内存大小对我的程序很重要,没办法那样浪费呀。有没有不浪费的
: 办法?

v*******e
发帖数: 11604
3

你这个是文件啊,需要磁盘IO的。我说的是内存里面的数组。

【在 b*******s 的大作中提到】
: mem mapped files
d****n
发帖数: 1637
4
首先,用C,手动回收内存,比jvm强太多了。(如果project 不是很复杂,或者简化计
算部分用C)
建议你用khash.h
https://github.com/attractivechaos/klib/blob/master/khash.h#L245
下载后自己改下malloc 大小,到一定limit时候不让它乘2,比如,
if size_of_array >= 1G {
array = malloc(sizeof(array)+100M)
}else{
array = malloc(sizeof(array)*2)
}
精打细算,缝缝补补还是能过日子的

【在 v*******e 的大作中提到】
: 开个1G的静态数组,用hash函数来索引。那么是不是用到0.5G后就会性能大大下降啊?
: 有没有解决办法了?内存大小对我的程序很重要,没办法那样浪费呀。有没有不浪费的
: 办法?

1 (共1页)
进入Programming版参与讨论
相关主题
问一个c语言malloc的问题c的问题(2)
a=(char **)malloc(12*sizeof(char *)) 是什么意思?用数组做参数,在函数内部如何知道数组的size?
再问一个free()的问题又一道面试题,我是不是想多了?
C里面一个被分配了内存的指针如何知道分配了多少?问个c语言的问题
问个程序问题也问个二维数组的函数传递问题
size不固定的struct怎么定义呀?ask a c question
在子函数内开内存,返回主函数指针然后释放空间是不是很糟糕的(转载)关于malloc/free和循环
这个怎么allocate memory?数组定义的时候,分配空间了么?
相关话题的讨论汇总
话题: array话题: malloc话题: hash话题: 1g话题: 函数