New tool eases the burden of creating and reproducing analytical performance models

May 06, 2014
Palm Modeling Tool Workflow

Application performance modeling is an important methodology for diagnosing performance-limiting resources, optimizing application and system performance, and designing large-scale machines. However, because creating analytical models can be difficult and time-consuming, application developers often forgo the insight that these models can provide. To ease the burden of creating models, computer scientists at Pacific Northwest National Laboratory developed the Performance and Architecture Lab Modeling tool, or Palm. Palm simplifies the task of constructing a model by automating common modeling tasks and providing a mechanism for modelers to incorporate human insight. With Palm, reproducing a model—a program that runs on a computer—is straightforward. Given the same input, Palm generates the same model. This is a first step toward enabling the open distribution and cross-team validation of models.

Application models are hard to generate. Models frequently are expressed in forms that are difficult to distribute and validate. PNNL researchers created Palm as a framework for tackling these problems. The modeler begins with Palm's modeling annotation language. Not only does the modeling language divide the modeling task into sub problems, it formally links an application's source code with its . This link is important because a model's purpose is to capture application behavior. Furthermore, this link makes it possible to define rules for generating models according to source code organization. The model that Palm generates is an executable program whose constituent parts (functions) directly correspond to the modeled application.

"Given an application, a set of annotations, and a representative execution environment, Palm will generate the same model," explained Nathan Tallent, a PNNL research scientist and lead author of the paper describing the Palm tool. "We believe this presents intriguing possibilities for developing, distributing, and validating models." He also observed that the work to annotate an application should pay dividends because change relatively slowly.

Palm's source code modeling annotation language is designed to facilitate a divide-and-conquer modeling strategy by composing an application model from a number of sub-models, where sub-models correspond to application code blocks. Palm is designed to make the simple easy and the difficult possible by combining top-down (human-provided) semantic insight with bottom-up static and dynamic analysis. Palm generates models according to well-defined rules based on static and dynamic analysis. It also automatically incorporates measurements to focus attention, represent constant behavior, and validate models.

To demonstrate Palm's abilities, the scientists described the process of generating models for three applications: Nekbone, a computational fluid dynamics solver; GTC, a gyrokinetic particle code; and Sweep3D, a neutron transport benchmark. They showed that Palm elegantly expressed each model and automated several modeling tasks.

The researchers are working on new techniques for assisting model generation using static source code analysis and critical path analysis. Because machine designs increasingly are driven by power considerations, they also are working on techniques for generating application models for metrics such as power and data movement.

Explore further: Scientists apply new graph programming method for evolving exascale applications

More information: Tallent NR and A Hoisie. 2014. "Palm: Easing the Burden of Analytical Performance." In: Proceedings of the 28th International Conference on Supercomputing, ICS 2014. June 10-13, 2014, Munich, Germany. Association for Computing Machinery, New York.

add to favorites email to friend print save as pdf

Related Stories

Look into the future with genetic programming

Apr 08, 2014

With predictive modeling techniques, it is possible to predict anything from clients' shopping habits and illnesses to a golfer's handicap. The only prerequisite is to have enough examples. In a doctoral thesis from the University ...

Recommended for you

SR Labs research to expose BadUSB next week in Vegas

2 hours ago

A Berlin-based security research and consulting company will reveal how USB devices can do damage that can conduct two-way malice, from computer to USB or from USB to computer, and can survive traditional ...

3D TV may be the victim of negative preconceptions

11 hours ago

An academic from Newcastle University, UK, has led a lab-based research, involving 433 viewers of ages from 4 to 82 years, in which participants were asked to watch Toy Story in either 2D or 3D (S3D) and report on their viewing ...

Microsoft unveils Xbox in China as it faces probe

Jul 30, 2014

Microsoft on Wednesday unveiled its Xbox game console in China, the first to enter the market after an official ban 14 years ago, even as it faces a Chinese government probe over business practices.

A smart wristband for nocturnal cyclists

Jul 29, 2014

Five EPFL PhD students have developed a wristband that flashes when the rider reaches out to indicate a turn. Their invention was recognized at a European competition.

Lenovo's smart glasses prototype has battery at neck

Jul 28, 2014

China's PC giant Lenovo last week offered a peek at its Google Glass-competing smart glass prototype, further details of which are to be announced in October. Lenovo's glasses prototype is not an extreme ...

User comments : 0