Computation in-memory is a promising non-von Neumann approach aiming at completely diminishing the data transfer to and from the memory subsystem. Although a lot of architectures have been proposed, compiler support for such architectures is still lagging behind. In this paper, we close this gap by proposing an end-to-end compilation flow for in-memory computing based on the LLVM compiler infrastructure. Starting from sequential code, our approach automatically detects, optimizes, and offloads kernels suitable for in-memory acceleration. We demonstrate our compiler tool-flow on the PolyBench/C benchmark suite and evaluate the benefits of our proposed in-memory architecture simulated in Gem5 by comparing it with a state-of-the-art von Neuman...
For a large class of scientific computing applications, the continuing growth in physical memory cap...
This paper presents initial work on developing a C compiler for the CoRAM FPGA computing abstraction...
This paper describes a compiler for stream programs that efficiently schedules computational kernels...
Computation in-memory is a promising non-von Neumann approach aiming at completely diminishing the d...
Computation in-memory is a promising non-von Neumann approach aiming at completely diminishing the d...
Despite the success of parallel architectures and domain-specific accelerators in boosting the perfo...
Nonshared-memory parallel computers promise scalable performance for scientific computing needs. Unf...
International audienceThe von Neumann architecture, in which the memory and the computation units ar...
Conference of 2013 IEEE 24th International Conference on Application-Specific Systems, Architectures...
The memory-wall problem is a big challenge that classical Von Neumann-based computer systems face. T...
Before it can achieve wide acceptance,parallel computation must be made significantly easier to prog...
Many hardware and compiler optimisations introduced to speed up single-threaded programs also introd...
General purpose processors and accelerators including system-on-a-chip and graphics processing units...
The von Neumann architecture, in which the memory and the computation units are separated, demands m...
International audienceDue to the everlasting consumer demand for more complex applications, embedded...
For a large class of scientific computing applications, the continuing growth in physical memory cap...
This paper presents initial work on developing a C compiler for the CoRAM FPGA computing abstraction...
This paper describes a compiler for stream programs that efficiently schedules computational kernels...
Computation in-memory is a promising non-von Neumann approach aiming at completely diminishing the d...
Computation in-memory is a promising non-von Neumann approach aiming at completely diminishing the d...
Despite the success of parallel architectures and domain-specific accelerators in boosting the perfo...
Nonshared-memory parallel computers promise scalable performance for scientific computing needs. Unf...
International audienceThe von Neumann architecture, in which the memory and the computation units ar...
Conference of 2013 IEEE 24th International Conference on Application-Specific Systems, Architectures...
The memory-wall problem is a big challenge that classical Von Neumann-based computer systems face. T...
Before it can achieve wide acceptance,parallel computation must be made significantly easier to prog...
Many hardware and compiler optimisations introduced to speed up single-threaded programs also introd...
General purpose processors and accelerators including system-on-a-chip and graphics processing units...
The von Neumann architecture, in which the memory and the computation units are separated, demands m...
International audienceDue to the everlasting consumer demand for more complex applications, embedded...
For a large class of scientific computing applications, the continuing growth in physical memory cap...
This paper presents initial work on developing a C compiler for the CoRAM FPGA computing abstraction...
This paper describes a compiler for stream programs that efficiently schedules computational kernels...