Contrary View: CPUs Sometimes Best for Big Data Visualization

By Jim Jeffers, Intel

December 1, 2015

Editor’s Note: Perhaps not surprisingly, Intel is mounting arguments that CPUs are a viable alternative for many visualization applications traditionally best served by GPUs. Here, Jim Jeffers, Engineering Manager & PE, Visualization Engineering at Intel, makes the case for CPU-based Software Defined Visualization.

Contrary to conventional thinking, GPUs are often not the best vehicles for big data visualization. In this commentary, I discuss several key technical reasons why a CPU-based “Software Defined Visualization” approach can deliver a more flexible, performant, scalable, cost effective, and power efficient solution to big data visualization than a conventional GPU-based approach.

An example from my Intel Developer Forum 2015 talk, Software Defined Visualization: Fast, Flexible Solutions For Rendering Big Data1 showed that a single Intel Xeon processor E7 v3 workstation containing 3TB (trillion bytes) of RAM was able to render a 12-billion particle, 450 GB cosmology dataset at seven frames per second2. For that input data set, it would take more than 75 GPUs with 6GBs local memory to perform the same scientific visualization task. The on-par performance of a single Intel Xeon processor vs. a 128-node GPU cluster has been confirmed in the technical literature. Similarly, my IDF 2015 presentation highlighted a ray-tracing benchmark driven by a SIGGRAPH ‘14 paper review committee request to realistically compare performance between Intel’s CPU-based Ray tracing solutions and NIVIDA’s GPU-based solutions. We found on recent typical HPC level CPU and GPU platforms with several different data models, there is a nearly 4x performance superiority of Intel’s CPU-based Software Defined Visualization (SDVis) approach for our Embree open-source project, in an apples-to-apples comparison over NVIDIA’s hardware accelerated Optix ray-tracing engine (See Figure 1 below).

Intel.Jeffers Fig 1.12.1.15Looking forward, massive memory, faster on-package memory, lots-of-cores providing in-situ visualization options are a few of the characteristics that will give the forthcoming Intel Xeon Phi code name Knights Landing the ability to deliver significantly better performance, which should make Intel Xeon Phi processor-based platforms a premier scientific visualization and professional rendering platform over the next few years – a hardware advantage that will continue to catapult software defined visualization into even greater prominence due to the use of in-situ visualization that can minimize expensive data movement as the industry transitions into the Exascale computing era.

Software Defined Visualization

The idea behind SDVis is that the size of the data, which generally maps to simulation accuracy and also image fidelity is often too big even for today’s high-end GPU memory to render without multiple tiling passes and associated data transfer penalties. Focusing rendering solutions on handling both the size and type of data rather than primarily for gaming uses means that SDVis software components can be designed to best utilize massive-memory hardware and parallel algorithms that can scale as needed across the nodes in a cluster or inside a computational cloud. We have been focused on creating and supporting freely downloadable open-source packages such as: (1) the OSPRay open, scalable, and portable ray tracing engine; (2) the Embree library of high-performance ray-tracing kernels; and (3) OpenSWR, a drop-in OpenGL highly scalable and performant CPU-based software rasterizer These all provide core functionality to enable current and new SDVis applications.

The motivation for SDVis can be summarized in the following three points:

  1. The size of the data alone is reason enough for adopting a Software Defined Visualization approach as the quantity of data implies a visualization quality (or fidelity) that is too big for the memory of discrete PCIe devices like GPUs. As we will see, limited GPU memory and the limited bandwidth of the PCIe bus conspire to make GPUs uneconomical for big-data visualization. The SDVis approach also gives developers the freedom to exploit the nearly three orders of magnitude greater RAM capacity of a high-end Intel Xeon processor-based workstation (measured in terabytes) as compared to the low gigabytes of memory that can be installed on a discrete GPU.
  2. As we move toward ever larger and more detailed simulations, it is necessary to scale visualization with the simulation software so that the big data can be quickly rendered, which is why in-situ visualization will likely become a requirement as the industry moves towards Exascale computing. Data movement is simply becoming too expensive from a time and power perspective, yet discrete GPUs don’t have the memory capacity and PCIe bandwidth to run both the rendering software and scientific simulation on the same hardware at the same time.
  3. Finally, flexibility is a must, which is why we at Intel focused on a software defined visualization approach for HPC and large data systems as opposed to targeted graphics hardware. This focus from a company famous for its hardware reflects the strong motivations and benefits behind the decision to adopt a software-based approach.

The cosmology visualization example from my previously mentioned IDF 2015 talk, Software Defined Visualization: Fast, Flexible Solutions For Rendering Big Data, illustrated in Figure 2, brings concreteness to this discussion as a single quad-socket Intel Xeon processor E7 v3 workstation was able to visualize a 12-billion (450 GB,) particle dataset and render it with a 4k resolution at 7 FPS (Frames Per Second)2. This highly detailed visualization included ambient occlusion using a zero-overhead p-k-d tree and required no changes to level-of-detail or other form of simplification.

Jeffers.Intel.2Figure 2: Example rendering of the 12-billion particle (450 GB) Cosmic Web dataset (Complements of Ingo Wald, Aaron Knoll, Gregory P. Johnson, Will Usher, Valerio Pascucci and Michael E. Papka. “CPU Ray Tracing Large Particle Data with P-k-d Trees.”

In comparison, PCIe devices like GPUs are at a disadvantage for big memory visual applications because of their limited amount of on-board memory plus the fact that they can only access host memory (and hence network and storage data) via a very slow (relative to the memory subsystem of a modern Xeon processor) PCIe bus. This means that currently even the most advanced PCIe based devices can only read data at a peak theoretical bandwidth of 16 GB/s (billion bytes per second), although in reality the actual observed PCIe data transfer rate will be lower. Still, we can calculate that 29 theoretically ideal PCIe devices will be required to read a 450 GB dataset in one second (e.g. 450 GB ÷ 16 GB/s = 29 devices). Thus a cluster containing a minimum of 203 (29 * 7) ideal PCIe devices – each on a dedicated PCIe bus as there can be no bandwidth sharing – will be required to provide sufficient PCIe bandwidth to load the example 450 GB cosmology dataset in 1/7th of a second. The end result is that we can estimate that at least 200 GPUs will be required to read a constantly changing 450 GB numerical dataset quickly enough to even have a chance of matching the 7 FPS display rate delivered by the single Intel Xeon processor-based workstation. Obviously, a 200 GPU visualization cluster cannot compete against the superior price/performance and performance/watt ratios of a single big-memory processor-based workstation.

Moving from estimation to benchmarking, the 2015 IEEE Visualization paper by Wald, et.al., CPU Ray Tracing Large Particle Data with Balanced P-k-d Trees reported that a single, 72-core Intel Xeon processor-based workstation delivered rendering performance that was on-par with a 120-GPU visualization cluster. However, the CPU vs. GPU comparison was only a side-point in the paper.

The important contribution of CPU Ray Tracing Large Particle Data with Balanced P-k-d Trees is the introduction of an efficient CPU algorithm and zero-overhead data structure, the p-k-d tree, for traversing, classifying and ray tracing data. Based on results using an OSPRay software implementation, the authors’ claim their approach, “is able to render up to billions of particles on a typical workstation, purely on the CPU, without any approximations or level-of-detail techniques, and optionally with attribute-based color mapping, dynamic range query, and advanced lighting models such as ambient occlusion and path tracing.” For this reason, the CPU vs. GPU comparative results reported in the paper required simplified visualization techniques to run a gigascale visualizations on the GPU.

Ray-tracing is an embarrassingly parallel application that can fully exploit the SPMD (Single Program Multiple Data) parallel processing capabilities of both GPUs and CPUs. This is the reason why many of the optimized Embree kernels as well as the scalable and portable OPSRay ray-tracing engine utilize the freely downloadable ISPC (Intel SPMD Program Compiler).

From a SPMD point of view, the discriminators between the CPU and GPU processing are twofold: (1) Ray-tracing has significant serial bottlenecks including the use of tree-based data structures to identify visible objects, and (2) GPUs are locked into a hardware rasterization model that is good for gaming and other such applications – in particular triangle based depth buffering – but not for big data and ray-tracing algorithms.

Drilling down, we see that low-level standards-based raster APIs force the processing of triangles rather than visual objects. This means that all raster-based visual objects have to be expressed as a mesh of triangles where every triangle in the mesh has to be processed for visibility against a depth-buffer. While hardware optimized triangle processing can be fast – as exemplified by the success of GPUs in the gaming markets – SDVis optimized ray-tracing APIs can eliminate the triangle processing requirement altogether. This gives the SDVis library developers the freedom they need to create new ray-tracing API calls and optimized methods that can deliver algorithmic speedups far beyond what can be achieved through triangle-based hardware optimizations. This is one of several reasons why the optimized Embree and OSPRay packages are able to deliver the speedups observed on an Intel Xeon processor relative to a high-end GPU shown in Figure 1. Succinctly: we don’t play games. Instead we focus on photorealism and scientific visualization.

Of course, our SDVis approach is a natural fit for the next generation Intel Xeon Phi processor code name Knights Landing product family. Rendering, in general, is embarrassingly parallel, which provides a natural transition to the lots-of-cores parallelism of this new family of Intel Xeon Phi devices. For this reason we expect these codename Knights Landing processors to become a premiere platform for SDVis over the next few years.

Enabling Better OpenGL
Our SDVis initiative also delivers improved CPU-based OpenGL raster-graphics performance for large memory footprint scientific visualization as compared to the current standard open source CPU solution, llvmpipe in MESA3D. Figure 4 (below) shows a dramatic performance benefit on a dual socket Intel Xeon processor platform with ParaView from Kitware, Inc when using the OpenSWR path incorporated into MESA3D to render a well-known scientific data model with increasing input data sizes vs. llvmpipe.

Jeffers.Intel.3OpenSWR, with its design focus on full thread and vector parallelism for typical scientific data sets provides 29x-50x+ performance over llvmpipe.   It should be noted that llvmpipe’s primary purpose is to support the breadth of OpenGL features for each new standard version with reasonable performance across many use cases.   OpenSWR’s current focus is on supporting the most prevalent scientific visualization tools and applications, specifically, ParaView and the Visualization ToolKit from Kitware, Inc, the community open source project VisIt, and EnSight from CEI, Inc.   However, OpenSWR installs and is enabled just like any OpenGL library so no special knowledge is needed to run the supported applications.   In fact, the plan is to upstream OpenSWR to the MESA3D project allowing its use from source build to deployment to be the same MESA3D mechanisms already in place. As discussed before, for large data systems, scalability is important and early testing of OpenSWR indicates close to linear scalability when adding cores as shown in the bottom portion of Figure 3 (above).   This bodes well for allowing visual data analysts to match the data set size to the appropriate level of interactivity to best gain insight from their data visualizations.

Considering current “lessons learned” as the industry moves towards an Exascale computing future, we know that data movement is expensive in terms of runtime and power consumption. This makes in-situ visualization (which minimizes data movement by running the visualization and simulation software on the same hardware) a “must-have”. Succinctly, a picture is worth an “Exabyte”.

Current SDVis software packages like OpenSWR, Embree and OSPRay naturally support in-situ visualization as they are already designed to utilize the massive memory capacity of Intel Xeon processor and the forthcoming Intel Xeon Phi products plus, due to the excellent scaling behavior of ray-tracing algorithms like P-k-d trees and the OpenSWR OpenGL pipeline, plus these packages can run across large numbers of nodes in a compute cluster or within a computational cloud. As a result, our SDVis approach appears to be Petascale and likely Exascale capable.

In-situ visualization also provides many other advantages including the ability to immediately see the simulation results and potentially “steer” the numerical simulation while it is running. There is no need to follow a more traditional visualization workflow of: (a) simulate, (b) write to storage, (c) transfer the data to a visualization cluster and then (d) wait in a queue on the visualization cluster before being able view the results.

Application profiling has also demonstrated that the performance of memory subsystem is critical to ray-tracing performance. For this reason, we expect that the new MCDRAM memory available on some of the forthcoming Intel Xeon Phi products will provide a significant boost in performance for many rendering workloads. There is no doubt that once released, the Intel Xeon Phi processor code name Knights Landing devices will be closely scrutinized by the HPC visualization, professional rendering, and special effects communities. Unfortunately, I cannot provide performance numbers at this time except to note that our SDVis solutions are already running on a pre-production Knights Landing platform as we have demonstrated at both ISC’15 in Frankfurt and at IDF’15 in San Francisco.

Using SDVis for Non-Rendering
For those who wish to consider our SDVis approach for applications other than rendering, check out the chapter “Radio Frequency Ray-Tracing” by Christiaan Gribble and Jefferson Amstutz in High Performance Parallelism Pearls Volume 2. In this chapter – and through the example source code that is freely available on lotsofcores.com – Gribble and Amstutz demonstrated the flexibility of SDVis by adapting the Intel Embree and OSPRay packages to model the propagation of radio frequency (RF) energy in the presence of complex outdoor terrain features such as those found in urban environments. The authors state in their chapter that this capability “is critical to planning, optimizing, and analyzing wireless communication and data networks”.

jeffers.intel.headshotSo, in summary, the current performance, flexibility, and forthcoming products on the Intel Xeon processor and Intel Xeon Phi processor roadmap all reinforce Intel’s decision to follow an SDVis approach. As a result, we are able to directly address the needs of the scientific and professional rendering communities without having to fight limited memory capacity, legacy APIs, PCIe bottlenecks, and gaming raster-optimized hardware. Big memory and in-situ visualization are not luxuries, they are necessities!

Author Bio: Jim Jeffers is Engineering Manager & PE, Visualization Engineering at Intel

Footnotes:

1 Software-Defined Visualization: Fast, Flexible Solutions for Rendering Big Data” in also available in a streaming video formats

2 Software and workloads used in performance tests may have been optimized for performance only on Intel microprocessors. Performance tests, such as SYSmark* and MobileMark* , are measured using specific computer systems, components, software, operations and functions. Any change to any of those factors may cause the results to vary. You should consult other information and performance tests to assist you in fully evaluating your contemplated purchases, including the performance of that product when combined with other products. For more information go to http://www.intel.com/performance.

Subscribe to HPCwire's Weekly Update!

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

Data Vortex Users Contemplate the Future of Supercomputing

October 19, 2017

Last month (Sept. 11-12), HPC networking company Data Vortex held its inaugural users group at Pacific Northwest National Laboratory (PNNL) bringing together about 30 participants from industry, government and academia t Read more…

By Tiffany Trader

AI Self-Training Goes Forward at Google DeepMind

October 19, 2017

DeepMind, Google’s AI research organization, announced today in a blog that AlphaGo Zero, the latest evolution of AlphaGo (the first computer program to defeat a Go world champion) trained itself within three days to play Go at a superhuman level (i.e., better than any human) – and to beat the old version of AlphaGo – without leveraging human expertise, data or training. Read more…

By Doug Black

Researchers Scale COSMO Climate Code to 4888 GPUs on Piz Daint

October 17, 2017

Effective global climate simulation, sorely needed to anticipate and cope with global warming, has long been computationally challenging. Two of the major obstacles are the needed resolution and prolonged time to compute Read more…

By John Russell

HPE Extreme Performance Solutions

Transforming Genomic Analytics with HPC-Accelerated Insights

Advancements in the field of genomics are revolutionizing our understanding of human biology, rapidly accelerating the discovery and treatment of genetic diseases, and dramatically improving human health. Read more…

Student Cluster Competition Coverage New Home

October 16, 2017

Hello computer sports fans! This is the first of many (many!) articles covering the world-wide phenomenon of Student Cluster Competitions. Finally, the Student Cluster Competition coverage has come to its natural home: H Read more…

By Dan Olds

Data Vortex Users Contemplate the Future of Supercomputing

October 19, 2017

Last month (Sept. 11-12), HPC networking company Data Vortex held its inaugural users group at Pacific Northwest National Laboratory (PNNL) bringing together ab Read more…

By Tiffany Trader

AI Self-Training Goes Forward at Google DeepMind

October 19, 2017

DeepMind, Google’s AI research organization, announced today in a blog that AlphaGo Zero, the latest evolution of AlphaGo (the first computer program to defeat a Go world champion) trained itself within three days to play Go at a superhuman level (i.e., better than any human) – and to beat the old version of AlphaGo – without leveraging human expertise, data or training. Read more…

By Doug Black

Student Cluster Competition Coverage New Home

October 16, 2017

Hello computer sports fans! This is the first of many (many!) articles covering the world-wide phenomenon of Student Cluster Competitions. Finally, the Student Read more…

By Dan Olds

Intel Delivers 17-Qubit Quantum Chip to European Research Partner

October 10, 2017

On Tuesday, Intel delivered a 17-qubit superconducting test chip to research partner QuTech, the quantum research institute of Delft University of Technology (TU Delft) in the Netherlands. The announcement marks a major milestone in the 10-year, $50-million collaborative relationship with TU Delft and TNO, the Dutch Organization for Applied Research, to accelerate advancements in quantum computing. Read more…

By Tiffany Trader

Fujitsu Tapped to Build 37-Petaflops ABCI System for AIST

October 10, 2017

Fujitsu announced today it will build the long-planned AI Bridging Cloud Infrastructure (ABCI) which is set to become the fastest supercomputer system in Japan Read more…

By John Russell

HPC Chips – A Veritable Smorgasbord?

October 10, 2017

For the first time since AMD's ill-fated launch of Bulldozer the answer to the question, 'Which CPU will be in my next HPC system?' doesn't have to be 'Whichever variety of Intel Xeon E5 they are selling when we procure'. Read more…

By Dairsie Latimer

Delays, Smoke, Records & Markets – A Candid Conversation with Cray CEO Peter Ungaro

October 5, 2017

Earlier this month, Tom Tabor, publisher of HPCwire and I had a very personal conversation with Cray CEO Peter Ungaro. Cray has been on something of a Cinderell Read more…

By Tiffany Trader & Tom Tabor

Intel Debuts Programmable Acceleration Card

October 5, 2017

With a view toward supporting complex, data-intensive applications, such as AI inference, video streaming analytics, database acceleration and genomics, Intel i Read more…

By Doug Black

Reinders: “AVX-512 May Be a Hidden Gem” in Intel Xeon Scalable Processors

June 29, 2017

Imagine if we could use vector processing on something other than just floating point problems.  Today, GPUs and CPUs work tirelessly to accelerate algorithms Read more…

By James Reinders

NERSC Scales Scientific Deep Learning to 15 Petaflops

August 28, 2017

A collaborative effort between Intel, NERSC and Stanford has delivered the first 15-petaflops deep learning software running on HPC platforms and is, according Read more…

By Rob Farber

Oracle Layoffs Reportedly Hit SPARC and Solaris Hard

September 7, 2017

Oracle’s latest layoffs have many wondering if this is the end of the line for the SPARC processor and Solaris OS development. As reported by multiple sources Read more…

By John Russell

US Coalesces Plans for First Exascale Supercomputer: Aurora in 2021

September 27, 2017

At the Advanced Scientific Computing Advisory Committee (ASCAC) meeting, in Arlington, Va., yesterday (Sept. 26), it was revealed that the "Aurora" supercompute Read more…

By Tiffany Trader

How ‘Knights Mill’ Gets Its Deep Learning Flops

June 22, 2017

Intel, the subject of much speculation regarding the delayed, rewritten or potentially canceled “Aurora” contract (the Argonne Lab part of the CORAL “ Read more…

By Tiffany Trader

Google Releases Deeplearn.js to Further Democratize Machine Learning

August 17, 2017

Spreading the use of machine learning tools is one of the goals of Google’s PAIR (People + AI Research) initiative, which was introduced in early July. Last w Read more…

By John Russell

GlobalFoundries Puts Wind in AMD’s Sails with 12nm FinFET

September 24, 2017

From its annual tech conference last week (Sept. 20), where GlobalFoundries welcomed more than 600 semiconductor professionals (reaching the Santa Clara venue Read more…

By Tiffany Trader

Graphcore Readies Launch of 16nm Colossus-IPU Chip

July 20, 2017

A second $30 million funding round for U.K. AI chip developer Graphcore sets up the company to go to market with its “intelligent processing unit” (IPU) in Read more…

By Tiffany Trader

Leading Solution Providers

Nvidia Responds to Google TPU Benchmarking

April 10, 2017

Nvidia highlights strengths of its newest GPU silicon in response to Google's report on the performance and energy advantages of its custom tensor processor. Read more…

By Tiffany Trader

Amazon Debuts New AMD-based GPU Instances for Graphics Acceleration

September 12, 2017

Last week Amazon Web Services (AWS) streaming service, AppStream 2.0, introduced a new GPU instance called Graphics Design intended to accelerate graphics. The Read more…

By John Russell

EU Funds 20 Million Euro ARM+FPGA Exascale Project

September 7, 2017

At the Barcelona Supercomputer Centre on Wednesday (Sept. 6), 16 partners gathered to launch the EuroEXA project, which invests €20 million over three-and-a-half years into exascale-focused research and development. Led by the Horizon 2020 program, EuroEXA picks up the banner of a triad of partner projects — ExaNeSt, EcoScale and ExaNoDe — building on their work... Read more…

By Tiffany Trader

Delays, Smoke, Records & Markets – A Candid Conversation with Cray CEO Peter Ungaro

October 5, 2017

Earlier this month, Tom Tabor, publisher of HPCwire and I had a very personal conversation with Cray CEO Peter Ungaro. Cray has been on something of a Cinderell Read more…

By Tiffany Trader & Tom Tabor

Cray Moves to Acquire the Seagate ClusterStor Line

July 28, 2017

This week Cray announced that it is picking up Seagate's ClusterStor HPC storage array business for an undisclosed sum. "In short we're effectively transitioning the bulk of the ClusterStor product line to Cray," said CEO Peter Ungaro. Read more…

By Tiffany Trader

Intel Launches Software Tools to Ease FPGA Programming

September 5, 2017

Field Programmable Gate Arrays (FPGAs) have a reputation for being difficult to program, requiring expertise in specialty languages, like Verilog or VHDL. Easin Read more…

By Tiffany Trader

IBM Advances Web-based Quantum Programming

September 5, 2017

IBM Research is pairing its Jupyter-based Data Science Experience notebook environment with its cloud-based quantum computer, IBM Q, in hopes of encouraging a new class of entrepreneurial user to solve intractable problems that even exceed the capabilities of the best AI systems. Read more…

By Alex Woodie

HPC Chips – A Veritable Smorgasbord?

October 10, 2017

For the first time since AMD's ill-fated launch of Bulldozer the answer to the question, 'Which CPU will be in my next HPC system?' doesn't have to be 'Whichever variety of Intel Xeon E5 they are selling when we procure'. Read more…

By Dairsie Latimer

  • arrow
  • Click Here for More Headlines
  • arrow
Share This