Accelerating database storage engines using Processing In Memory

A notorious phenomenon limiting general-purpose computing today is memory wall. Memory – the hardware used to store the data- is located relatively far from the central processing unit (CPU), so applications spend a lot of time waiting on data to travel from memory to the CPU. New memory hardware, such as the one addressed in this project, aims to address this problem at a fundamental level by adding processing units to the memory itself. This way, the data can be processed right where it lives, instead of being shuffled to and from the CPU. This idea is called Processing In Memory (PIM). The proposed project will experiment with novel PIM hardware with the goal of understanding how to adopt the software to make the best use of it.

Joel Nider
Faculty Supervisor: 
Alexandra Fedorova
British Columbia
Partner University: