Allinea Tools Offer Path to Parallel Programming

By John E. West

April 18, 2008

The shift to multicore architectures in commodity microprocessors brings with it the reality that, as Marc Snir said at a recent press conference (http://www.hpcwire.com/hpc/2246496.html), “programming” and “parallel programming” must become synonymous. The processors we are seeing now, and will continue to see in at least the medium-term, will offer performance improvements only to those applications that can take advantage of many cores at one time. Since software customers generally expect applications to do more in less time, software developers have a strong incentive to parallelize their codes. But developers generally don’t have the skills they need to make this change.

Allinea Software sees this as the perfect opportunity for their particular expertise. The company’s flagship product, the Distributed Debugging Tool (DDT), has seen wide adoption, and Allinea has recently introduced its Optimization and Porting Tool (OPT). They are one of those companies that is trying a business model in HPC that is now tried and true: build a technology that appeals to a mass customer base, and tweak it to capture the HPC niche.

When the company started in 2003, the first step in the business plan was to prove they could build a debugger that people would buy. As Allinea assessed the technology landscape at the time, they realized that the primary competition for any company looking to get into the debugger business isn’t another company at all. As Jacques Philouze, the vice president for sales and marketing at Allinea, puts it, “Our competition was printf; it’s easy to use, everyone is familiar with it, and it’s free.”

As a UK-based company, Allinea initially targeted a market that Philouze says wasn’t well served at the time: academic institutions. “At the time European academic institutions weren’t using many tools at all,” says Philouze. “Cost was a real issue for them.” Their strategy paid off. Allinea demonstrated that they could build a product that people would buy, and according to the company today, DDT is used in the majority of European academic HPC centers on the TOP500 list.

At the low end, the company is still competing with printf, the brute force method used by developers to trace code execution at run-time. Unfortunately printf isn’t thread-aware, and as chip vendors increase the core count in their offerings, developers will increasingly need a more sophisticated approach to debugging. Allinea sees its DDT product as particularly attractive to these customers.

“Our customers are choosing us not only because we are cost effective, but also because we have a very easy learning curve,” says Philouze. “After one hour of familiarization with DDT, you are ready to debug your code.”

The company’s mass market dreams got a boost last year when Microsoft and Allinea announced that DDT was making its way into Microsoft’s Visual Studio development environment for Windows, as a plug-in called DDT Lite, that will help users debug threaded applications on multicore processors.

Allinea began partnering with vendors in 2005 with a port of DDT to Linux on IBM’s Power line. Today DDT is supported on Solaris, AIX, and Linux operating systems and x86, x86_64,  Itanium, Power, UltraSparc, and Cell processors.  It also supports a variety of compilers and, according to company’s Web site, “all known MPI implementations.” This covers HPC platforms ranging from Cray’s XT line to HP clusters and Blue Gene (on the way). Recent releases have also added specific features for debugging at large scale, and the ability to debug hybrid MPI/OpenMP codes through the Parallel Stack View.

All this platform diversity, along with the company’s success in high-end computing — first in the European HPC market and then in the U.S. with customers like LLNL and TACC — has given Allinea insight into the problems inherent in debugging very large-scale parallel applications. Many of the straightforward approaches that work with a parallel debugger that is aimed at helping the commodity software developer manage eight cores in a single socket simply don’t scale to hundreds or thousands of processors. In fact, according to Philouze, programmers are often overloaded with standard graphical debugging metaphors beyond 64 processors.

How to best manage the information needed to debug an application running on thousands of processors is an open question actively being pursued by companies and research programs alike, and Allinea is part of these efforts. DDT has features that enable programmers to dynamically group processes of interest and focus their investigation on only those processes, as well as information display options and summary views to help manage information complexity at scale. And DDT is designed to provide as much assistance as possible to the user. For example, users are presented with more complex information by default on low core-count debugging sessions, but at higher core counts the application automatically switches to summary views to help users manage complexity.

Allinea is also working to advance the state of the art in debugging at scale as it collaborates with major efforts on both sides of the Atlantic. In the U.S., the company has partnered with TACC to investigate best practices for managing complexity on Ranger-scale problems, and in Europe the company is part of the three-year Parallel Programming for Multi-core Architectures (ParMA) effort to improve the state of parallel programming tools.

But where is debugging at scale headed? There are obviously immense challenges for users in managing information about thousands of processors at one time. I talked with Katie Antypas at the National Energy Research Scientific Computing Center (NERSC) about her views on this topic. Antypas was the author of a study written last year that reviewed the two major large-scale parallel debugging solutions, DDT and the Totalview debugger.

Given the information management challenges in debugging applications at large scale, what is it that developers are looking for? According to Antypas, “…users want relatively basic features in a parallel debugger, the ability to set breakpoints, step through code, examine variables and view core files. From this perspective, we encourage parallel debugger tool developers to focus on ‘ease of use’ and, in particular, a low learning curve GUI interface as many users will only have to use a parallel debugger a handful of times a year.”

Centers also face challenges in balancing the needs of users who want to move their applications quickly through batch queues and developers who often need to debug their jobs interactively, sometimes on large processor counts. This tension is compounded by the observation that for many large HPC centers their users may be spread all over the world. “Interactive debugging at high concurrencies can also pose job scheduling difficulties for centers like NERSC, since cores must be idle and available if the user is to debug a job right away and not wait in the queue for resources to become available,” says Antypas. “Finally, for a center like NERSC with primarily remote users, running an interactive GUI from across the country can be slow and cumbersome.”

Karl Schulz from the Texas Advanced Computing Center agrees that the combination of interactive graphical debugging and batch environments can cause problems. “My experience running on various HPC systems is that often the graphical debugger may have stopped working with a particular MPI upgrade, or requires jumping through several hoops to handle X display management, which can be frustrating for a user who is in debug mode — and folks revert to printf debugging and are not willing to try much else the next time.” Schulz comments that DDT’s implementation is helpful in this regard because only the login node requires a working X Windows installation. “This approach helps our integration efforts in that a user only needs to verify a working X functionality to the login node, and nowhere else,” he explains.

Antypas suggests that a possible solution for some of these problems is to create a combined batch and interactive debugging environment. Users could submit problem codes as batch jobs, and receive back an analysis with an execution trace, uninitialized variable warnings, and so on. As she says, “This might be enough to solve many user problems, and the remaining users could fire up an interactive debugging session with a better idea of where to begin.” An interesting suggestion.

The first problem that developers face in creating a parallel code is to create a code that executes properly and provides the right answers. That’s what DDT is for. But once the application runs correctly, it has to run faster, and Allinea is working to address this issue as well.

Allinea’s Optimization and Porting Tool, or OPT, is the company’s latest product. OPT incorporates several features that are aimed at the non-specialist in a product space dominated by some very capable and, in some cases, free applications. OPT includes a call graph display that gives developers immediate insight into where their application is spending its time. Messages are displayed on a timeline so that resources wasted in mismatched send/receive times, or in barriers, can be quickly identified. Interestingly, OPT maintains a database of performance analysis sessions so that users can keep a historical perspective on what changes have helped application performance, and which have hurt.

As multicore processors bring parallelism to all programmers, free tools and ad hoc (but time-tested) approaches to debugging will start to break down, increasing demand for better tools. That the availability of robust tools for parallel programming is the first step at having robust, general-purpose parallel applications is widely recognized, and is the motivating force behind efforts like the recently-announced parallel computing research centers funded by Microsoft and Intel. If HPC continues its push down-market and grows substantial usage in machines less than 64-sockets, then Allinea’s strategy to push a single debugging solution from the desktop to the high-end supercomputer will put them in a good position early in the market adoption cycle.

Subscribe to HPCwire's Weekly Update!

Be the most informed person in the room! Stay ahead of the tech trends with industry updates delivered to you every week!

Top 500: Aurora Breaks into Exascale, but Can’t Get to the Frontier of HPC

May 13, 2024

The 63rd installment of the TOP500 list is available today in coordination with the kickoff of ISC 2024 in Hamburg, Germany. Once again, the Frontier system at Oak Ridge National Laboratory in Tennessee, USA, retains its Read more…

Harvard/Google Use AI to Help Produce Astonishing 3D Map of Brain Tissue

May 10, 2024

Although LLMs are getting all the notice lately, AI techniques of many varieties are being infused throughout science. For example, Harvard researchers, Google, and colleagues published a 3D map in Science this week that Read more…

ISC Preview: Focus Will Be on Top500 and HPC Diversity 

May 9, 2024

Last year's Supercomputing 2023 in November had record attendance, but the direction of high-performance computing was a hot topic on the floor. Expect more of that at the upcoming ISC High Performance 2024, which is hap Read more…

Processor Security: Taking the Wong Path

May 9, 2024

More research at UC San Diego revealed yet another side-channel attack on x86_64 processors. The research identified a new vulnerability that allows precise control of conditional branch prediction in modern processors.� Read more…

The Ultimate 2024 Winter Class Round-Up

May 8, 2024

To make navigating easier, we have compiled a collection of all the 2024 Winter Classic News in this single page round-up. Meet The Teams   Introducing Team Lobo This is the other team from University of New Mex Read more…

How the Chip Industry is Helping a Battery Company

May 8, 2024

Chip companies, once seen as engineering pure plays, are now at the center of geopolitical intrigue. Chip manufacturing firms, especially TSMC and Intel, have become the backbone of devices with an on/off switch. Thes Read more…

Top 500: Aurora Breaks into Exascale, but Can’t Get to the Frontier of HPC

May 13, 2024

The 63rd installment of the TOP500 list is available today in coordination with the kickoff of ISC 2024 in Hamburg, Germany. Once again, the Frontier system at Read more…

ISC Preview: Focus Will Be on Top500 and HPC Diversity 

May 9, 2024

Last year's Supercomputing 2023 in November had record attendance, but the direction of high-performance computing was a hot topic on the floor. Expect more of Read more…

Illinois Considers $20 Billion Quantum Manhattan Project Says Report

May 7, 2024

There are multiple reports that Illinois governor Jay Robert Pritzker is considering a $20 billion Quantum Manhattan-like project for the Chicago area. Accordin Read more…

The NASA Black Hole Plunge

May 7, 2024

We have all thought about it. No one has done it, but now, thanks to HPC, we see what it looks like. Hold on to your feet because NASA has released videos of wh Read more…

How Nvidia Could Use $700M Run.ai Acquisition for AI Consumption

May 6, 2024

Nvidia is touching $2 trillion in market cap purely on the brute force of its GPU sales, and there's room for the company to grow with software. The company hop Read more…

Hyperion To Provide a Peek at Storage, File System Usage with Global Site Survey

May 3, 2024

Curious how the market for distributed file systems, interconnects, and high-end storage is playing out in 2024? Then you might be interested in the market anal Read more…

Qubit Watch: Intel Process, IBM’s Heron, APS March Meeting, PsiQuantum Platform, QED-C on Logistics, FS Comparison

May 1, 2024

Intel has long argued that leveraging its semiconductor manufacturing prowess and use of quantum dot qubits will help Intel emerge as a leader in the race to de Read more…

Stanford HAI AI Index Report: Science and Medicine

April 29, 2024

While AI tools are incredibly useful in a variety of industries, they truly shine when applied to solving problems in scientific and medical discovery. Research Read more…

Nvidia H100: Are 550,000 GPUs Enough for This Year?

August 17, 2023

The GPU Squeeze continues to place a premium on Nvidia H100 GPUs. In a recent Financial Times article, Nvidia reports that it expects to ship 550,000 of its lat Read more…

Synopsys Eats Ansys: Does HPC Get Indigestion?

February 8, 2024

Recently, it was announced that Synopsys is buying HPC tool developer Ansys. Started in Pittsburgh, Pa., in 1970 as Swanson Analysis Systems, Inc. (SASI) by John Swanson (and eventually renamed), Ansys serves the CAE (Computer Aided Engineering)/multiphysics engineering simulation market. Read more…

Intel’s Server and PC Chip Development Will Blur After 2025

January 15, 2024

Intel's dealing with much more than chip rivals breathing down its neck; it is simultaneously integrating a bevy of new technologies such as chiplets, artificia Read more…

Comparing NVIDIA A100 and NVIDIA L40S: Which GPU is Ideal for AI and Graphics-Intensive Workloads?

October 30, 2023

With long lead times for the NVIDIA H100 and A100 GPUs, many organizations are looking at the new NVIDIA L40S GPU, which it’s a new GPU optimized for AI and g Read more…

Choosing the Right GPU for LLM Inference and Training

December 11, 2023

Accelerating the training and inference processes of deep learning models is crucial for unleashing their true potential and NVIDIA GPUs have emerged as a game- Read more…

Shutterstock 1606064203

Meta’s Zuckerberg Puts Its AI Future in the Hands of 600,000 GPUs

January 25, 2024

In under two minutes, Meta's CEO, Mark Zuckerberg, laid out the company's AI plans, which included a plan to build an artificial intelligence system with the eq Read more…

AMD MI3000A

How AMD May Get Across the CUDA Moat

October 5, 2023

When discussing GenAI, the term "GPU" almost always enters the conversation and the topic often moves toward performance and access. Interestingly, the word "GPU" is assumed to mean "Nvidia" products. (As an aside, the popular Nvidia hardware used in GenAI are not technically... Read more…

Nvidia’s New Blackwell GPU Can Train AI Models with Trillions of Parameters

March 18, 2024

Nvidia's latest and fastest GPU, codenamed Blackwell, is here and will underpin the company's AI plans this year. The chip offers performance improvements from Read more…

Leading Solution Providers

Contributors

Shutterstock 1285747942

AMD’s Horsepower-packed MI300X GPU Beats Nvidia’s Upcoming H200

December 7, 2023

AMD and Nvidia are locked in an AI performance battle – much like the gaming GPU performance clash the companies have waged for decades. AMD has claimed it Read more…

Eyes on the Quantum Prize – D-Wave Says its Time is Now

January 30, 2024

Early quantum computing pioneer D-Wave again asserted – that at least for D-Wave – the commercial quantum era has begun. Speaking at its first in-person Ana Read more…

The GenAI Datacenter Squeeze Is Here

February 1, 2024

The immediate effect of the GenAI GPU Squeeze was to reduce availability, either direct purchase or cloud access, increase cost, and push demand through the roof. A secondary issue has been developing over the last several years. Even though your organization secured several racks... Read more…

The NASA Black Hole Plunge

May 7, 2024

We have all thought about it. No one has done it, but now, thanks to HPC, we see what it looks like. Hold on to your feet because NASA has released videos of wh Read more…

Intel Plans Falcon Shores 2 GPU Supercomputing Chip for 2026  

August 8, 2023

Intel is planning to onboard a new version of the Falcon Shores chip in 2026, which is code-named Falcon Shores 2. The new product was announced by CEO Pat Gel Read more…

GenAI Having Major Impact on Data Culture, Survey Says

February 21, 2024

While 2023 was the year of GenAI, the adoption rates for GenAI did not match expectations. Most organizations are continuing to invest in GenAI but are yet to Read more…

Q&A with Nvidia’s Chief of DGX Systems on the DGX-GB200 Rack-scale System

March 27, 2024

Pictures of Nvidia's new flagship mega-server, the DGX GB200, on the GTC show floor got favorable reactions on social media for the sheer amount of computing po Read more…

A Big Memory Nvidia GH200 Next to Your Desk: Closer Than You Think

February 22, 2024

Students of the microprocessor may recall that the original 8086/8088 processors did not have floating point units. The motherboard often had an extra socket fo Read more…

  • arrow
  • Click Here for More Headlines
  • arrow
HPCwire