Research Project Title:
Investigating Performance Anomalies in Cilk, a C/C++ Parallel Computing Framework
abstract:Parallelism is critical to modern high-performance software. Cilk is a parallelization framework and runtime for C/C++ applications that allows the programmer to easily parallelize their code with composable, high-level building blocks. This reduces the number of implementation errors that parallel programming is notorious for, and can also yield better performance than poorly written code that uses lower-level primitives. This project focuses on identifying and investigating performance anomalies in Cilk: for instance, we assess how well Cilk scales on manycore NUMA (non-uniform memory access) machines, and how variably it performs on identical workloads.
“I enjoy working on low-level systems, software performance, and parallel computing. I have hands-on experience from past projects, internships, and classes, such as 6.172 (Performance Engineering of Software Systems), and hope to gain some research experience and insight into academia from this SuperUROP project. I'm excited to learn loads of new material and work on a promising and challenging software project.”