1. A method of operating a data processing system, comprising: receiving, from a compiler, a plurality of work items at a plurality of priority queues, wherein each of the plurality of priority queues is assigned a priority level; associating a first portion of the plurality of work items received at a first priority queue of the plurality of priority queues with at least a first bit mask, wherein the at least the first bit mask is associated with the first priority queue; associating a second portion of the plurality of work items received at a second priority queue of the plurality of priority queues with at least a second bit mask, wherein the at least the second bit mask is associated with the second priority queue; routing, based on the at least the first bit mask, the first portion of the plurality of work items received at the first priority queue of the plurality of priority queues to a first plurality of processor cores; routing, based on the at least the second bit mask, the second portion of the plurality of work items received at the second priority queue of the plurality of priority queues to a second plurality of processor cores; processing the first portion of the plurality of work items on the first plurality of processor cores; and processing the second portion of the plurality of work items on the second plurality of processor cores.