Unlike simultaneous multithreading in modern superscalar architectures, it generally does not allow execution of multiple instructions in one cycle.
[citation needed] One of the earliest examples of a barrel processor was the I/O processing system in the CDC 6000 series supercomputers.
[3][4] The MTA architecture has seen continued development in successive products, such as the Cray Urika-GD, originally introduced in 2012 (as the YarcData uRiKA) and targeted at data-mining applications.
[5] Barrel processors are also found in embedded systems, where they are particularly useful for their deterministic real-time thread performance.
This single-chip microcontroller contains two ostensibly independent CPUs that share instructions, memory, and most IO devices.
A single-tasking processor spends a lot of time idle, not doing anything useful whenever a cache miss or pipeline stall occurs.