Abstract

The near-data processing (NDP) paradigm has recently gained popularity as a promising method for mitigating the memory wall challenges of future computing systems. Modern 3D-stacked DRAM memories can be leveraged to prevent unnecessary data movement between the main memory and the CPU. However, identifying which type of NDP system, in terms of processing elements and the type of high performance 3D memory used, is suitable for a given application is not a trivial task. Understanding the interactions between modern workloads and the memory subsystem requires a lot of effort. Each memory type presents its unique advantages and shortcomings. In addition, memory access patterns vary greatly across applications. Therefore, the performance of a given application on a given memory type is difficult to intuitively predict. There is no specific NDP system or memory type that can provide high performance for every application. We propose NDP-RANK, a machine learning framework that can efficiently decide which NDP system is suitable for an application. NDP-RANK’s performance prediction is based on an input set of application and microarchitecture characteristics. We build machine learning models that can be used to conduct design-space exploration of NDP systems and accurately predict performance of previously unseen applications on several NDP architectures. Our models are orders of magnitude faster than architectural simulation. They can accurately predict performance with coefficients of determination ranging between 0.89 and 0.96, and root mean square errors ranging between 0.04 and 0.16.

Links and resources

Tags