+function pick_random_cpuid ()
+{
+ local cpuid=0
+
+ # On Linux pick a random available cpuid from sysfs
+ if [ -d "/sys/devices/system/cpu" ]; then
+ local cpuids=()
+
+ for i in /sys/devices/system/cpu/cpu[0-9]*; do
+ cpuids+=("${i#/sys/devices/system/cpu/cpu}")
+ done
+
+ cpuid=${cpuids[ $RANDOM % ${#cpuids[@]} ]}
+ else
+ cpuid=$((RANDOM % NUM_CPUS))
+ fi
+
+ echo $cpuid
+}
+