I've looked everywhere and I still can't figure it out. I know of two associations you can make with streams:
- Wrappers for backing data stores meant as an abstraction layer between consumers and suppliers
- Data becoming available with time, not all at once
SIMD stands for Single Instruction, Multiple Data; in the literature the instructions are often said to come from a stream of instructions. This corresponds to the second association.
I don't exactly understand why the Streaming in Streaming SIMD Extensions (or in Streaming Multiprocessor either), however. The instructions are coming from a stream, but can they come from anywhere else? Do we or could we have just SIMD extensions or just multiprocessors?
Tl;dr: can CPU instructions be non-streaming, i.e. not come from a stream?
movntps
) in SSE1 is actually called_mm_stream_ps()
in intrinsics. But I think that name follows from "Streaming SIMD Extensions", moreso than the other way around. 100% agreed on saying it's just marketing and not very meaningful or helpful in understanding what SSE is. – Allocate