4 ms·
Commentary? What's the difference between a GPU and a vector processor? Is vector processors being open-source a desirable quality (compared to general attracti
by dmos62 7y ago
Commentary? What's the difference between a GPU and a vector processor? Is vector processors being open-source a desirable quality (compared to general attractiveness of open-source)?
- wolf550e 7y agoI think they mean something like SSE/AVX, but with something like ARM Scalable Vector Extension (code that works on registers with 128 to 2048 bit size, unknown at compile time).
- theonlyklas 7y agoFrom: https://theincredibleholk.wordpress.com/2012/10/26/are-gpus-just-vector-processors/ https://theincredibleholk.wordpress.com/2012/10/26/are-gpus-... > Under this model, each SM on an NIVIDA GPU corresponds to a more traditional CPU core. These SMs would contain some number of 32-wide vector registers. It seems that CUDA exposes operations on vector registers as a warp. They appear to be 32 threads because each instruction on 32 lanes at once, while the threads must proceed in lock step because they are actually a single stream of instructions. >Is vector processors being open-source a desirable quality (compared to general attractiveness of open-source)? Absolutely. Imagine an initiative to create a standardized open-source GPU for Linux? This vector processor could provide open source silicon IP to help build it. This chip is just another step towards fully open-source systems.
- rbanffy 7y ago> Imagine an initiative to create a standardized open-source GPU for Linux? A CPU that can do number crunching like a GPU as well as general purpose computing would be amazing.
- nickpsecurity 7y agoThe Web really needs a good resource on answering this question. I didn't see one in quick search. These links each have pieces of the answer: https://www.inf.ed.ac.uk/teaching/courses/pa/Notes/lecture11-vector.pdf https://www.inf.ed.ac.uk/teaching/courses/pa/Notes/lecture11... https://stackoverflow.com/questions/49098533/vpu-vs-fpu-vs-gpu-vs-alu https://stackoverflow.com/questions/49098533/vpu-vs-fpu-vs-g... https://www.quora.com/What-is-the-main-difference-between-SIMD-and-GPU https://www.quora.com/What-is-the-main-difference-between-SI...
- holy_city 7y agoOpen hardware is less important than open software but that doesn't mean it isn't desirable. But anyway, vector v gpu: Think AVX2 instead of GPU. You extend support for MIMD architecture will all the benefits of Out-of-Order execution and deep pipelines, but add data-level parallelism through SIMD or "vector" operations. This can allow significant performance gains for fundamentally sequential operation that still needs to perform linear algebra operation. Furthermore a lot of the speedup relies on unrolling sequential math operations and manually breaking data dependencies in the code, which has diminishing returns for larger vector/matrix dimensions (you'd spend more time loading/storing into GPU registers even if you had no bandwidth concerns over PCIe). Vector processors/architectures are commonly found in special purpose architectures called Digital Signal Processors (DSPs), which are important for a variety of applications like automotive, aerospace, controls, audio, IoT, or anywhere with real-time data acquisition. FPGAs are also popular for this task. However a lot of those devices are pretty cheap (or really expensive, not a lot of middle ground due to economies of scale) and either underclocked or overspec'd - meaning you either pay out the ass for an overkill processor or pay out the ass for a complicated systems architecture to use multiple chips on the same board (with proprietary tooling, shout-out to ADI) Cheap(ish), low(ish) power, high(ish) clock, CPUs with 256 width vector operations are highly attractive in a number of markets. The fact that its open source makes it even more attractive, if you can afford to do a run of them.
- erik 7y agoIn order to render current games / 3d with reasonable performance you need dedicated texturing hardware. Intel's Larrabee had it even though it never shipped as a graphics card. And early plans for the PS3 involved adding texture units to a Cell cpu, but Sony went with a Nvidia gpu instead.
- wyldfire 7y agoSampling/texturing helps but I can't help thinking that the software stack is the critical factor. You might make a great new open ecosystem but if I can't Port my OGL/OCL/etc benchmark to your hardware easily, I'm probably not going to waste my time.
- erik 7y agoApparently this was the big thing that held Larrabee back as a GPU. The hardware was capable, but they never got their drivers to the point where they could do a good job with existing OpenGL, Direct3D, etc. code.
- wyldfire 7y agoAnd didn't ever offer OCL IIRC.
- TomVDB 7y agoIs there any strong evidence of the claim that Larrabee HW had the potential of being a capable GPU, and that it was just a SW issue? Despite being increasingly programmable, GPUs still have very fine-tuned hardware for graphics, and this goes deeper than just adding some texture mapping units here or there. A good example of this is the fact that both Nvidia and AMD keep on adding new modes in HW to streamline graphics primitive processing with varying degrees of success (see mesh shaders and primitive shaders.) To me, this signals that a free-for-all software approach as championed by Larrabee is simply not efficient enough in a competitive environment where GPUs are declared winner or loser based on benchmark differences of just a few percent.