Michael Spear, Assistant Professor of Computer Science and Engineering at Lehigh University, has been working on a way to expand and maximize the power of multicore computer processors. Thanks in part to a near half-million dollar grant from the National Science Foundation's (NSF) division of Computer and Communication Foundations, Spear's efforts continue to move closer to reality. Spear and University of Delaware Computer Science Assistant Professor John Cavazos have teamed up on a collaborative effort aimed at improving the functional output of the standard multicore processor.
Multicore processors entered the mainstream market nearly a decade ago. These processors far outweigh their predecessors, showcasing the ability to run multiple tasks at the same time without a recognizable lag in a computer's overall performance.
Unfortunately, still in its infant stages, programmers continue the struggle to harness the true power of the multicore processor due to the challenges in developing efficient parallel code.
"Though multicore processors become nearly ubiquitous, appearing in every class of compute device from phones through supercomputers, many applications fail to use multicore processors well, " Spear explains. "The challenge is that effective use of multicore requires the programmer to express software as a collection of loosely-coupled tasks, suitable to run in any order. Even new programming languages do not necessarily make this task easy, and writing parallel programs in legacy languages such as Java and C++ are error-prone. We are exploring techniques that can automatically transform existing programs into a form suitable for parallel execution on multicore processors, through a combination of static program analysis, run-time speculation, and guided execution via run-time adaptivity and machine learning."
The team's long-term plans are to release their finalized model and source code as an open-source product.