disclaim("", 16384, 1) = 0
disclaim("", 32768, 1) = 0
disclaim("", 184320, 1) = 0
disclaim("", 8192, 1) = 0
disclaim("", 16384, 1) = 0
disclaim("", 32768, 1) = 0
disclaim("", 184320, 1) = 0
disclaim("", 8192, 1) = 0
disclaim("", 16384, 1) = 0
disclaim("", 32768, 1) = 0
disclaim("", 184320, 1) = 0
disclaim("", 8192, 1) = 0
这里的disclaim是不是和系统释放内存相关? 在什么样的情况下会出现disclaim的调用?
因为在另外一台机器上,运行同样的程序,没有出现这样的情况.
另外,我注意到程序里大量进行new,delete操作的时候,disclaim出现频率很高,此时的程序运行很缓慢.
请高手指点!
8 个解决方案
#1
猜测一下
disclaim 是不是析构?
disclaim 是不是析构?
#2
哦 应该是delete引起的
#3
justkk能说得详细一点么? 谢谢
#4
我也不确定
与你的设想一样,大量的delete操作表现为disclaim调用
记得有个环境变量,关于内存分配的,针对频繁的内存分配释放的场景,把它设置为pool好像能改善性能
忘记具体名字了
与你的设想一样,大量的delete操作表现为disclaim调用
记得有个环境变量,关于内存分配的,针对频繁的内存分配释放的场景,把它设置为pool好像能改善性能
忘记具体名字了
#5
试试
export MALLOCOPTIONS=pool
然后再运行你的程序,看性能是否有改善
export MALLOCOPTIONS=pool
然后再运行你的程序,看性能是否有改善
#6
谢谢,但是我想解决这个问题,不希望有大量的disclaim产生,不晓得从何处入手
#7
#8
justkk,非常感谢你的回帖.
问题基本上搞明白了,如果将环境变量MALLOCOPTIONS设为disclaim,系统将在free内存的时候,调用disclaim,但是这样做的坏处是降低系统性能.
问题基本上搞明白了,如果将环境变量MALLOCOPTIONS设为disclaim,系统将在free内存的时候,调用disclaim,但是这样做的坏处是降低系统性能.
#1
猜测一下
disclaim 是不是析构?
disclaim 是不是析构?
#2
哦 应该是delete引起的
#3
justkk能说得详细一点么? 谢谢
#4
我也不确定
与你的设想一样,大量的delete操作表现为disclaim调用
记得有个环境变量,关于内存分配的,针对频繁的内存分配释放的场景,把它设置为pool好像能改善性能
忘记具体名字了
与你的设想一样,大量的delete操作表现为disclaim调用
记得有个环境变量,关于内存分配的,针对频繁的内存分配释放的场景,把它设置为pool好像能改善性能
忘记具体名字了
#5
试试
export MALLOCOPTIONS=pool
然后再运行你的程序,看性能是否有改善
export MALLOCOPTIONS=pool
然后再运行你的程序,看性能是否有改善
#6
谢谢,但是我想解决这个问题,不希望有大量的disclaim产生,不晓得从何处入手
#7
#8
justkk,非常感谢你的回帖.
问题基本上搞明白了,如果将环境变量MALLOCOPTIONS设为disclaim,系统将在free内存的时候,调用disclaim,但是这样做的坏处是降低系统性能.
问题基本上搞明白了,如果将环境变量MALLOCOPTIONS设为disclaim,系统将在free内存的时候,调用disclaim,但是这样做的坏处是降低系统性能.