Heterogeneous computing combines general purpose CPUs with accelerators to efficiently execute both sequential control-intensive and data-parallel phases of applications. Existin...
Isaac Gelado, Javier Cabezas, Nacho Navarro, John ...
—In the past, researchers have developed specialized programs to aid programmers in detecting concurrent programming errors such as deadlocks, livelocks, starvation, and data rac...
HANDS is a new programming system for children that was designed for usability. This paper examines the effectiveness of three features of HANDS: queries, aggregate operations, an...
We describe a hardware and software platform for developing streaming applications. Programmers write stream programs in high-level languages, and a set of software tools maps the...
Ben Serebrin, John D. Owens, Chen H. Chen, Stephen...
When programmers develop or maintain software, they instinctively sense that there are fragments of code that other developers implemented somewhere, and these code fragments coul...