CPUs and GPUs: can we get the best of both worlds?
Speaker(s) : Sylvain Collange (Inria Rennes – Bretagne Atlantique)
GPUs are now established parallel accelerators for high-performance computing applications and machine learning. Part of their success is based on their so-called SIMT execution model. SIMT binds together threads of parallel applications so they perform the same instruction at the same time, in order to execute their instructions on energy-efficient SIMD units. Unfortunately, current GPU architectures lack the flexibility to work with standard instruction sets like x86 or ARM. Their implementation of SIMT requires special instruction sets with control-flow reconvergence annotations, and they seldom support complex control flow like exceptions, context switches and thread migration.
In this talk, I will present how we can generalize the SIMT execution model of GPUs to general-purpose processors and multi-thread applications, and then use it to design new CPU-GPU hybrid cores. These hybrid cores will form the building blocks of heterogeneous architectures, that will combine CPU-like cores and GPU-like cores which all share the same instruction set and programming model. Beside improving programmability, generalized SIMT enables key improvements that were not possible in the traditional SIMD model, such as simultaneous execution of divergent paths or guarantees of fairness. It opens the way for a whole spectrum of new architectures, hybrids of latency-oriented superscalar processors and throughput-oriented SIMT GPUs.
Marc.Mezzarobba (at) nulllip6.fr