NSF Grant Funds Design of Multicore Processor Programming Model
December 17, 2012Harvey Mudd College Computer Science Professors Chris Stone and Melissa O’Neill have been awarded a National Science Foundation grant to support undergraduate computer science research in concurrency.
The three-year, $375,395 grant will fund the development of a simpler programming model for multicore processors.
“These processors, with many computers on a single chip, are increasingly common even in inexpensive computers and cell phones,” said Stone. “To take advantage of their power and speed, programmers divide problems into many small pieces that can be solved simultaneously. Unfortunately, coordination between these tasks is notoriously tricky and error-prone.”
Stone and O’Neill’s project “Observationally Cooperative Multithreading” (OCM) lets programmers pretend that all their tasks execute one at a time, taking turns. This significantly reduces the possibility of bad interactions between tasks.
But some tasks are completely independent of others, so it doesn’t matter whether they run one at a time or simultaneously. An OCM system takes advantage of multicore processors to run, independently, these tasks at the same time, obtaining the correct answers more quickly. The result is improved program speed and resource utilization, with a one-task-at-a-time mental model that is simple enough for beginning programmers to understand.
Over the next three years, 18 students will help design, develop and evaluate practical OCM implementations using techniques such as transactional memory and lock interference.