Methods, signals, devices and systems are provided for matching tasks with
processing units. A region within a multi-faceted task space is allocated
to a processing unit. A point in the multi-faceted task space is assigned
to a task. The task is then associated with the processing unit if the
region allocated to the processing unit is close to the point assigned to
the task. The region allocated to a processing unit may be changed. If no
assigned point for a task is sufficiently close to any allocated
processing unit region, the task is suspended. Overlapping regions may be
assigned to different processing units. In some implementations, the
union of the allocated regions covers the task space, while in others it
does not. Regions may also be allocated to wait conditions and one or
more dimensions of a region may be allocated to conventional processor
allocators.