GOCAD datasets can be rendered 13 times faster using NVIDIA GPUs. (Images courtesy of NVIDIA)

One of the most vexing computational problems in oil and gas production is reservoir modeling and seismic analysis. With post-stack seismic volume data sets in excess of 100 GB, single workstations can no longer process and display interpretations fast enough. Even though the number of processors per machine is increasing, the limiting factors are input/output speed, CPU clock speed and graphics card memory. The challenge in the field is to enable these computations across computing clusters while keeping the physical footprint of these clusters as low as possible.

A combination of new software and hardware technologies has emerged that is capable of taking on this challenge. Scalable Graphics, a startup launched in 2007 by researchers from INRIA, France’s computer science research institute, has developed clustered software that accelerates the Paradigm GOCAD software suite running on NVIDIA hardware.

GPU servers for visual computing

Undergirding the higher-level software solutions is a revolution in graphics processing unit (GPU) computing. GPUs, long familiar to the oil and gas industry, have traditionally been used to fill pixels on computer screens, but at their core they are essentially massively parallel calculating engines. Until recently, programming GPUs has been an arcane art, requiring knowledge of the OpenGL graphics API and lacking basic development and debugging tools. But just about a year ago, GPU-maker NVIDIA released a GPU compiler for the C programming language. Called CUDA, this development environment has eliminated the need for OpenGL programming and enabled GPU programmers to use standard development tools and debuggers.

This unlocking of the computational potential of GPUs has coincided with a change in the form factor and scalability of GPUs. Once restricted to desktop machines and workstations, one per system, GPUs are now available in a wide variety of configurations, from multiple GPUs within a single workstation to deskside systems that add multiple GPUs to a workstation to 1U rack-mounted servers that contain multiple GPUs for use in clusters. GPU computing is now scalable from the single system on the lab bench all the way to the back-room server cluster.

Accelerating GOCAD

Paradigm, Scalable Graphics and NVIDIA have been working together on two different initiatives to accelerate GOCAD. The first of these is an optimization of how GOCAD handles graphics, improving existing OpenGL performance without major modifications to the application, distributing the OpenGL scene to the multiple GPUs automatically.

“By scaling Paradigm’s GOCAD application across multiple GPUs within an NVIDIA Quadro Plex S4 server, it’s possible to render a data set 13 times faster than performing the same operation on a single GPU configuration,” said Scalable Graphics CEO Xavier Cavin. “Not only does this offer huge time-savings during interpretation, but because the system uses high-performance, off-the-shelf components, it’s also very cost effective.”

In the second initiative, the three companies are taking advantage of the changes in GPU computing to enable the high-performance, volume-interpretation module in Paradigm’s familiar GOCAD Suite to run across a number of clustered, GPU-computing nodes. With the new system, seismic interpreters can perform real-time visualization of massive 3-D seismic datasets, significantly accelerating work processes, reducing cycle time, increasing throughput and allowing all members of an asset team to review the results in real time. And real-time performance can be achieved without compromising either the data or the image resolution.

This clustered version of GOCAD can manipulate large volumes and models, reading the data from disk, processing and interpreting it, and then rendering the results to the screen in real time. Through the use of a bricked seismic data format and memory roaming technology, a single, multi-GPU workstation can handle datasets up to 30 GB in size in real time without degradation of the data. The solution is scalable to clusters, enabling the processing of datasets 100 GB or larger. Computational tasks are shared between the CPUs and GPUs to enable the most efficient use of available processing power. Linear performance is directly correlated to the number of cluster nodes. Adding additional nodes can increase the size of the data to be visualized or to visualize existing data faster.

“The clustered GPU solution can display 4 GB slices from 100 GB volume models at 60 frames per second,” said Paradigm chief architect Jean Claude Dulac. “The state-of-the-art GPUs are the key. Their processing and rendering power is what makes the difference.”

The system intelligently distributes the volume data to the memory within each node of the cluster, reducing client memory to a few megabytes and allowing the use of a lightweight client system. This also reduces the memory usage of each cluster node and allows multiple clients to share the same cluster hardware.

“We can show very clearly the power of scaling 3-D applications over multiple GPUs by running the same application and dataset using two separate configurations,” said Cavin. The first is a workstation equipped with a single NVIDIA GPU. The second is a rack-mounted workstation and an NVIDIA Quadro Plex S4 server with 4 GPUs, connected by a Gigabit Ethernet network connection to a thin client. Both configurations are loaded with a salt dome model made up of 32 million triangles.

“The results speak for themselves,” said Tyler Worden, oil and gas market development manager for NVIDIA. “On the single GPU configuration, GOCAD renders a 32-million-triangle salt dome model at below one frame per second. Using four GPUs, the GOCAD/Scalable Graphics solution renders the model at 13 frames per second — super-linear scalability.”

This solution has the added advantage of coming at a relatively low cost, only a fraction of the cost of a traditional visualization system. Built with high-performance commercial-off-the-shelf components, the systems required are easily acquired — often running on existing equipment — and are easily upgraded and maintained. Training costs are similarly low as the system uses the familiar GOCAD user interface.

The solution, which is currently a prototype, was on display at the SEG 2007 conference in San Antonio this past September. Paradigm and Scalable Graphics plan to have a commercial version available in the near future.

The Paradigm and Scalable Graphics collaboration has produced a centralized and scalable CPU and GPU resource available to multiple thin clients. It is one of the first solutions for processing and visualizing oil and gas models in real-time to take advantage of the new computational capabilities and configurations of the GPU. Given its success at achieving its goals, it won’t be the last.