The Kirchhoff 3-D migration algorithm I wrote for both the conventional and anti-aliased migrations in this study are implemented on a 32-node parallel processing Connection Machine (CM5). The algorithm is similar in structure to that of Lumley and Biondi (1991), except for some modifications to take advantage of vector unit processing, streamlining for this poststack case, and extensions to incorporate the anti-aliasing option with local triangular filtering.
To take advantage of parallelism, a large cube of input trace data is loaded and aligned in-processor with the output migrated image cube. Then the traces are migrated in parallel into the image volume, with serial loops running over pseudodepth , and circular processor-to-processor data shifts using the CM Fortran 90 intrinsic cshift. The conventional algorithm runs at a total average sustained rate of about 500 Mflop/s, and the anti-aliased version runs at about 350 Mflop/s. These figures include all i/o and frequent saving to disk of partial migration results (my own ad hoc checkpoint restart solution). The migration currently processes 30,000 poststack input traces into an output cube of dimensions 300x100x512 in about 20 CPU hours for the conventional migration method, compared to a total of about 30 CPU hours for the anti-aliased migration method.