В ядре Linux это есть в arch / powerpc / include / asm / processor.h
/* Macros for adjusting thread priority (hardware multi-threading) */
#define HMT_very_low() asm volatile("or 31,31,31 # very low priority")
#define HMT_low() asm volatile("or 1,1,1 # low priority")
#define HMT_medium_low() asm volatile("or 6,6,6 # medium low priority")
#define HMT_medium() asm volatile("or 2,2,2 # medium priority")
#define HMT_medium_high() asm volatile("or 5,5,5 # medium high priority")
#define HMT_high() asm volatile("or 3,3,3 # high priority")
Я не знаком с x86 PAUSE, но звучит как "или 31,31,31", что вам нужно.
На каком процессоре powerpc вы это делаете? Для SMT это должно быть POWER5, 6 или 7?