Use case 3: Interference between GUPS and PARSEC app
Use a PARSEC application to access local memory with 50% CPU utilization, while simultaneously running the GUPS benchmark on the same core to access CXL memory.
Steps:
- Run the PARSEC
raytrace
application with 50% CPU to access local memory
sudo cpulimit -l 50 -- numactl --physcpubind=32 --membind=4 /path/to/parsec/bin/parsecmgmt -a run -p raytrace -i native
- Run the GUPS benchmark on the same core (CPU 32) with 30% CPU to access CXL memory
sudo cpulimit -l 30 -- numactl --membind=4 /home/xiaoli/TPP/colloid-6.3/apps/gups/gups-r 1
- Monitor CXL-induced stalls on core 32 using online estimation mode
python3.8 main.py monitor -app_exist parsec_gups -online esti -savename parsec_gups -path DRd,RFO,HWPF,DWr,LD,ST -pmu default
- Or monitor the variation in queueing degree
python3.8 main.py monitor -app_exist parsec_gups -online analy -savename parsec_gups -path DRd,RFO,HWPF,DWr,LD,ST -pmu default