前段时间Linux下用nmon监控程序的运行,发现CPU的使用率很高,系统态Sys的比例很高.程序的速度不是很快,怀疑和上面的原因有关. 分别使用perf record,perf report和top -H -p,pstack分析发现.2种可能性,跳表skiplist和内存大量分配回收时lru回收,都会用到spin lock自旋锁,导致CPU Sys的使用率很高. 最后替换了跳表skiplist,CPU Sys的使用率很高的问题得以解决. perf工具是Linux自带的性能分析工具,常用的命令:…