path: linux_6.19.6-1/Documentation/translations/zh_CN/admin-guide/mm/damon/start.rst $ git clone https://github.com/sjp38/masim $ cd masim; make; ./masim ./configs/zigzag.cfg & $ sudo damo record -o damon.data $(pidof masim) 命令的前两行下载了一个人工内存访问生成器程序并在后台运行。生成器将重复地逐一访问两个 path: linux_6.19.6-1/Documentation/translations/zh_CN/mm/hwpoison.rst page-types -p `pidof init` --hwpoison # shall do nothing page-types -p `pidof usemem` --hwpoison # poison its pages corrupt-filter-flags-mask, corrupt-filter-flags-value path: linux_6.19.6-1/Documentation/translations/zh_CN/mm/hwpoison.rst echo $memcg_ino > /debug/hwpoison/corrupt-filter-memcg page-types -p `pidof init` --hwpoison # shall do nothing page-types -p `pidof usemem` --hwpoison # poison its pages path: linux_6.19.6-1/Documentation/admin-guide/mm/damon/usage.rst # echo vaddr > kdamonds/0/contexts/0/operations # echo 1 > kdamonds/0/contexts/0/targets/nr_targets # echo $(pidof ) > kdamonds/0/contexts/0/targets/0/pid_target # echo on > kdamonds/0/state path: linux_6.19.6-1/Documentation/admin-guide/mm/damon/usage.rst # perf record -e damon:damon_aggregated & # sleep 5 # kill 9 $(pidof perf) # echo off > kdamonds/0/state # perf script path: linux_6.19.6-1/Documentation/translations/zh_TW/admin-guide/mm/damon/start.rst $ git clone https://github.com/sjp38/masim $ cd masim; make; ./masim ./configs/zigzag.cfg & $ sudo damo record -o damon.data $(pidof masim) 命令的前兩行下載了一個人工內存訪問生成器程序並在後臺運行。生成器將重複地逐一訪問兩個 path: linux_6.19.6-1/tools/testing/selftests/bpf/test_xdp_features.sh ip link del v1 2> /dev/null ip netns del ${NS} 2> /dev/null [ "$(pidof xdp_features)" = "" ] || kill $(pidof xdp_features) 2> /dev/null } path: linux_6.19.6-1/tools/testing/selftests/net/fin_ack_lat.sh cleanup() { kill $(pidof fin_ack_lat) rm -f $tmpfile } path: linux_6.19.6-1/Documentation/mm/hwpoison.rst echo $memcg_ino > /debug/hwpoison/corrupt-filter-memcg page-types -p `pidof init` --hwpoison # shall do nothing page-types -p `pidof usemem` --hwpoison # poison its pages path: linux_6.19.6-1/Documentation/mm/hwpoison.rst page-types -p `pidof init` --hwpoison # shall do nothing page-types -p `pidof usemem` --hwpoison # poison its pages corrupt-filter-flags-mask, corrupt-filter-flags-value path: linux_6.19.6-1/Documentation/admin-guide/mm/damon/start.rst $ ./masim ./configs/zigzag.cfg & $ sudo damo record -o damon.data $(pidof masim) The line of the commands run the artificial memory access path: linux_6.19.6-1/Documentation/trace/tracepoint-analysis.rst -e kmem:mm_page_alloc -e kmem:mm_page_free \ -e kmem:mm_page_free_batched \ -p `pidof X` This was interrupted after a few seconds and path: linux_6.19.6-1/tools/testing/selftests/amd-pstate/tbench.sh $PERF stat -a --per-socket -I 1000 -e power/energy-pkg/ tbench -t $TIME_LIMIT $PROCESS_NUM > $OUTFILE_TBENCH-perf-$1-$2.log 2>&1 pid=`pidof tbench_srv` kill $pid path: linux_6.19.6-1/Documentation/translations/zh_CN/admin-guide/mm/damon/usage.rst # perf record -e damon:damon_aggregated & # sleep 5 # kill 9 $(pidof perf) # echo off > monitor_on_DEPRECATED # perf script path: linux_6.19.6-1/Documentation/translations/zh_CN/admin-guide/mm/damon/usage.rst # echo vaddr > kdamonds/0/contexts/0/operations # echo 1 > kdamonds/0/contexts/0/targets/nr_targets # echo $(pidof ) > kdamonds/0/contexts/0/targets/0/pid_target # echo on > kdamonds/0/state path: linux_6.19.6-1/Documentation/translations/zh_TW/admin-guide/mm/damon/usage.rst # echo vaddr > kdamonds/0/contexts/0/operations # echo 1 > kdamonds/0/contexts/0/targets/nr_targets # echo $(pidof ) > kdamonds/0/contexts/0/targets/0/pid_target # echo on > kdamonds/0/state path: linux_6.19.6-1/Documentation/translations/zh_TW/admin-guide/mm/damon/usage.rst # perf record -e damon:damon_aggregated & # sleep 5 # kill 9 $(pidof perf) # echo off > monitor_on_DEPRECATED # perf script