1. A parallel for processing a plurality of different processing instruction streams in parallel, the parallel processor comprising: a plurality of data processing units, wherein the plurality of data processing units are coupled together sequentially in a string formation; a plurality of SIMD (Single Instruction Multiple Data) controllers, wherein each SIMD controller is configured for handling an individual processing task with a subgroup of actively connected data processing units selected from the plurality of data processing units, and each SIMD controller comprises: a SIMD instruction fetch unit configured for fetching instructions from a memory external to the processor, and a SIMD decode unit configured for: decoding the instructions fetched by the SIMD instruction fetch unit, enabling data processing units selected from the plurality of data processing units in accordance with the instructions such that a size of a subgroup of data processing units to which each SIMD controller is actively connected can be varied dynamically under control of the instructions, thereby permitting each SIMD controller to be actively connected to a different number of data processing units for processing tasks, and forwarding micro-orders generated from the instructions to enable the selected processing units, and the instructions of the instructions streams define the sizes of the subgroups of data processing units and the order in which the subgroups of data processing units are to be configured from one end of the string formation of the plurality of processing units to an opposite end of the string formation; a plurality of data movement controllers, each data movement controller of the plurality of data movement controllers being connectable to a corresponding selected subgroup of actively connected data processing units, under control of the processing instruction streams; and wherein the processing units to be used for a given task are defined in a fetch map, which indicates which of all the available data processing units are to be active in the current task to be executed, and each one of the plurality of SIMD controllers further comprises a fetch map store for storing a corresponding fetch map.