123456789101112131415161718192021222324 |
- #!/bin/sh
- #use last CPU for host. Why not the first?
- #many devices tend to use cpu0 by default so
- #it tends to be busier
- HOST_AFFINITY=$(cd /dev/cpu; ls|grep -v '[a-z]'|sort -n|tail -1)
- #run command on all cpus
- for cpu in $(cd /dev/cpu; ls|grep -v '[a-z]'|sort -n);
- do
- #Don't run guest and host on same CPU
- #It actually works ok if using signalling
- if
- (echo "$@" | grep -e "--sleep" > /dev/null) || \
- test $HOST_AFFINITY '!=' $cpu
- then
- echo "GUEST AFFINITY $cpu"
- "$@" --host-affinity $HOST_AFFINITY --guest-affinity $cpu
- fi
- done
- echo "NO GUEST AFFINITY"
- "$@" --host-affinity $HOST_AFFINITY
- echo "NO AFFINITY"
- "$@"
|