|
||
|
Wave Imaging Technology Inc. was founded in June, 2007 by Joe Higginbotham.
He was joined by Mike Rathbun, who sadly died
in September, 2007. Morgan Brown joined as the second active partner
in November, 2007, and was soon followed by Bob Clapp as Technical Adviser.
The birth of SeisPakTM
Although WIT Inc. itself is new, its operations are based on the
SeisPakTM processing system, which has a
long background that began in 1984. SeisPak was created to support research
on algorithms for seismic data processing. SeisPak was intended to provide
a friendly environment for developers and was also intended to be easy to
maintain and easy to move to new hardware. This was important because good
software was being lost when companies moved to new hardware and operating
system environments. SeisPak succeeded and lives today largely because the
industry moved to the "Unix" type operating systems that were reasonably
consistent over a variety of hardware platforms.
At first SeisPak simply executed a sequence of programs. This gave the
developer great freedom because the executable program could be written in
any computer language as long as it was able to read the seismic format
used by the SeisPak system. A library of programs was available, written
in the Fortran language, to accomplish this task. These library programs
could also be called from the "C" programming language. Since the data
format was clearly defined and published, algorithms to read and write
the format could be written in any language.
From piping to parallelism
Later it was realized that there were many cases in which a sequence of
seismic operations could act on a single seismic gather without having
to write to disk after each operation. This required that the SeisPak
system tie the seismic operations together under a main program which
would pass the seismic gather from one operation to another. This action
is called "piping" of data. This piping option was added to SeisPak, giving
the programmer two ways to implement seismic algorithms. The older method
was extremely flexible while the new method provided the extended service
of piping. The "piping" in SeisPak is not implemented using operating
system pipes but is programmed directly into the SeisPak system -
important for support of automatic parallelism as mentioned below.
In the early 1990's the industry was in the middle of a move to parallel processing. There were parallel algorithms that depended on the availability of shared memory across many compute nodes and what was called a "symmetric multi-processor operating system." Another scheme for parallel processing was the "distributed" viewpoint in which each machine was viewed as a separate compute unit that communicated with other compute units via the network. Data was moved between the machines by the use of message passing schemes. One of the first of these schemes to gain wide use was the "Parallel Virtual Machine" software (PVM) which was created at the University of Tennessee and Oak Ridge National Laboratory. This software was free and as development continued through the 1990's, it became very stable. The first implementations of another popular message passing scheme called MPI were made on top of PVM. With PVM available the goal for SeisPak became adding automatic parallelism for a certain class of algorithms that used the SeisPak system created main program to support piping. This was accomplished and many of the seismic algorithms that already used the piping support of SeisPak, automatically began to run in parallel. This opened up new options for the use of these programs. For example, a program that automatically scanned many paths to find an optimal stacking path along which to sum data might use 25 paths if run serially but might try 250 or even 1000 stacking paths per time sample when run in parallel.
There are three important features of the parallel processing supported by the
SeisPak system. The first is that it does not inherently use any disk space on
the slave nodes - use of local disk is optional. The second and most important
feature of the parallelism in SeisPak is that it supports fault tolerance and
load balancing in cases where the number of units of data to be processed is
large compared to the number of compute nodes in use. The third important
feature is that the system can support a "pseudogather" such as a bundle of
frequencies.
SeisPak Applications
SeisPak contains many of the standard algorithms used in processing seismic
data as well as a number of wave-equation algorithms for imaging seismic data.
One of the most important imaging algorithm available is a PSPI algorithm that
will perform 2D or 3D shot gather migration SGM (sometimes called shot profile
migration, SPM). This algorithm will operate over rough topography which also
enables it to perform imaging of 2D and 3D VSP data. The algorithm is also able
to image at angles other than vertical. This enables imaging of very steep
reflectors or even overturned reflectors by imaging from an angle at which
these reflectors appear to dip at angles less than 80 degrees. This algorithm
also works in the presence of a laterally varying VTI anisotropic medium.
Another very important algorithm in the system is the acoustic modeling algorithm that will simulate in either a constant density medium or a variable density medium and in either 2D or 3D. This algorithm has been used to simulate full 3D seismic surveys in cases where the target of interest was less than 5000 meters deep. In this case a billion seismic traces were simulated over a variable velocity and density medium. Another use of the simulation software is in the design of an offset VSP survey in the presence of salt. There are many cases in the Gulf of Mexico and elsewhere that have so much high velocity salt present that the first arrival at the well from an offset source may be from a headwave traveling in salt. In the presence of widespread salt it is important to simulate the survey to be sure that the first arrivals will come through the sediments. |