Allinea Software Blog

Tue August 26, 2014 by Mark O'Connor

At ISC14 this year I was asked an interesting question while showing off the forthcoming Energy Efficiency metrics in Allinea Performance Reports and Allinea MAP. The question was: what can you do to optimize for energy usage?

I'm on record as saying the best way to reduce energy usage is to increase the efficiency of the application:

  1. Reduce the time spent in memory accesses by making best use of the cache.
  2. Increase the number of FLOPS per cycle (and watt) by ensuring most of the computation is done with vectorized loops.

Both Allinea MAP and Allinea Performance Reports show these figures front and center, but rewriting your code to make it faster can be a lot of work.

I wondered if there was...

Wed July 23, 2014 by Beau Paisley

Allinea DDT and Allinea MAP are excellent tools for finding program flaws and performance issues – they are also very helpful for studying codes and coding techniques. In this article I present a handful of optimization techniques and use Allinea MAP to illustrate their benefits. These tips are focused on scientific programmers who want to adopt best practices and the tips are limited to those that:

Mon July 14, 2014 by Beau Paisley

When profiling source code for performance issues it is sometimes desirable to profile a subset of your application. Maybe you already have a high-level view of your application’s performance, or maybe you have been tasked with working on a particular routine. Fortunately, with Allinea MAP, this is a simple process. This article provides an illustration of how to sample a subset of a FORTRAN program.

Mon June 9, 2014 by David Lecomber

We all have our objectives for scalability. It may mean hundreds, thousands, or millions of cores to you.

But spare a thought for the software teams.

We need developers and application analysts in order to scale on that new machine. Do we expect only optimization?

In reality, there is a necessary step before this: debugging.

What should every application developer know about debugging at scale?

Tue May 13, 2014 by Beau Paisley

OpenACC is a directive-based programming model that enables offloading code from C, C++, and Fortran to  accelerators such as GPUs.

Fri April 11, 2014 by The Development Team

Whatever the purpose of a HPC system - from running diverse science tasks to having a single-purpose crunching through the same CFD code 24x7 - fundamentally it is nothing without the applications that use it.

Mon February 24, 2014 by David Lecomber

In days gone by, Moore’s Law meant a new machine brought a near automatic boost in performance. Today, performance scalability comes through hard and sometimes not so hard won battles with your application source code. I prefer the latter kind of battle.