测试用例编写
This commit is contained in:
44
README.md
44
README.md
@@ -10,19 +10,41 @@ save() -> 全保存数据集。
|
||||
1. 会出现大量的内存碎片,实现一个内存池,管理内存数据。
|
||||
2. 对比有内存池和没有内存池的性能差异,以及开源内存池 jemalloc 的性能差别。
|
||||
`sudo apt-get install -y libjemalloc-dev`
|
||||
3. 性能测:
|
||||
1. qps 有没有内存池。
|
||||

|
||||
|
||||
2.虚拟内存的占用情况 htop。插入百万条数据集(KV*100w,set 200w del 100w delete 200w set 100w)。
|
||||

|
||||

|
||||

|
||||

|
||||
无内存池: --> time_used=1488789 ms, ops=6000000, qps=4030
|
||||

|
||||
自实现内存池: --> time_used=1439444 ms, ops=6000000, qps=4168
|
||||
测试:
|
||||
|
||||
虚拟内存的占用情况 htop。插入百万条数据集(KV*100w,set 200w del 100w delete 200w set 100w)。
|
||||
|
||||
##### 单条插入
|
||||
未运行状态 VIRT 24.8M
|
||||

|
||||
|
||||
|
||||
|
||||
无内存池: --> time_used=1488789 ms, ops=6000000, qps=4030\
|
||||
VIRT 105M
|
||||

|
||||
|
||||
自实现内存池: --> time_used=1439444 ms, ops=6000000, qps=4168\
|
||||
VIRT 135M
|
||||

|
||||
|
||||

|
||||
jemalloc: time_used=1502797 ms, ops=6000000, qps=3992\
|
||||
VIRT 99M
|
||||
|
||||
##### 批处理
|
||||
一次执行100条。
|
||||
|
||||
无内存池:--> time_used=142913 ms, ops=6000000, qps=41983\
|
||||
VIRT 99M
|
||||
|
||||
自实现内存池: --> time_used=122754 ms, ops=6000000, qps=48878\
|
||||
VIRT 135M
|
||||
|
||||
jemalloc:--> time_used=122206 ms, ops=6000000, qps=49097\
|
||||
VIRT 99M
|
||||
|
||||
性能分析:
|
||||
1. key :
|
||||
1. A_0: mp_alloc (3+8B) -> 16B, malloc (3B) -> 8B
|
||||
|
||||
Reference in New Issue
Block a user