Analyzing TiKV Memory Usage with jeprof

Note:
This topic has been translated from a Chinese forum by GPT and might contain errors.

Original topic: jeprof分析tikv内存使用

| username: 逍遥_猫

Version v6.5.6
Why is everyone getting the process name

Why is mine like this

| username: TiDBer_jYQINSnf | Original post link

There are no symbol files, right?

| username: tidb菜鸟一只 | Original post link

Which version of jeprof?

| username: 逍遥_猫 | Original post link

jemalloc-5.3.0

| username: 逍遥_猫 | Original post link

Are the symbol files from jeprof?

| username: zhaokede | Original post link

0x and the like, it looks like a hexadecimal number.

| username: TiDBer_jYQINSnf | Original post link

Generated during compilation.

| username: 逍遥_猫 | Original post link

I looked through some Baidu articles and TiKV 内存使用率高,使用 jemalloc 简单分析体验 - 墨天轮 from Enmo, but didn’t see any special settings during compilation. Could you please advise on how to set up this symbol file?

| username: 友利奈绪 | Original post link

Squatting for the best reply.

| username: TiDBer_jYQINSnf | Original post link

These symbols are all from jemalloc. Check if your jeprof was compiled with it and if the symbol files are correctly located.

| username: 逍遥_猫 | Original post link

Boss, how do you check this?

| username: 小于同学 | Original post link

How is it configured?

| username: Hacker_QGgM2nks | Original post link

I really don’t know this, waiting for the experts to answer.

| username: Hacker_1T6UxXsE | Original post link

jeprof xx/bin --show_bytes …
You must provide the binary program file as a parameter, such as main.out, /target/debug/main, /target/release/main, etc., so that it can find the function names. If you don’t provide it, it can still run, but the output will be pointer addresses like the ones the original poster mentioned.