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!

Glimpses of Today’s Total Solar Eclipse

August 21, 2017

Here are a few arresting images posted by NASA of today’s total solar eclipse. Such astronomical events have always captured our imagination and it’s not hard to understand why such occurrences were often greeted wit Read more…

By John Russell

Tech Giants Outline Battle Plans for Future HPC Market

August 21, 2017

Four companies engaged in a cage fight for leadership in the emerging HPC market of the 2020s are, despite deep differences in some areas, in violent agreement on at least one thing: the power consumption and latency pen Read more…

By Doug Black

Geospatial Data Research Leverages GPUs

August 17, 2017

MapD Technologies, the GPU-accelerated database specialist, said it is working with university researchers on leveraging graphics processors to advance geospatial analytics. The San Francisco-based company is collabor Read more…

By George Leopold

HPE Extreme Performance Solutions

Leveraging Deep Learning for Fraud Detection

Advancements in computing technologies and the expanding use of e-commerce platforms have dramatically increased the risk of fraud for financial services companies and their customers. Read more…

Intel, NERSC and University Partners Launch New Big Data Center

August 17, 2017

A collaboration between the Department of Energy’s National Energy Research Scientific Computing Center (NERSC), Intel and five Intel Parallel Computing Centers (IPCCs) has resulted in a new Big Data Center (BDC) that Read more…

By Linda Barney

Tech Giants Outline Battle Plans for Future HPC Market

August 21, 2017

Four companies engaged in a cage fight for leadership in the emerging HPC market of the 2020s are, despite deep differences in some areas, in violent agreement Read more…

By Doug Black

Microsoft Bolsters Azure With Cloud HPC Deal

August 15, 2017

Microsoft has acquired cloud computing software vendor Cycle Computing in a move designed to bring orchestration tools along with high-end computing access capabilities to the cloud. Terms of the acquisition were not disclosed. Read more…

By George Leopold

HPE Ships Supercomputer to Space Station, Final Destination Mars

August 14, 2017

With a manned mission to Mars on the horizon, the demand for space-based supercomputing is at hand. Today HPE and NASA sent the first off-the-shelf HPC system i Read more…

By Tiffany Trader

AMD EPYC Video Takes Aim at Intel’s Broadwell

August 14, 2017

Let the benchmarking begin. Last week, AMD posted a YouTube video in which one of its EPYC-based systems outperformed a ‘comparable’ Intel Broadwell-based s Read more…

By John Russell

Deep Learning Thrives in Cancer Moonshot

August 8, 2017

The U.S. War on Cancer, certainly a worthy cause, is a collection of programs stretching back more than 40 years and abiding under many banners. The latest is t Read more…

By John Russell

IBM Raises the Bar for Distributed Deep Learning

August 8, 2017

IBM is announcing today an enhancement to its PowerAI software platform aimed at facilitating the practical scaling of AI models on today’s fastest GPUs. Scal Read more…

By Tiffany Trader

IBM Storage Breakthrough Paves Way for 330TB Tape Cartridges

August 3, 2017

IBM announced yesterday a new record for magnetic tape storage that it says will keep tape storage density on a Moore's law-like path far into the next decade. Read more…

By Tiffany Trader

AMD Stuffs a Petaflops of Machine Intelligence into 20-Node Rack

August 1, 2017

With its Radeon “Vega” Instinct datacenter GPUs and EPYC “Naples” server chips entering the market this summer, AMD has positioned itself for a two-head 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

Nvidia’s Mammoth Volta GPU Aims High for AI, HPC

May 10, 2017

At Nvidia's GPU Technology Conference (GTC17) in San Jose, Calif., this morning, CEO Jensen Huang announced the company's much-anticipated Volta architecture a Read more…

By Tiffany Trader

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

Russian Researchers Claim First Quantum-Safe Blockchain

May 25, 2017

The Russian Quantum Center today announced it has overcome the threat of quantum cryptography by creating the first quantum-safe blockchain, securing cryptocurrencies like Bitcoin, along with classified government communications and other sensitive digital transfers. Read more…

By Doug Black

Quantum Bits: D-Wave and VW; Google Quantum Lab; IBM Expands Access

March 21, 2017

For a technology that’s usually characterized as far off and in a distant galaxy, quantum computing has been steadily picking up steam. Just how close real-wo Read more…

By John Russell

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

Groq This: New AI Chips to Give GPUs a Run for Deep Learning Money

April 24, 2017

CPUs and GPUs, move over. Thanks to recent revelations surrounding Google’s new Tensor Processing Unit (TPU), the computing world appears to be on the cusp of Read more…

By Alex Woodie

HPC Compiler Company PathScale Seeks Life Raft

March 23, 2017

HPCwire has learned that HPC compiler company PathScale has fallen on difficult times and is asking the community for help or actively seeking a buyer for its a Read more…

By Tiffany Trader

Leading Solution Providers

Trump Budget Targets NIH, DOE, and EPA; No Mention of NSF

March 16, 2017

President Trump’s proposed U.S. fiscal 2018 budget issued today sharply cuts science spending while bolstering military spending as he promised during the cam Read more…

By John Russell

Google Debuts TPU v2 and will Add to Google Cloud

May 25, 2017

Not long after stirring attention in the deep learning/AI community by revealing the details of its Tensor Processing Unit (TPU), Google last week announced the Read more…

By John Russell

CPU-based Visualization Positions for Exascale Supercomputing

March 16, 2017

In this contributed perspective piece, Intel’s Jim Jeffers makes the case that CPU-based visualization is now widely adopted and as such is no longer a contrarian view, but is rather an exascale requirement. Read more…

By Jim Jeffers, Principal Engineer and Engineering Leader, Intel

Six Exascale PathForward Vendors Selected; DoE Providing $258M

June 15, 2017

The much-anticipated PathForward awards for hardware R&D in support of the Exascale Computing Project were announced today with six vendors selected – AMD Read more…

By John Russell

Top500 Results: Latest List Trends and What’s in Store

June 19, 2017

Greetings from Frankfurt and the 2017 International Supercomputing Conference where the latest Top500 list has just been revealed. Although there were no major Read more…

By Tiffany Trader

IBM Clears Path to 5nm with Silicon Nanosheets

June 5, 2017

Two years since announcing the industry’s first 7nm node test chip, IBM and its research alliance partners GlobalFoundries and Samsung have developed a proces Read more…

By Tiffany Trader

Messina Update: The US Path to Exascale in 16 Slides

April 26, 2017

Paul Messina, director of the U.S. Exascale Computing Project, provided a wide-ranging review of ECP’s evolving plans last week at the HPC User Forum. Read more…

By John Russell

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

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