Right now, a GPU is an NPU. Does anyone how an NPU would differ from a graphics card?
Right now, a GPU is an NPU. Does anyone how an NPU would differ from a graphics card?
Compare NVIDIA to Groq TSP (Tensor Streaming Processor)
This is how an AI chip should be designed, you write the neural net compiler first, then design the chip. These guys have combined a number of smart ideas in their product: synchronous operation makes memory and network operations simpler to plan and optimise; all software defined memory access, no caches; a simple set of primitive operations that can express every model architecture - so they can simply make it pytorch compatible, no need to write kernels, no need to have 100 versions of 2D conv, for all sizes and shapes.
https://groq.com/groq-tensor-streaming-processor-architectur...
Groq recently demonstrated 240T/s for LLaMA-2 70B. Probably world record, the next best I know is 40T/s at labs.perplexity.ai
But NPUs (like Googles NPU) are systolic arrays designed for 16x16 or even 256x256 float16 or even int8 matrix multiplications instead.
-------
NVidia builds larger matrix multiplications out of the 4x4 float16 base that a SM is designed for. After all, a 8x8 matrix multiplication is just four of the smaller 4x4 matrix multiplications.
Isn't it 8 of them? That's why you can't go the other way around and use your 8x8 multiplier to efficiently multiply 4x4s in parallel.
probably intel is working on the same. I assume the next generation of mobile chips (laptop or phone) will all include special LLM processors.