Click For Photo: https://3c1703fe8d.site.internapcdn.net/newman/gfx/news/2018/reusablesoft.jpg
The world's fastest supercomputer can now perform 200,000 trillion calculations per second, and several companies and government agencies around the world are competing to build a machine that will have the computer power to simulate networks on the scale of the human brain. This extremely powerful hardware requires extremely powerful software, so existing software code must be continually updated to keep up.
Sunita Chandrasekaran, an assistant professor of computer and information sciences at the University of Delaware, is perfectly suited for this challenge. Under a new grant from the National Science Foundation, she is designing frameworks to adapt code to increasingly powerful systems. She is working with complex patterns known as wavefronts, which are commonly found in scientific codes used in analyzing the flow of neutrons in a nuclear reactor, extracting patterns from biomedical data or predicting atmospheric patterns.
Chandrasekaran - Expert - Software - Code - Processors
Chandrasekaran is an expert on parallel programming—writing software code that can run simultaneously on many multi-core processors. Parallel programming is an increasingly important discipline within computer science as more and more universities and companies use powerful supercomputers to analyze wide swaths of data, from scientific results to consumer behavior insights and more.
Chandrasekaran is looking at scientific applications to see how they were written, how they have been performing on outdated architectures, what kind of programming models have been used, and what challenges have arisen.
Time - Programming - Models - Stroke - Pool
"Most of the time the programming models are created in a broad stroke," she said. "Because they are generalized to address a large pool of commonly found parallel patterns, often the models miss creating features for some complex parallel patterns, such as wavefronts, that are hidden in some scientific applications."
A wavefront allows for the analysis of patterns in fewer steps. The question is: How do you get the programming model to do that?
Example - Minisweep - Miniapp
One such example is Minisweep, a miniapp that...
Wake Up To Breaking News!
Drove my Ford to the fjord, but the fjord was dry. . .