Why Cross-Accelerator Performance Profiling is a Challenge

By Esthela Gallardo and Patricia J. Teller

August 17, 2016

High performance computing (HPC) systems are comprised of multiple compute nodes interconnected by a network. Previously these nodes were composed solely of multi-core processors, but nowadays they also include many-core processors, which are called accelerators. Although accelerators provide higher levels of parallelism, their inclusion in HPC systems results in more complex system designs and increases the difficulty of quantifying the runtime behavior of applications that employ them. This is because performance metrics are used to explain application runtime behavior, and there is no consistency in the number or types of metrics exposed by dissimilar computing devices. Furthermore, differences in the designs of devices, i.e., their architectures, can make it impossible to directly compare exposed metrics.

Nevertheless, after identifying the performance metrics exposed by the Kepler and Fermi architectures of the NVIDIA GPUs and the Many Integrated Core (MIC) architecture of the Intel Xeon Phi, we attempted to map them to the performance of the LULESH 1.0 proxy application (a code that has become key to DOE co-design efforts for Exascale). Application execution time and power/energy consumption were compared, and runtime behavior was evaluated in terms of vectorization usage, instructions executed per cycle, and memory access. The results of this comparison, which considered architectural differences when determining the best way to compare some of these metrics, are summarized in our XSEDE16 publication. Here we present selected results, focus on some of the challenges we encountered, and highlight the need for a standard means of comparing devices with different architectures.

Performance Comparison

Given the simplicity of the runtime measurement, one would think it could be measured in a consistent way across different computing devices. However, this is only the case for devices with similar architectures. As shown in Figure 1, on both a standard Intel multi-core processor and the many-core Intel Xeon Phi, the function gettimeofday () is used to collect timestamps prior to and after a code segment to determine its runtime, which is the time elapsed between the timestamps.Gallardo, Teller Image

In contrast, as illustrated in Figure 2, on NVIDIA GPUs, using CUDA’s event API, this is accomplished by creating two CUDA events that are used to record the timestamps, synchronizing the processing units, and then computing the runtime. Although different, both methods use the same unit of measurement and, thus, the runtimes can be compared directly.

Applying these methods to measure the runtimes of LULESH 1.0 for three different problem sizes, i.e., a 503, 703, and 903 mesh, on the target accelerators resulted in the data presented in Figure 3. As shown, LULESH consistently ran fastest on the Kepler GPU; it ran about seven times faster than on the other accelerators. And, although the Xeon Phi outperformed the Fermi, the differences between their runtimes were less than 20%.

Gallardo, Teller Figure 3

Performance Analysis

But a comparison of application runtimes does not tell the whole story. For example, it is important for hardware designers and application programmers to know why one device outperforms another. This requires understanding how well an application employs device resources. For example, the average number of instructions that a device executes during each clock cycle (IPC) determines the instruction-level parallelism and can help determine the application’s parallel efficiency. But, measuring this requires the use of performance tools and, unfortunately, none supports comparative analysis of different architectures. Accordingly, different tools must be used to collect similar performance data across devices with different architectures. For instance, LULESH’s IPCs were determined using the NVIDIA Visual Profiler (NVVP) on the Fermi and Kepler GPUs, and the Performance API (PAPI) on the Xeon Phi.

NVVP executes an instance of LULESH multiple times to collect performance metrics such as IPC. On the other hand, unlike NVVP, the use of PAPI requires source code modifications and one or more executions of LULESH depending on the number and types of metrics that are being collected; one execution is required to collect the metrics needed to compute IPC.

Unlike the runtime measurements, the GPU and Xeon Phi IPC measurements are not directly comparable. This is because, with NVVP, performance data was collected per streaming multiprocessor of the GPUs (SMX) but, with PAPI, due to restrictions on the amount of data that can be recorded simultaneously, only data for one Xeon Phi thread was collected. Regardless, using knowledge of the device architectures, we were able to compare the IPCs achieved by LULESH on the three accelerators. As can be seen in Figure 4(a), each SMX on a Kepler (and, similarly, a Fermi) GPU distributes work across schedulers (WSi) that launch a group of threads (tj), which execute in parallel on its processing units. In contrast, as shown in Figure 4(b), a Xeon Phi core distributes its work across its four available hardware threads.

Gallardo, Teller Figure 4

Comparing the IPC of a Xeon Phi thread (IPCthread ) directly to that of a GPU SMX (IPCSMX) would be unfair since a Xeon Phi thread does not distribute its work to other processing units. Thus, to compare the IPCs that LULESH achieved on the target accelerators, we used the IPCthread of the Xeon Phi and, since the Xeon Phi has a dual-issue pipeline, multiplied IPCthread by two to compute the IPC of one of its cores, i.e., IPCcore. Table 1 shows the IPCcore of the Xeon Phi compared to the IPCSMX of the Kepler and Fermi GPUs across the three problem sizes.

Gallardo, Teller Table 1

Similar to the runtimes, LULESH achieves the highest IPCs on the Kepler GPU. And, the IPCs of the Fermi and the Xeon Phi are comparable, i.e., they differ by less than 20%, with those of the Xeon Phi being higher than those of the Fermi. In particular, LULESH’s IPCs on the Kepler were up to three times higher than on the Fermi and Xeon Phi, and they increased with the problem size. As a result, it can be concluded that, for the three problem sizes studied, LULESH 1.0 scaled well on the Kepler GPU.

Conclusion

In the case of processor design, the needs of applications will continue to drive the introduction of new device architectures. As a result, HPC systems will become more heterogeneous, and application developers will have a wide array of fast computing devices on which to run their applications. However, without a means to compare the performance of devices with different architectures, it will remain difficult to determine whether a program should be launched solely on multi-core processors or should employ accelerators, which accelerators should be employed, and how new accelerators should be designed.

Currently, a methodology to explain why one device outperforms another with a dissimilar architecture is premature. This is due to the limited number of metrics exposed by each device. Since exposed metrics are not directly comparable due to the architectural differences of each device, methods are needed to compare them.

Nonetheless, we executed LULESH 1.0 on the Intel Xeon Phi and the Fermi and Kepler GPUs, collected exposed metrics on each device, and mapped them to application performance. Although we were able to shed some light as to why LULESH’s runtime differs on the target accelerators, comparative analysis of devices with different architectures is still an open and very important problem.

About the Authors

Esthela GallardoEsthela Gallardo is a Ph.D. student at the University of Texas at El Paso, where she earned Bachelor of Science and Master of Science degrees in Computer Science. Her dissertation topic involves enhancing the MPI Tool Information Interface (MPI_T) support provided by MPI libraries to enable the automation of MPI performance optimization. This topic was motivated by her internship at the Texas Advanced Computing Center (TACC), where she helped develop a tool that makes use of MPI_T to identify common MPI performance bottlenecks in large-scale applications and provide suggestions to avoid them. Esthela also interned at the Lawrence Livermore National Laboratory where she ported optimizations of the OpenMP version of the LULESH application to a CUDA version and evaluated the changes in performance.

Patricia TellerPatricia Teller is a Professor of Computer Science at the University of Texas at El Paso. She attained her Ph.D. in Computer Science at New York University, where she worked in the Ultracomputer Research Lab. Over the past 20 years, her research, and that of her students, has encompassed many topics associated with HPC performance including power/energy consumption, MPI communication, I/O scheduling, emerging technologies, memory subsystems, operating systems, and workload characterization. This work has resulted in over 100 publications as well as support from many sources including the Army Research Laboratory, Defense Advanced Research Projects Agency, Department of Defense, Department of Energy, IBM, National Aeronautics and Space Administration, National Science Foundation, and Sandia National Laboratories.

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!

AI Saves the Planet this Earth Day

April 22, 2024

Earth Day was originally conceived as a day of reflection. Our planet’s life-sustaining properties are unlike any other celestial body that we’ve observed, and this day of contemplation is meant to provide all of us Read more…

Intel Announces Hala Point – World’s Largest Neuromorphic System for Sustainable AI

April 22, 2024

As we find ourselves on the brink of a technological revolution, the need for efficient and sustainable computing solutions has never been more critical.  A computer system that can mimic the way humans process and s Read more…

Empowering High-Performance Computing for Artificial Intelligence

April 19, 2024

Artificial intelligence (AI) presents some of the most challenging demands in information technology, especially concerning computing power and data movement. As a result of these challenges, high-performance computing Read more…

Kathy Yelick on Post-Exascale Challenges

April 18, 2024

With the exascale era underway, the HPC community is already turning its attention to zettascale computing, the next of the 1,000-fold performance leaps that have occurred about once a decade. With this in mind, the ISC Read more…

2024 Winter Classic: Texas Two Step

April 18, 2024

Texas Tech University. Their middle name is ‘tech’, so it’s no surprise that they’ve been fielding not one, but two teams in the last three Winter Classic cluster competitions. Their teams, dubbed Matador and Red Read more…

2024 Winter Classic: The Return of Team Fayetteville

April 18, 2024

Hailing from Fayetteville, NC, Fayetteville State University stayed under the radar in their first Winter Classic competition in 2022. Solid students for sure, but not a lot of HPC experience. All good. They didn’t Read more…

AI Saves the Planet this Earth Day

April 22, 2024

Earth Day was originally conceived as a day of reflection. Our planet’s life-sustaining properties are unlike any other celestial body that we’ve observed, Read more…

Kathy Yelick on Post-Exascale Challenges

April 18, 2024

With the exascale era underway, the HPC community is already turning its attention to zettascale computing, the next of the 1,000-fold performance leaps that ha Read more…

Software Specialist Horizon Quantum to Build First-of-a-Kind Hardware Testbed

April 18, 2024

Horizon Quantum Computing, a Singapore-based quantum software start-up, announced today it would build its own testbed of quantum computers, starting with use o Read more…

MLCommons Launches New AI Safety Benchmark Initiative

April 16, 2024

MLCommons, organizer of the popular MLPerf benchmarking exercises (training and inference), is starting a new effort to benchmark AI Safety, one of the most pre Read more…

Exciting Updates From Stanford HAI’s Seventh Annual AI Index Report

April 15, 2024

As the AI revolution marches on, it is vital to continually reassess how this technology is reshaping our world. To that end, researchers at Stanford’s Instit Read more…

Intel’s Vision Advantage: Chips Are Available Off-the-Shelf

April 11, 2024

The chip market is facing a crisis: chip development is now concentrated in the hands of the few. A confluence of events this week reminded us how few chips Read more…

The VC View: Quantonation’s Deep Dive into Funding Quantum Start-ups

April 11, 2024

Yesterday Quantonation — which promotes itself as a one-of-a-kind venture capital (VC) company specializing in quantum science and deep physics  — announce Read more…

Nvidia’s GTC Is the New Intel IDF

April 9, 2024

After many years, Nvidia's GPU Technology Conference (GTC) was back in person and has become the conference for those who care about semiconductors and AI. I 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…

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…

Baidu Exits Quantum, Closely Following Alibaba’s Earlier Move

January 5, 2024

Reuters reported this week that Baidu, China’s giant e-commerce and services provider, is exiting the quantum computing development arena. Reuters reported � 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…

Shutterstock 1179408610

Google Addresses the Mysteries of Its Hypercomputer 

December 28, 2023

When Google launched its Hypercomputer earlier this month (December 2023), the first reaction was, "Say what?" It turns out that the Hypercomputer is Google's t 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…

Leading Solution Providers

Contributors

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…

China Is All In on a RISC-V Future

January 8, 2024

The state of RISC-V in China was discussed in a recent report released by the Jamestown Foundation, a Washington, D.C.-based think tank. The report, entitled "E Read more…

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…

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…

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…

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…

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…

Intel’s Xeon General Manager Talks about Server Chips 

January 2, 2024

Intel is talking data-center growth and is done digging graves for its dead enterprise products, including GPUs, storage, and networking products, which fell to Read more…

  • arrow
  • Click Here for More Headlines
  • arrow
HPCwire