I would have assumed, since priority is an integer, the processors would be run in numerical order, rather than just "all the low ones" then "all the high ones".  I don't think you are sorting anywhere.