#!/hint/bash system=x86_64 args=( -no-user-config -no-reboot # let the systemd supervisor know we're restarting -machine accel=kvm # RAM: 16 GiB per NUMA node, but leave 1 GiB per node for QEMU itself -m $((30*1024)) -object memory-backend-ram,id=ram0,prealloc=on,size=$((15*1024**3)),host-nodes=0,policy=bind -object memory-backend-ram,id=ram1,prealloc=on,size=$((15*1024**3)),host-nodes=1,policy=bind # CPU: 1 socket / 8 cores-per-node / 2 threads-per-core = total of 16 CPUs # Except that it's AMD, and QEMU thinks all threads are Intel HT, so turn off threads # The distance between the two nodes is '16' -smp sockets=1,cores=16,threads=1,cpus=16 -numa node,nodeid=0,memdev=ram0,cpus=0-7 -numa node,nodeid=1,memdev=ram1,cpus=8-15 -numa dist,src=0,dst=1,val=16 -uuid 4c42bd65-6ad5-456d-8b76-758ecb795e21 -drive media=disk,file=/dev/vg_build64/lv_beefcake_root,format=raw,if=virtio -drive media=disk,file=/dev/vg_build64/lv_beefcake_home,format=raw,if=virtio -drive media=disk,file=/dev/vg_build64/lv_beefcake_data,format=raw,if=virtio -drive media=disk,file=/dev/vg_build64/lv_beefcake_chroots,format=raw,if=virtio #-cdrom /mnt/media/Operating_Systems/unix/Linux-based/Arch-based/Parabola/parabola-2017.05.28-dual.iso -boot menu=on,order=dc -writeconfig /tmp/beefcake.cfg ) numactl=( --membind=0,1 --cpunodebind=0,1 ) for i in {0..15}; do vcpu2cpulist[$i]=$i done