A hyperprocessor includes a control processor controlling tasks executed
by a plurality of processor cores, each of which may include multiple
execution units, or special hardware units. The control processor
schedules tasks according to control threads for the tasks created during
compilation and comprising a hardware context including register files, a
program counter and status bits for the respective task. The tasks are
dispatched to the processor cores or special hardware units for parallel,
sequential, out-of-order or speculative execution. A universal register
file contains data to be operated on by the task, and an interconnect
couples at least the processor cores or special hardware units to each
other and to the universal register file, allowing each node to
communicate with any other node.