Seismic data processing is a very important tool for revealing geological structures, lithology properties, and fluid contents from seismic field data. It is also a computationally intensive operation when applied to the multiple terabytes of data acquired in a modern 3D survey. In many cases, the processing steps consist of applying relatively simple algorithms to these massive datasets. To obtain results in a timely fashion, the data is commonly processed on a parallel computer capable of high floatingpoint operations per second (flops). In this paper, we show that it is decidedly feasible to run workhorse seismic filtering and attribute calculations using only a modern 3D graphics card in a desktop, and at sustained interactive speeds previously requiring large, expensive computer systems and clusters. In particular, we describe graphical processing unit (GPU) programs that we wrote to compute three useful instantaneous seismic attributes: Phase, Frequency, and Reflection Strength. These programs resulted in up to 100 times faster performance than CPUs, taking only 6 to 7 seconds to generate attributes for a 1GB seismic volume.
The normal seismic workflow consists of separate preprocessing steps to sharpen signals and suppress noise, migration to image focused reflectors, and attribute generation, such as trace-based instantaneous attributes and gather-based AVO attributes, to produce one or more interpretation volumes. After applying these seismic data processes, the results are loaded into an interactive application on a workstation, and various interpretations are made from the results. However, despite glossy advertisements in E&P industry trade magazines, completely satisfactory initial processing results are rare. For example, during the interpretation, the geology/lithology structures are made more detailed and accurate, resulting in the creation of a better velocity model. Using this new model, some or all of the timeconsuming pre-interpretation processing and attribute generation is redone. Because such iterations are an inherent part of any quality seismic workflow, the faster and more interactively it can be performed, the better the result. In the case of seismic attributes, one would like to test many well-defined attributes, or even to invent new attributes that enhance a particular seismic feature/pattern/signature in the region of interest. Quick production of a seismic attribute at an interactive speed allows geologists and geophysicists to freely explore various possibilities while still meeting those inevitable internal and external deadlines. Achieving such interactivity with the computing resources typically available to a geoscientist presents a massive challenge. It is well known that significant speedup can often be obtained by parallelizing a seismic processing algorithm. Multi-core CPUs are more accessible than ever and a parallelized algorithm may improve turnaround twofold or more. But this scale of speedup may not be sufficient for large seismic datasets. Graphics hardware design has advanced to massively parallelized processors that greatly speed up complex 3D geometry computations, such as geometry transformation and rasterization. Workstations for geologists and geophysicists are currently equipped with such high end graphics hardware. It may be practical to achieve interactivity if a desired seismic process can be run on such high throughput graphics hardware.