csetshield는 보호된 코어에서 작업을 수행할 수 없습니다.

csetshield는 보호된 코어에서 작업을 수행할 수 없습니다.

x86-64(4코어) 및 Ubuntu 22.04의 차폐 코어에서 벤치마크를 실행하려고 합니다. 쉴드 코어 3이 정상적으로 실행됩니다.

paul@cube-ubuntu-22:~/simd-agner/build$ sudo cset shield -c 3
cset: --> activating shielding:
cset: moving 714 tasks from root into system cpuset...
[==================================================]%
cset: "system" cpuset of CPUSPEC(0-2) with 714 tasks running
cset: "user" cpuset of CPUSPEC(3) with 0 tasks running

그러나 벤치마크를 실행하려고 하면 실패합니다.

paul@cube-ubuntu-22:~/simd-agner/build$ cset shield -e ./bench-native-icx 
cset: **> 1 tasks are not movable, impossible to move
cset: --> last message, executed args into cpuset "/user", new pid is: 10578

그리고 벤치마크는 코어 3 대신 코어 1에서 실행됩니다. 다음을 사용할 때 문제가 없습니다 taskset.

taskset -c 3 ./bench-native-icx

예상대로 코어 3에서 벤치마크를 실행합니다. watch grep \"cpu MHz\" /proc/cpuinfo어떤 코어가 사용되고 있는지 확인하기 위해 실행 중인 다른 터미널을 보고 있습니다 . 이것을 분명히 보여줍니다.

관련 정보