WO2011146161A1 - Method and system for checkpointing during simulations - Google Patents
Method and system for checkpointing during simulations Download PDFInfo
- Publication number
- WO2011146161A1 WO2011146161A1 PCT/US2011/028350 US2011028350W WO2011146161A1 WO 2011146161 A1 WO2011146161 A1 WO 2011146161A1 US 2011028350 W US2011028350 W US 2011028350W WO 2011146161 A1 WO2011146161 A1 WO 2011146161A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- correlation
- checkpoint
- data
- time
- memory
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 253
- 238000004088 simulation Methods 0.000 title claims abstract description 119
- 238000003860 storage Methods 0.000 claims abstract description 186
- 230000000644 propagated effect Effects 0.000 claims abstract description 36
- 239000000872 buffer Substances 0.000 claims description 153
- 238000013508 migration Methods 0.000 claims description 50
- 230000005012 migration Effects 0.000 claims description 50
- 238000004422 calculation algorithm Methods 0.000 claims description 31
- 238000003384 imaging method Methods 0.000 claims description 31
- 238000005094 computer simulation Methods 0.000 claims description 27
- 230000005284 excitation Effects 0.000 claims description 17
- 230000006870 function Effects 0.000 claims description 15
- 238000012545 processing Methods 0.000 claims description 14
- 230000002596 correlated effect Effects 0.000 claims description 9
- 230000001902 propagating effect Effects 0.000 claims description 8
- 238000013500 data storage Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 description 36
- 230000002441 reversible effect Effects 0.000 description 33
- 238000010586 diagram Methods 0.000 description 30
- 239000011435 rock Substances 0.000 description 27
- 229930195733 hydrocarbon Natural products 0.000 description 24
- 150000002430 hydrocarbons Chemical class 0.000 description 24
- 238000004364 calculation method Methods 0.000 description 22
- 239000004215 Carbon black (E152) Substances 0.000 description 16
- 239000000203 mixture Substances 0.000 description 15
- 239000002245 particle Substances 0.000 description 15
- 230000015572 biosynthetic process Effects 0.000 description 14
- 238000005755 formation reaction Methods 0.000 description 14
- 230000008901 benefit Effects 0.000 description 13
- 238000009472 formulation Methods 0.000 description 13
- 150000003839 salts Chemical class 0.000 description 13
- 238000002474 experimental method Methods 0.000 description 12
- 239000012530 fluid Substances 0.000 description 12
- 230000000875 corresponding effect Effects 0.000 description 11
- 238000004891 communication Methods 0.000 description 8
- 238000005457 optimization Methods 0.000 description 8
- 230000004069 differentiation Effects 0.000 description 7
- YTAHJIFKAKIKAV-XNMGPUDCSA-N [(1R)-3-morpholin-4-yl-1-phenylpropyl] N-[(3S)-2-oxo-5-phenyl-1,3-dihydro-1,4-benzodiazepin-3-yl]carbamate Chemical compound O=C1[C@H](N=C(C2=C(N1)C=CC=C2)C1=CC=CC=C1)NC(O[C@H](CCN1CCOCC1)C1=CC=CC=C1)=O YTAHJIFKAKIKAV-XNMGPUDCSA-N 0.000 description 6
- 238000003491 array Methods 0.000 description 6
- 229910052799 carbon Inorganic materials 0.000 description 6
- 230000000694 effects Effects 0.000 description 6
- 230000001965 increasing effect Effects 0.000 description 6
- 238000004519 manufacturing process Methods 0.000 description 6
- 239000003921 oil Substances 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 6
- 238000010521 absorption reaction Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 239000000295 fuel oil Substances 0.000 description 5
- 230000035699 permeability Effects 0.000 description 5
- 239000007787 solid Substances 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 4
- 239000004927 clay Substances 0.000 description 4
- 230000002829 reductive effect Effects 0.000 description 4
- 229910052717 sulfur Inorganic materials 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 230000006835 compression Effects 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 239000011148 porous material Substances 0.000 description 3
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 3
- IJGRMHOSHXDMSA-UHFFFAOYSA-N Atomic nitrogen Chemical compound N#N IJGRMHOSHXDMSA-UHFFFAOYSA-N 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 2
- 239000010426 asphalt Substances 0.000 description 2
- -1 chalk Substances 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000007598 dipping method Methods 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 239000007789 gas Substances 0.000 description 2
- 230000001976 improved effect Effects 0.000 description 2
- 230000000670 limiting effect Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000005055 memory storage Effects 0.000 description 2
- VNWKTOKETHGBQD-UHFFFAOYSA-N methane Chemical compound C VNWKTOKETHGBQD-UHFFFAOYSA-N 0.000 description 2
- 230000036961 partial effect Effects 0.000 description 2
- 238000012805 post-processing Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000002310 reflectometry Methods 0.000 description 2
- 238000004062 sedimentation Methods 0.000 description 2
- 230000008093 supporting effect Effects 0.000 description 2
- 239000003643 water by type Substances 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- BVKZGUZCCUSVTD-UHFFFAOYSA-L Carbonate Chemical compound [O-]C([O-])=O BVKZGUZCCUSVTD-UHFFFAOYSA-L 0.000 description 1
- 208000035126 Facies Diseases 0.000 description 1
- 235000019738 Limestone Nutrition 0.000 description 1
- XQCFHQBGMWUEMY-ZPUQHVIOSA-N Nitrovin Chemical compound C=1C=C([N+]([O-])=O)OC=1\C=C\C(=NNC(=N)N)\C=C\C1=CC=C([N+]([O-])=O)O1 XQCFHQBGMWUEMY-ZPUQHVIOSA-N 0.000 description 1
- 235000015076 Shorea robusta Nutrition 0.000 description 1
- 244000166071 Shorea robusta Species 0.000 description 1
- NINIDFKCEFEMDL-UHFFFAOYSA-N Sulfur Chemical compound [S] NINIDFKCEFEMDL-UHFFFAOYSA-N 0.000 description 1
- 230000004308 accommodation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- QVGXLLKOCUKJST-UHFFFAOYSA-N atomic oxygen Chemical compound [O] QVGXLLKOCUKJST-UHFFFAOYSA-N 0.000 description 1
- 230000002238 attenuated effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000009529 body temperature measurement Methods 0.000 description 1
- 238000009933 burial Methods 0.000 description 1
- 150000004649 carbonic acid derivatives Chemical class 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 239000003245 coal Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000011157 data evaluation Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000001066 destructive effect Effects 0.000 description 1
- 238000005474 detonation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 229910003460 diamond Inorganic materials 0.000 description 1
- 239000010432 diamond Substances 0.000 description 1
- 238000009792 diffusion process Methods 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 238000013213 extrapolation Methods 0.000 description 1
- 229910052736 halogen Inorganic materials 0.000 description 1
- 150000002367 halogens Chemical class 0.000 description 1
- 125000004435 hydrogen atom Chemical group [H]* 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 229910052500 inorganic mineral Inorganic materials 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000000155 isotopic effect Effects 0.000 description 1
- 239000006028 limestone Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 229910052751 metal Inorganic materials 0.000 description 1
- 239000011707 mineral Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 239000003345 natural gas Substances 0.000 description 1
- 229910052757 nitrogen Inorganic materials 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 229910052760 oxygen Inorganic materials 0.000 description 1
- 239000001301 oxygen Substances 0.000 description 1
- 238000001615 p wave Methods 0.000 description 1
- 230000000149 penetrating effect Effects 0.000 description 1
- 230000010363 phase shift Effects 0.000 description 1
- 229910052698 phosphorus Inorganic materials 0.000 description 1
- 230000010287 polarization Effects 0.000 description 1
- 238000011002 quantification Methods 0.000 description 1
- 238000007670 refining Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000009745 resin transfer moulding Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000004576 sand Substances 0.000 description 1
- 230000035939 shock Effects 0.000 description 1
- 239000011593 sulfur Substances 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01V—GEOPHYSICS; GRAVITATIONAL MEASUREMENTS; DETECTING MASSES OR OBJECTS; TAGS
- G01V1/00—Seismology; Seismic or acoustic prospecting or detecting
- G01V1/28—Processing seismic data, e.g. for interpretation or for event detection
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01V—GEOPHYSICS; GRAVITATIONAL MEASUREMENTS; DETECTING MASSES OR OBJECTS; TAGS
- G01V99/00—Subject matter not provided for in other groups of this subclass
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01V—GEOPHYSICS; GRAVITATIONAL MEASUREMENTS; DETECTING MASSES OR OBJECTS; TAGS
- G01V1/00—Seismology; Seismic or acoustic prospecting or detecting
- G01V1/28—Processing seismic data, e.g. for interpretation or for event detection
- G01V1/282—Application of seismic models, synthetic seismograms
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01V—GEOPHYSICS; GRAVITATIONAL MEASUREMENTS; DETECTING MASSES OR OBJECTS; TAGS
- G01V1/00—Seismology; Seismic or acoustic prospecting or detecting
- G01V1/001—Acoustic presence detection
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01V—GEOPHYSICS; GRAVITATIONAL MEASUREMENTS; DETECTING MASSES OR OBJECTS; TAGS
- G01V1/00—Seismology; Seismic or acoustic prospecting or detecting
- G01V1/003—Seismic data acquisition in general, e.g. survey design
- G01V1/005—Seismic data acquisition in general, e.g. survey design with exploration systems emitting special signals, e.g. frequency swept signals, pulse sequences or slip sweep arrangements
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01V—GEOPHYSICS; GRAVITATIONAL MEASUREMENTS; DETECTING MASSES OR OBJECTS; TAGS
- G01V1/00—Seismology; Seismic or acoustic prospecting or detecting
- G01V1/28—Processing seismic data, e.g. for interpretation or for event detection
- G01V1/30—Analysis
- G01V1/301—Analysis for determining seismic cross-sections or geostructures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01V—GEOPHYSICS; GRAVITATIONAL MEASUREMENTS; DETECTING MASSES OR OBJECTS; TAGS
- G01V2210/00—Details of seismic processing or analysis
- G01V2210/60—Analysis
- G01V2210/67—Wave propagation modeling
- G01V2210/675—Wave equation; Green's functions
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01V—GEOPHYSICS; GRAVITATIONAL MEASUREMENTS; DETECTING MASSES OR OBJECTS; TAGS
- G01V2210/00—Details of seismic processing or analysis
- G01V2210/60—Analysis
- G01V2210/67—Wave propagation modeling
- G01V2210/679—Reverse-time modeling or coalescence modelling, i.e. starting from receivers
Definitions
- the invention relates generally to the field of geophysical prospecting, and more particularly to seismic data processing. Specifically, the invention relates to a method and system for storing checkpoints to improve the efficiency of computer simulations that access simulation data in reverse time order, such as in migration of seismic data.
- Many parameter estimation, inversion and imaging methods compute a forward simulation applying a sequence of steps extrapolating forward in time from an initial state.
- the associated inverse or imaging method applies an adjoint operator stepping backwards in time from a final time state.
- the method may then generate information about the system by cross correlating the forward simulation with the adjoint simulation at the same time steps.
- the information generated may then be used to improve the simulation parameters used to fit the available data, as well for other purposes.
- the information may be used to generate a gradient or a Hessian relating changes in an objective function to changes in the simulation parameters.
- the information may be used to create an image as done in Reverse Time Depth Migration (RTM).
- RTM Reverse Time Depth Migration
- RTM Reverse Time depth Migration
- a forward simulation wavefield state termed herein a full state checkpoint
- a full state checkpoint may be defined as including all the information needed to either perform a cross-correlation or to restart a forward simulation from a given time step.
- Full state checkpoints can then be saved at a smaller number of carefully chosen time steps so that the forward simulation can be restarted from the saved checkpoints and propagated to desired time steps.
- the term checkpoint may also be used to refer to the aforementioned carefully chosen time steps, as contrasted with data saved at such time steps.
- the forward simulation can be recomputed at time steps in reverse time order as needed starting from the saved checkpoints.
- the checkpoint memory is reused for new checkpoints whenever it is no longer needed. The trade-off is performing more computation to minimize the input/output and storage requirements. This technique may be useful whenever the data sizes involved are much larger than the memory storage available.
- the checkpointing method may be particularly important for RTM that includes the physics of wavefield attenuation (e.g., imaging using both P-waves and S-waves), as the time reversal strategy of forward simulation using wavefield checkpointing is always stable.
- an alternative RTM implementation strategy of saving boundary values and the final wavefield state and doing reverse time extrapolation of the source wavefield simulation can be unstable. Further, the instability in this technique makes it an inappropriate application strategy when attenuation is included as part of the physics in the forward simulation.
- An exemplary embodiment of the present techniques provides a method for lowering a computational cost of a computer simulation.
- the method includes performing a checkpointing strategy, wherein the checkpointing strategy includes storing a correlation checkpoint (sometimes called a "correlation buffer” herein) at a time step, wherein the correlation checkpoint comprises data used to correlate a forward propagated value generated by the computer simulation, and wherein the computer simulation cannot be restarted from the values stored in the correlation checkpoint.
- the checkpointing strategy also includes allocating a storage space for the correlation checkpoint, and running the computer simulation at each of a plurality of time steps. At each of the plurality of time steps a backwards propagated value from measured data is correlated to the forward propagated value from the computer simulation. The forward propagated value is stored in the correlation checkpoint.
- the method may also include storing a full state checkpoint, and restarting the simulation from the full state checkpoint. Further, the method may include determining an optimum location for storing a checkpoint, wherein the optimum location is storage space allocated in a graphics processor unit (GPU) memory, a random access memory (RAM), a RAM disk, a disk drive, or any combinations thereof. The determination of the optimum location is based, at least in part, on the access speed of the storage space.
- the storage space used for the correlation checkpoint may be less than a storage space used for a full state checkpoint.
- Optimizing the checkpointing strategy may include determining a computing cost associated with storing the correlation checkpoint.
- the computing cost may be minimized based, at least in part, on an access speed for each of a plurality of storage units and the ratio in a storage space required for a full state checkpoint to a storage space required for the correlation checkpoint.
- a table that includes the time steps and a type of checkpoint to be stored at each of the time steps may be generated.
- Determining the computing cost may include computing a maximum number of correlation checkpoints that can be stored in a fast storage unit, and computing a maximum number of correlation checkpoints that can be stored in a slow storage unit. If any correlation checkpoints can be stored in fast storage, compute an optimal number of sweeps if only using fast storage and add to a list. A minimum number of sweeps if only using fast storage can be computed and added to the list. If any correlation checkpoints can be stored in slow storage a minimum number of sweeps if using all types of storage can be computed and added to the list. An optimal number of sweeps if using all of the fast storage and storing at least one correlation checkpoint in slow storage can be computed and added to list if less than the last value on the list. An integer value nearest to each value on the list can be added to the list. The cost for each value on the list can be computed and a minimum cost can be returned.
- the method may include generating an image of a subsurface region from seismic data.
- the method may also include history matching reservoir data to a reservoir simulation.
- Another exemplary embodiment provides a method for comparing collected data to simulated data.
- the method includes backwards propagating the collected data across a grid and running a computer simulation to generate forward propagated data across the grid.
- a number of correlation buffers can be stored during the computer simulation, wherein the simulation cannot be restarted from any of correlation buffers.
- the data stored in the correlation buffers may be compared to the backwards propagated data at each point in the grid.
- the method may include storing a full state checkpoint (also called a "full state buffer” herein) during the simulation, wherein the simulation can be restarted from the full state checkpoint.
- the method may also include calculating a cost for storing a full state checkpoint, and determining a time step for storing a full state checkpoint based, at least in part, on the cost.
- the forward propagated data may be correlated to backwards-propagated data in a next time step.
- the method may include storing a plurality of correlation checkpoints in a fast storage medium and storing at least one correlation checkpoint in a slow storage medium. Further, the method may include storing at least one full state checkpoint, wherein the simulation can be restarted from the full state checkpoint. The method may include storing the at least one full state checkpoint in a fast storage medium.
- the system includes a processor and a storage system, wherein the storage system includes data structures that represent measured data and a propagation algorithm configured to propagate the measured data backwards in time across a grid.
- the storage system also includes a computer simulation configured to generate forward-in-time simulated data across the grid.
- the system further includes a memory, wherein the memory includes code to direct the processor to propagate the measured data backwards-in-time across the grid, populate the grid with forward-in-time simulated data from the computer simulation, store a correlation checkpoint at a time step during the computer simulation, and correlate the backwards propagated data to the simulated data stored in the correlation checkpoint.
- the processor may include a single core, a multiple core, a graphics- processing unit, or any combinations thereof.
- the correlation checkpoint may be stored in the memory.
- the memory may include a random access memory (RAM), a RAM disk, a graphics processing unit memory, or any combinations thereof.
- the memory may include code configured to store a full state checkpoint at a time step, wherein the computer simulation can be restarted from the full state checkpoint.
- Another exemplary embodiment of the present techniques provides a method for migrating seismic data to generate seismic images.
- the method includes propagating measured seismic data backwards in time across a seismic grid, propagating simulated excitation pulses forwards in time across the seismic grid, and storing at least one correlation checkpoint, wherein the correlation checkpoint comprises only simulated excitation pulses used for a cross-correlation of interest.
- the intensity of the measured seismic data is cross- correlated with the simulated excitation pulses at each point in the seismic grid using the data from the correlation checkpoint.
- the method may include storing at least one full state checkpoint at a time step, wherein the at least one full state checkpoint comprises all data needed to restart the propagation from the time step.
- the propagation of the simulated excitation pulses forwards in time may be performed using a full two-way, wave equation.
- the propagation of the simulated excitation pulses forwards in time may be performed using based on Kirchhoff, Beam or one-way wave equation migration techniques.
- FIG. 1 is a diagram of a region of interest, illustrating a single seismic experiment in a land environment, in accordance with an exemplary embodiment of the present techniques
- Fig. 2 is a schematic diagram illustrating the operation of reverse time migration (RTM), in accordance with an exemplary embodiment of the present techniques
- Fig. 3A is a process flow diagram showing a method for performing a reverse time cross-correlation, such as RTM, in accordance with an exemplary embodiment of the present techniques
- FIG. 3B is a process flow diagram showing a forward propagation of a wavefield for a reverse time cross-correlation, in accordance with an exemplary embodiment of the present techniques
- FIG. 4 is a diagram useful in illustrating the minimum computational effort using a full state checkpoint at time index k, in accordance with exemplary embodiments of the present techniques
- FIGs. 5A-B are diagrams useful in illustrating the time steps at which full state or correlation checkpoints may be stored, in accordance with exemplary embodiments of the present techniques
- FIGs. 6A-C are diagrams useful in illustrating the operation of the Griewank and optimal checkpointing schemes for a simplified simulation having 55 time steps, in accordance with exemplary embodiments of the present techniques
- Figs. 7A-C are diagrams that compare checkpointing for standard correlations versus checkpointing when a past state in adjoint computation influences cross-correlation with a current state in forward computation, in accordance with exemplary embodiments of the present techniques;
- FIGs. 8A-E are diagrams useful in illustrating a number of situations in which the amount of fast and slow memory is varied, while the storage space required by each type of checkpoint is assumed to be the same, in accordance with exemplary embodiments of the present techniques;
- Figs. 9A-E are diagrams useful in illustrating a number of situations in which the amount of fast and slow memory is varied, wherein the storage space required for a correlation checkpoint is two and a full state checkpoint is three, in accordance with exemplary embodiments of the present techniques;
- Fig. 10 is a process flow diagram of a method for implementing a simulation which uses correlation checkpoints, in accordance with exemplary embodiments of the present techniques
- FIG. 11 is a process flow diagram of a method for computing a minimum cost without any checkpoints, in accordance with exemplary embodiments of the present techniques
- Fig. 12 is a process flow diagram of a method for computing a minimum cost and a best location for cross-correlating n states, in accordance with exemplary embodiments of the present techniques
- Fig. 13 is a process flow diagram showing how to pre-compute a table of minimum costs associated with a checkpoint taken at the optimal k location, in accordance with exemplary embodiments of the present techniques
- Fig. 14 is a process flow diagram of a method for computing minimum cost and optimal checkpointing strategy for correlating n states with nf_used fast memory state buffers and ns ised slow memory state buffers in the situation that the starting checkpoint is in StartType storage, in accordance with exemplary embodiments of the present techniques;
- Fig. 17 is a graph showing the performance improvement of the optimal checkpointing strategy with both fast and slow storage, over optimal checkpointing strategy with only fast storage, and over Griewank checkpointing strategy, in accordance with exemplary embodiments of the present techniques
- Fig. 18 is a block diagram of an exemplary cluster computing system 1800 that may be used to implement the present techniques, in accordance with exemplary embodiments of the present techniques.
- Algorithm carries its normal meaning and refers without limitation to any series of repeatable steps that result in a discrete “Value.”
- an algorithm may include any mathematical, statistical, positional and/or relational calculation between any numbers of user-specified, preset, automatically- determined, and/or industry- or system- acceptable data elements.
- various algorithms may be performed on subject data elements in relation to a previously defined data evaluation sample in order to produce a single, meaningful data value.
- Computer-readable medium or “Non-transitory, computer-readable medium” as used herein refers to any non-transitory storage and/or transmission medium that participates in providing instructions to a processor for execution. Such a medium may include, but is not limited to, non-volatile media and volatile media. Non-volatile media includes, for example, NVRAM, or magnetic or optical disks. Volatile media includes dynamic memory, such as main memory.
- Computer-readable media include, for example, a floppy disk, a flexible disk, a hard disk, an array of hard disks, a magnetic tape, or any other magnetic medium, magneto-optical medium, a CD-ROM, a holographic medium, any other optical medium, a RAM, a PROM, and EPROM, a FLASH- EPROM, a solid state medium like a memory card, any other memory chip or cartridge, or any other tangible medium from which a computer can read data or instructions.
- a "Coordinate system” is a rectangular (Cartesian) coordinate domain with spatial coordinates (x, y, z) and time coordinate t. Seismic data is typically collected and stored in a coordinate system.
- the spatial coordinates x and y may represent orthogonal horizontal coordinate directions, such as the in-line and cross-line directions of the survey in which the data are acquired.
- the spatial coordinate z usually represents the vertical coordinate direction, such as depth measured positive downward.
- Cross-correlation is a process that measures how much two time series of numbers resemble each other.
- the cross-correlation may be linear or non-linear, may consider aspects of mutual information (such as those based on entropy), or may be performed by any other technique deemed useful to a user.
- a cross- correlation between an excitation pulse projected forward in time and a seismic trace projected back in time is used to migrate the received energy to a reflection point in the subsurface, identifying the location (see migration).
- to display or "displaying” includes a direct act that causes displaying of a graphical representation of a physical object, as well as any indirect act that facilitates displaying a graphical representation of a physical object.
- Indirect acts include providing a website through which a user is enabled to affect a display, hyperlinking to such a website, or cooperating or collaborating with an entity who performs such direct or indirect acts.
- a first party may operate alone or in cooperation with a third party vendor to enable the information to be generated on a display device.
- the display device may include any device suitable for displaying the reference image, such as without limitation a virtual reality display, a 3-d display, a CRT monitor, a LCD monitor, a plasma device, a flat panel device, a printer, a plotter, or any other type of output device.
- the display device may include a device, which has been calibrated with any conventional software intended to be used in evaluating, correcting, and/or improving display results.
- Formation refers to a body of rock or other subsurface solids that is sufficiently distinctive and continuous that it can be mapped, for example, by seismic techniques.
- a formation can be a body of rock of predominantly one type or a combination of types.
- a formation can contain one or more hydrocarbon-bearing zones. Note that the terms formation, reservoir, and interval may be used interchangeably, but will generally be used to denote progressively smaller subsurface regions, zones or volumes.
- a formation will generally be the largest subsurface region
- a reservoir will generally be a region within the formation and will generally be a hydrocarbon-bearing zone (a formation, reservoir, or interval having oil, gas, heavy oil, and any combination thereof), and an interval will generally refer to a sub-region or portion of a reservoir.
- a hydrocarbon- bearing zone can be separated from other hydrocarbon-bearing zones by zones of lower permeability such as mudstones, shales, or shale-like (highly compacted) sands.
- a hydrocarbon-bearing zone includes heavy oil in addition to sand, clay, or other porous solids.
- Gyr refers to active elements, which are sensitive to seismic signals and a supporting body (or structure) which holds the active elements.
- Active elements typically comprise piezoelectric elements, but may also include optical elements, micro- machined electro-mechanical sensor elements, and the like.
- Hydrocarbons are generally defined as molecules formed primarily of carbon and hydrogen atoms such as oil and natural gas. Hydrocarbons may also include other elements, such as, but not limited to, halogens, metallic elements, nitrogen, oxygen and/or sulfur. Hydrocarbons may be produced from hydrocarbon reservoirs through wells penetrating a hydrocarbon containing formation. Hydrocarbons derived from a hydrocarbon reservoir may include, but are not limited to, kerogen, bitumen, pyrobitumen, asphaltenes, oils or combinations thereof. Hydrocarbons may be located within or adjacent to mineral matrices within the earth. Matrices may include, but are not limited to, sedimentary rock, sands, silicilytes, carbonates, diatomites and other porous media.
- Hydrophone refers to active elements that are sensitive to pressure (sound) waves in a marine environment.
- the hydrophone also includes a supporting body (or structure) which holds the active elements.
- Active elements typically comprise piezoelectric elements, but may also include other sound detecting elements.
- Impedance is the product of seismic velocity and the density. Impedance typically varies among different rock layers, e.g., opposing sides of an interface have different impedances. Two types of impedance terms are generally defined, I p and I s , wherein I p is P-wave impedance, also called acoustic impedance, and I s is S-wave impedance, also called shear impedance.
- I p P-wave impedance
- I s S-wave impedance
- the reflection coefficient of an interface generally depends on the contrast in these impedances and density of the rock on either side of the interface. Specifically, the contrast in these properties of geological layers affects the reflection coefficient at the boundary separating the two layers.
- One geophysical process for determining the impedance and/or the density structure of a subsurface region based on recorded seismic reflection data is seismic inversion.
- “Inversion” or “Seismic inversion” is a process by which one attempts to find a model of subsurface properties that reproduces a measured seismic response within a tolerance and satisfies geological and geophysical constraints.
- Kirchhoff migration is an inverse backscattering method of inversion that relies on the statistical constructive interference of signal and the destructive interference of noise. It is a two-step operation that first upward projects or ray- traces from every depth point to the surface and builds a travel timetable of potential ray paths to surface locations. It then sums the samples for every surrounding trace at a time based on their source and receiver locations as defined by the travel timetable. Kirchhoff migration may be based on a one-way wave equation, and may be less accurate than a full two-way wave equation method, such as Reverse Time Migration (RTM), discussed herein.
- RTM Reverse Time Migration
- Marine environment refers to any offshore location.
- the offshore location may be in shallow waters or in deep waters.
- the marine environment may be an ocean body, a bay, a large lake, an estuary, a sea, or a channel.
- “Migration” is typically performed during the data processing stage of seismic imaging in order to accurately position the subsurface seismic reflectors.
- the need for seismic migration arises because variable seismic velocities and dipping reflectors cause seismic reflections in unmigrated seismic images to appear at incorrect locations.
- Seismic migration is an inversion operation in which the seismic reflections are moved or "migrated" to their true subsurface positions.
- CMP common-midpoint
- CMP stacking is a data processing procedure in which a number of seismic data traces having the same source-receiver midpoint but different offsets are summed to form a stacked data trace that simulates a zero-offset data trace for the midpoint in question.
- Such "poststack” migration can be done, for example, by integration along diffraction curves (known as "Kirchhoff ' migration), by numerical finite difference or phase-shift downward-continuation of the wavefield, or by equivalent operations in frequency-wavenumber or other domains.
- prestack migration techniques can be applied before stacking of the seismic data traces. These "prestack” migration techniques are applied to the individual nonzero-offset data traces and the migrated results are then stacked to form the final image. Prestack migration typically produces better images than poststack migration. However, prestack migration is generally much more expensive (i.e., computationally demanding) than poststack migration. Accordingly, the use of prestack migration has typically been limited to situations where poststack migration does not provide an acceptable result, e.g., where the reflectors are steeply dipping. In some cases, reflector dip can exceed 90 degrees. As is well known in the seismic prospecting art, it may be possible to image these "overturned” reflectors using data from seismic "turning rays.”
- prestack migration There are two general types of prestack migration, prestack time migration and prestack depth migration.
- a background seismic wave-propagation velocity model to describe the seismic wave propagation velocity in the subsurface is needed in the seismic imaging.
- the seismic imaging method used is prestack time migration (PSTM).
- PSTM prestack time migration
- PSDM prestack depth migration
- a "mode-converted seismic wave” is a reflected P-wave or S-wave that has a different mode from the source seismic wave. Seismic waves have two modes. In a first mode, the seismic wave is a P-wave (or compression wave) that extends in the direction of propagation of the seismic wave. In a second mode, the seismic wave is an S-wave (or shear wave) oriented generally perpendicular to the direction of propagation of the seismic wave.
- a source seismic wave produced by a seismic source is directed into a subterranean structure, which can have a subsurface reflector (e.g., an interface to a layer of hydrocarbons, a layer of water, or another layer of interest).
- the seismic wave is reflected from the subsurface reflector, where the reflected seismic wave can be measured by a seismic sensor (or plural seismic sensors) (e.g., geophones or other seismic sensors).
- mode conversion can occur upon reflection from the subsurface reflector.
- a source P-wave can be reflected as an S-wave, or alternatively, a source S-wave can be reflected as a P-wave.
- a reflected seismic wave that has a mode different from the mode of the source seismic wave is referred to as a mode-converted seismic wave.
- a seismic surveying technique estimates absorption parameters for mode-converted seismic waves, which allows the seismic surveying technique to take into account absorption effects associated with mode-converted seismic waves. Considering absorption effects of reflected mode-converted seismic waves, as well as absorption effects of reflected pure (or single-mode) seismic waves, allows the seismic surveying technique to be more accurate than conventional surveying techniques (which typically just compute pure wave absorption parameters).
- Multicomponent survey refers to seismic surveys that use multi-component receivers that record two or more components of the seismic energy incident on the receiver.
- a 3-component (3-C) seismic receiver contains three orthogonal geophones and so can record the x-, y- and z-components of the particle motion at the receiver (the particle motion may be the particle displacement, particle velocity or particle acceleration or even, in principle, a higher derivative of the particle displacement).
- a 4- component (4-C) seismic receiver can alternatively be used.
- a 4-C receiver contains a pressure sensor such as a hydrophone in addition to three orthogonal sensors and so can record the pressure of the water column (which is a scalar quantity) in addition to the x-, y- and z-components of the particle motion.
- a pressure sensor such as a hydrophone in addition to three orthogonal sensors and so can record the pressure of the water column (which is a scalar quantity) in addition to the x-, y- and z-components of the particle motion.
- a "one-way wave equation” is an evolution equation in one of the space directions that approximately describes the downward or upward propagation of a wavefield, but not both simultaneously. Similar equations exist to relate various types of electromagnetic data.
- the terms “optimal,” “optimizing, “ “optimize,” “optimality, “ and “optimization” are not intended to be limiting in the sense of requiring the present invention to find the best solution or to make the best decision. Although a mathematically optimal solution may in fact arrive at the best of all mathematically available possibilities, real-world embodiments of optimization routines, methods, models, and processes may work towards such a goal without ever actually achieving perfection. Accordingly, one of ordinary skill in the art having benefit of the present disclosure will appreciate that these terms, in the context of the scope of the present invention, are more general.
- the terms can describe working towards a solution, which may be the best available solution, a preferred solution, or a solution that offers a specific benefit within a range of constraints. Further, the terms may refer to improving or refining a current solution. The terms may also refer to searching for a high point or a maximum for an objective function or processing to reduce a penalty function.
- “Pixel” means the smallest addressable point in the image or simulation grid.
- one computation cell in a seismic grid may represent a pixel in the image data.
- Poststack refers to processing after individual sensor recordings have been summed or stacked.
- Poststack attributes include, for example, reflection intensity, instantaneous frequency, reflection heterogeneity, acoustic impedance, velocity, dip, depth and azimuth.
- PP and PS represent mode conversion events that take place during seismic surveys.
- Acoustic energy emitted by the seismic source may predominantly be a pressure-wave (or P-wave).
- P-wave pressure-wave
- S-wave shear wave
- the seismic wavefield acquired at the receivers may therefore contain both P-waves and S-waves.
- P-waves events arising from arrival of P-waves may be referred to as PP events, since they involve acoustic energy that is both emitted as a P-wave and recorded at the receiver as a P-wave.
- PS events Events arising from arrival of S-waves may be referred to as PS events, since they involve acoustic energy that is emitted as a P-wave but underwent a mode conversion to an S-wave upon reflection and is therefore recorded on the receiver as an S-wave.
- PP events occur more prominently in vertical components of the acquired seismic data, whereas PS events appear more prominently in the horizontal components of the acquired seismic data.
- P-wave and S-wave are types of seismic waves that occur in the subsurface.
- P waves are longitudinal compression waves that propagate with particle motion perpendicular to the wavefronts as alternate compression and rarefaction waves.
- P-wave receivers are responsive to vertical particle motion with respect to the surface of the earth.
- S- waves or shear waves are polarized parallel to the wavefronts and are classified as S H waves and as S v waves for isotopic media.
- S H waves particle motion is horizontal in a plane that is transverse with respect to the line of profile.
- the particle motion for S v waves is in a vertical plane that is perpendicular to the S H particle motion and parallel to the line of profile.
- Shear waves cannot propagate in a fluid because fluids have no shear strength.
- Some media are birefringent to S-waves because of being anisotropic. That is, the acoustic energy splits into ordinary and an extraordinary ray paths characterized by different propagation velocities as fast (S f ) and slow (S s ) waves) during transit through a medium and with different polarization directions than pure S H or S v waves.
- P-wave exploration comprises the workhorse of seismic surveys.
- special studies for example, using the techniques described herein, may allow for additional exploration of the anisotropic characteristics of selected rock formations due to stress and fracturing. These studies may be performed by combining S-wave and P-wave technology in a single survey.
- Receiveivers are devices, usually placed in an array or grid-like pattern on the surface of the Earth or just beneath, used to detect reflections of vibrations from rock strata. Measurement of the amplitude and arrival time of an arriving reflected wave at numerous locations allows the mapping of rock strata, and provides information about the thickness and composition of the rock strata (e.g., layers).
- the receivers may include geophones, hydrophones, vibration detectors, accelerometers, or any other detector capable of accurately measuring the amplitudes of reflected waves.
- a three-dimensional receiver may, for example, have accelerometers along each of the x, y, and z-axes to determine motion in all three directions.
- a four dimensional receiver may combine a three-dimensional receiver with an amplitude detector, such as a hydrophone, to determine the intensity of a P-wave. Either three-dimensional or four-dimensional receivers may be used to detect both P-waves and S- waves propagated from the subsurface.
- a “reservoir” or “hydrocarbon reservoir” is defined as a pay zone (for example, hydrocarbon-producing zones) that includes sandstone, limestone, chalk, coal and some types of shale. Pay zones can vary in thickness from less than one foot (0.3048 m) to hundreds of feet (hundreds of m). The permeability of the reservoir formation provides the potential for production.
- Reservoir properties and “Reservoir property values” are defined as quantities representing physical attributes of rocks containing reservoir fluids.
- the term "Reservoir properties" as used in this application includes both measurable and descriptive attributes. Examples of measurable reservoir property values include impedance to p-waves, impedance to s-waves, porosity, permeability, water saturation, and fracture density. Examples of descriptive reservoir property values include facies, lithology (for example, sandstone or carbonate), and environment-of-deposition (EOD). Reservoir properties may be populated into a reservoir framework of computational cells to generate a reservoir model.
- a "rock physics model” relates petrophysical and production-related properties of a rock formation to the bulk elastic properties of the rock formation.
- petrophysical and production-related properties may include, but are not limited to, porosity, pore geometry, pore connectivity volume of shale or clay, estimated overburden stress or related data, pore pressure, fluid type and content, clay content, mineralogy, temperature, and anisotropy and examples of bulk elastic properties may include, but are not limited to, P-impedance and S-impedance.
- a rock physics model may provide values that may be used as a velocity model for a seismic survey.
- Seismic attenuation is the frequency-dependent reduction in amplitude or energy in a seismic wave as the wave passes farther away from a source due to microscopic frictional forces and scattering from thin layers. It is often described in terms of a seismic quality factor, Q. Seismic attenuation is affected by fluid saturations, clay content and thin- layering. If sufficient attenuation occurs, the improvement provided by increased spatial sampling of seismic data (e.g., measuring both P and S-waves) may be minimal. Seismic quality factor, Q, estimates are valuable for seismic imaging, processing, and reservoir characterization applications. Examples of such applications include amplitude and phase compensation, wavelet processing, acquisition design, and lithology/fluid identification.
- seismic attenuation may be directly related to permeability (via a squirt flow mechanism, for example).
- rock physics models may be combined with recent advances in imaging to determine links between estimated seismic quality factors and reservoir parameters.
- “Seismic data acquisition” means the sensing, processing and recording of the seismic waves.
- a "seismic data trace” is the record of a selected seismic attribute (e.g., seismic amplitude or acoustic impedance) at a single x-y (map) location.
- a seismic trace can be represented as a stack of cells or by a continuous curve (known as a "trace") whose amplitudes reflect the attribute values at each z (or t) data point for the x-y location in question.
- a trace is collected for each dimension. Accordingly, it will be clearly understood that the techniques described below apply to traces collected in all of the dimensions. However, for simplicity of explanation, the description herein focuses on a single trace for each receiver.
- Seismic data refers to a multidimensional matrix containing information obtained about points in the subsurface structure of a field using seismic methods. At least three dimensions in the seismic data may represent the location of each point in space-time, for example, x, y, and t, where x and y represent to the location of the point in an x, y grid on the surface, and t represents the time for a reflected elastic wave to reach the surface. Depending on the properties of the geological layers, t may generally represent the depth of the point below the surface of the earth.
- the multidimensional matrix will contain at least one other dimensional representing the signal value at each location.
- this dimension may represent any seismic data that may be connected to a particular point in the field, including such seismic data as offset gathers, offset stacks, angle gathers, angle stacks, Ip, I s , V p , V s , p, and ⁇ , among others.
- “Seismic reflection surveys” are the most common type of seismic survey, are performed by initiating a shock wave at the earth's surface and monitoring at a plurality of surface locations the reflections of this disturbance from the underlying subterranean formations. These reflections occur from regions where there is a change in the acoustic impedance of the earth, generally the interface between adjacent strata.
- the devices used to monitor the reflections are termed geophones or receivers.
- the signal recorded by each geophone represents as a function of time the amplitude of the reflections detected by that geophone. To a good approximation, the reflections detected by each geophone occur from a point on each reflective surface located on a vertical line passing through the midpoint between the source and geophone.
- each geophone records a signal ("Trace") which represents features of the formations vertically beneath a known point on the surface of the earth.
- a "structured grid” is a grid in which each cell can be addressed by index (i, j) in two dimensions or (i, j, k) in three dimensions. All cells of a structural grid have similar shape and the same number of vertices, edges and faces. In this way, topological structure of the grid (i.e., boundary and adjacency relationships between cells, faces, edges, and vertices) is fully defined by the indexing (e.g., cell (i, j) is adjacent to cell (i+1, j)).
- the most commonly used structured grids are Cartesian or radial in which each cell has four edges in two dimensions or six faces in three dimensions. Structured grids typically are used with seismic data volumes.
- an optimal checkpointing scheme is implemented that distinguishes between a storage space used to save a complete forward simulation state that includes all the information needed to restart the forward simulator at a given time step (a full state checkpoint), versus that required only for doing a correlation calculation (a correlation checkpoint). Further, the techniques distinguish between the access speeds and storage capacity differences for multiple types of storage to optimize the mixture of full state and correlation checkpoints saved.
- the computational speedup associated with this invention over the traditional Griewank checkpointing strategy may range from twenty percent to over three-hundred percent, for seismic reverse time depth migration (RTM) and full wavefield inversion (FWI) applications in a cluster-computing environment.
- RTM seismic reverse time depth migration
- FWI full wavefield inversion
- the techniques described herein are not limited to RTM or, indeed, any seismic imaging application, but may be used in any number of applications that need to correlate a first data stream, presented in reverse time order, with a second data stream, presented in forward time order.
- a complete seismic data record may have nine components recorded: three representing particle velocities in each of three dimensions; and six stress tensor fields, from which information about P- waves and S-waves can be extracted.
- the full state checkpoints include all parameters and variables needed to restart the computation of forward simulation time steps, which may require the saving of dense grids of many wavefield components plus additional buffers required for the implementation of boundary conditions. See, e.g., Marcinkovich, C. and K. Olsen, "On the implementation of perfectly matched layers in a three-dimensional fourth-order velocity-stress finite difference scheme," 108 JOURNAL OF GEOPHYSICAL RESEARCH (NO. B5) 2276 (2003).
- the correlation wavefields may be only required on a less dense grid in a subset of the full model volume and may only include a subset of the wavefield components, and may requires less numerical precision. For example, if obtaining the P-P Image in RTM is the only goal for a specific application, there may only be a need to correlate one wavefield (i.e. the pressure component of the wavefield), even though nine components are used for computation. As another example, double precision may be desired for computation, but only single precision is needed for cross- correlation.
- the present techniques also provide for calculating an optimal balance between saving full state checkpoints and correlation checkpoints.
- the present techniques distinguish between memory size and speed and, thus, the savings over Griewank techniques may be significantly more in a hierarchical environment that includes such technologies as graphical processing units (GPU) and solid state disk drives (SSD) as well as traditional random access memory (RAM) and disk storage. Accordingly, application software developed using this technology may be portable and flexible in changing computer environments.
- the derived optimal checkpointing strategy applies to time-stepping methods in general. Therefore, it can be used for adjoint state gradient computation as required for doing time-domain full waveform inversion, as well as for reverse time depth migration.
- the present techniques are not limited to RTM which is merely used as an example, herein. RTM is more clearly explained with respect to a single seismic source excitation, or "experiment,” as illustrated in Fig. 1.
- Fig. 1 is a drawing of a region of interest 100, illustrating a single seismic experiment in a land environment, in accordance with an exemplary embodiment of the present techniques. It will be understood by one of skill in the art that a large number of seismic experiments will be performed over the region of interest 100 to effectively image the subsurface structure.
- a salt dome 102 is protruding towards the surface 104.
- the sides of the salt dome 102 may be vertical or even inverted, for example, side 106, making imaging by many techniques difficult.
- the salt dome 102 may trap hydrocarbon deposits, such as oil 108, in oil sands or porous rock under a layer of cap rock 110, located above the salt dome 102.
- Other deposits, such as oil and or gas 1 12 may be located in layers of rock 1 14 along the side, e.g., side 106, of the salt dome 102.
- Still other hydrocarbons, such as deposit 1 16 may be located in layers of rock 1 18 that are more remote from the salt dome 102.
- a seismic experiment may be performed by placing one or more sources 120 along the surface 104 of the region of interest 100 along with one or more receivers 122.
- each of the receivers 122 may be a three-dimensional or four dimensional receiver cables to detect both P-waves and S-waves.
- the source 120 creates a pulse, which may be conducted into the subsurface 124 as a wave 126.
- the pulse wave 126 propagates in all directions, the illustration in Fig. 1 is simplified, for example, to show only the propagation of the pulse wave 126 towards the salt dome 102.
- Part of the energy of the pulse wave 126 may reach the receivers 122 having not been reflected from any surface, but, instead, having traveled directly through the subsurface 124 to the receivers 122, for example, as a direct wave 128.
- a reflected wave 130 may be created from the wave 126.
- the reflected wave 130 may be partly or fully mode converted, e.g., an impinging P- wave may have S-wave components. If the reflected wave 130 has S-wave components, the S-waves may be attenuated by rocks containing substantial concentrations of fluids, for example, deposit 1 16. This attenuation may be termed Q attenuation.
- the effective determination of Q attenuation of S-waves may be useful for enhancing the accuracy of the seismic imaging, allowing the location of layers, e.g.
- the area of interest 102 may be divided into a three-dimensional grid of computational cells.
- the grid will generally be a regular grid, allowing the computational cells to be assigned to coordinates that indicate the location.
- the techniques are not limited to regular grids, as unstructured computational meshes may be used. However, unstructured computational meshes may add significant overhead, as each computational cell may contain location information.
- Each computational cell may represent, or contain, a seismic data volume that has associated properties, such as velocity, impedance, and the like. Further, the speeds and directions of seismic wave fronts, such as P-waves or S-waves, may be calculated in each seismic data volume, using the properties for that seismic data volume.
- the migration process "moves" the source and receiver to associate a reflection with the computational cell in which it originated.
- This technique can be used to generate an image of the subsurface.
- the RTM process can be more clearly seen by examining a cross section of the area of interest 100 along the seismic source and receivers, as discussed in further detail with respect to Fig. 2.
- Fig. 2 is a schematic 200 illustrating the operation of reverse time migration (RTM), in accordance with an exemplary embodiment of the present techniques.
- Each of the computational cells may be illustrated as computational cells 202 in the schematic 200.
- the computational cells 202 may not be the minimum size on which the seismic data is collected or modeled, but may represent groups of smaller volumes 204 that have been combined, for example, to ease the computational complexity, or separated for computation, for example, to improve the accuracy of the image.
- the size of the computational cells 202 is discussed in greater detail below.
- RTM treats each seismic experiment separately and migrates the data by simulating the physical process used to collect it.
- the algorithm utilizes a velocity model 206 of the wave propagation velocity of the area being imaged.
- the velocity model 206 generally comprises the rock properties in each of the computational cells 202, such as density, impedance, and the like, which may be used by a wave propagation algorithm to calculate velocity and direction of a wave.
- a wave propagation algorithm can be used to propagate a pulse from a location of a source 208 into the subsurface. As discussed herein, this may be performed using computational cells that are on a finer timescale than the computational cells 202. This propagation may provide an approximation, as a function of time, of the energy that may be reflected from each subsurface reflector, e.g., saltdome 210, and recorded at the receivers 212.
- the source wavefield 214 travels primarily downward it may be labeled as D(xs, x, t), where xs is a vector in three-dimensional space representing the location of the source, x is a vector in three-dimensional space representing the location of an image point 216, and t is a value representing the time from the start of the seismic experiment (i.e., to represents the initial generation of the pulse wave).
- the data traces 218 recorded at the receivers 212 may be propagated backward in time to simulate the motion of energy from, as yet unknown, reflection points to the receivers 212.
- the backwards propagation can be performed by an adjoint operator, which maps the traces as wavefields 220 into the subsurface.
- the receiver wavefields 220 may be labeled as U(xs, XR, X, t), where xs is a vector in three-dimensional space representing the location of the source, XR is a vector in three-dimensional space representing the location of the receiver, x is a vector in three-dimensional space representing the location of the image point 216, and t is a value representing the time from the start of the seismic experiment (t max represents the end of the data collection experiment).
- the imaging principle used in RTM is that energy recorded by the receivers
- 1(x) is the migrated image at subsurface location x, e.g., image point
- the weighting function in Eqn. 1 indicates that the source wavefield 214 (D) is forward propagated along time t, and the receiver wavefield 220 (U) may be backward propagated from final time t max (thus, the name Reverse Time Migration).
- the product of the two wavefields 214 and 220 e.g., the cross-correlation may be summed at each image point 216
- the computation of the imaging condition requires that the value of the source wavefield 214 and receiver wavefield 220 be available at the same time t.
- the most straightforward approach would be to compute and store one of the wavefields (e.g., the source wavefield 214), for all t of interest (e.g., t 0 to t max ).
- the other wavefield e.g., the receiver wavefield 220
- this approach can be impractical, since a great deal of data storage would be required to store the source wavefield 214. Therefore, the practical application of RTM requires that one recompute the source wavefield 214 periodically.
- the image, I(x), where x is a location vector (x, y, z), represents the reflectivity of the subsurface as a function of position.
- the reflectivity is large at locations where the impedance changes appreciably.
- the RTM algorithm will yield nonzero image values at any point where there is any correlation between source and receiver wavefields 214 and 220. This may occur at locations other than those corresponding to true reflections, e.g., image point 216, leading to image artifacts that appear as a low-frequency noise superimposed upon the true reflectors.
- a number of methods for removing these artifacts, among them low-cut filtering, application of Laplacian filters, etc, are available for this purpose.
- RTM uses the full wave equation to propagate energy through the subsurface and, thus, it is a computationally expensive migration algorithm.
- Prestack RTM in which individual shots are migrated separately, has only become computationally feasible in the last few years, due to the advent of cost-effective computing clusters.
- clusters of many thousands of multi-CPU nodes may be linked together to form a computing cluster.
- Each shot to be migrated can be assigned to a set of nodes in the cluster, and the property models (velocity, density, etc) for the area surrounding the shot can be read into the memory associated with the assigned nodes.
- an optimization scheme is used to calculate a tradeoff between computer memory and computational overhead.
- this scheme may store full state checkpoints (from which either a correlation may be performed or from which the propagation operation may be resumed), correlation checkpoints (including only the data needed for the cross-correlation calculation at a particular time), or a combination thereof.
- checkpointing makes the practical implementation of RTM feasible. Further, checkpointing is even more important for embodiments that take into account inelastic propagation effects ("Q") or compute many wavefield components such as both the S-wavefield and the P-wavefield.
- the computational model can be divided into computation cells 202, or smaller volumes 204.
- the spacing of the computational cells is such that there are several grid blocks per minimum wavelength. For typical models, the spacing may be about 25 meters. Thus, with models of regions of interest having dimensions on the order of tens of kilometers, the number of grid cells in each dimension may be several hundred to more than one thousand. Thus, the total number of computational cells 202 may be, for example, greater than one billion.
- the computations may be performed by running a finite-difference stencil over the entire grid, in order to compute the wavefield derivatives required for modeling the wave equation at each computational cell 202. Therefore, many billions of floating point operations can be performed at each time step.
- the required grid spacing ⁇ e.g., the size for the computational cells 202, or smaller volumes 204, can be computed using the formula shown in Eqn. 2.
- v min is the minimum velocity
- max is the maximum frequency
- N is the number of points per minimum wavelength, which may be about 5-10 points. This spacing, or smaller, may avoid the introduction of numerical dispersion into the propagated wavefield.
- the total number of time steps may also be very large. Seismic data are recorded for a total time of about ten seconds. The data are typically stored with a sample interval of 2-4 milliseconds, meaning that each trace 218 may include about 2500-5000 samples. However, the RTM wave-equation solution must be computed on a much finer time step, given by the Courant-Friedrichs-Levy (CFL) stability condition shown in Eqn. 3.
- CFL Courant-Friedrichs-Levy
- Eqn. 3 is a constant of order one that depends on the dimension and the exact algorithm used.
- k may be ⁇ j ⁇ f° r two-dimensional equations or f° r three- dimensional equations. Further, k may be larger if the equations are higher order in time or smaller if the equations are lower order in time.
- a ten-second total propagation time requires 20000 time steps. This indicates that each expensive time step must be computed very many times.
- Eqns. 2 and 3 it can be noted that the total computational cost is proportional to f ax, so doubling the maximum frequency to be migrated increases the computational cost by a factor of 16. Since the interpretability of seismic images is normally better when the frequency bandwidth is larger, the dependence of cost on frequency tends to quickly drive up the time required to obtain high quality images.
- Fig. 3A is a process flow diagram showing a method for performing a reverse time cross-correlation, such as RTM, in accordance with an exemplary embodiment of the present techniques.
- the process can begin at block 302 with the initialization of a reverse time migration (RTM) correlation image, for example, by setting all points in the image volume to zero.
- RTM reverse time migration
- an adjoint wavefield can be initialized, for example, by setting the adjoint wavefield to match a receiver wavefield at the maximum recording time.
- the optimum time locations for storing checkpoint buffers and/or full state buffers can be calculated. The optimal time locations may also be calculated prior to running the simulation, and stored in a table for use in later simulations.
- the adjoint wavefield may then be calculated at a first time step j, as shown at block 308.
- the first time step j may correspond to the final time in the simulation.
- the wavefield in the correlation buffer is accessed from a database of stored forward simulation states 314, contained in a storage unit (such as a memory or hard drive).
- a storage unit such as a memory or hard drive.
- the forward simulation wavefield state is cross- correlated with the adjoint wavefield for time step j, wherein the results are summed into a correlation volume within the correlation image.
- the correlation operator 3 ⁇ 4(c ; , 3 ⁇ 4) can represent a more general operator than just a simple mathematical cross-correlation for some applications. The important feature is that this operator requires the subset of the forward simulation state c ; and the adjoint state t at the same time step j as input.
- j may be decremented, and, at block 322, a determination may be made as to whether the adjoint propagation is finished. If not, process flow returns to block 308 to continue at the next time step.
- process flow proceeds to block 324, at which various post-processing and output steps may be performed.
- post-processing may include, for example, forming sub-surface offset gathers from the migrated points.
- the offset gathers may be converted to reflection angle gathers to form a final image.
- filtering calculations may be implemented to decrease noise, such as a Laplacian algorithm, as discussed above.
- the process ends at block 326, wherein a data representation of the image is output or stored.
- the data representation may include an image of a sub-set of the results.
- the output may include only reflection angle gathers.
- generating the data representation may include other steps to form a complete image.
- mute and stack operations may be performed to generate a full seismic image.
- present techniques are not limited to seismic imaging, and may be used for any number of other simulations that cross-correlate forward simulation data with data projected in a reverse-time order.
- Fig. 3B is a process flow diagram showing a forward propagation of a wavefield for a reverse time cross-correlation, in accordance with an exemplary embodiment of the present techniques.
- the steps in Fig. 3B may be executed if no correlation buffer is found at block 310.
- the wave equations for the forward simulation may be propagated across the grid. The propagation may be performed by taking a sequence of (n+1) states s i starting with s 0 and n procedure calls f t at ⁇ that are generated according to s M ⁇ — f i iS ; ) , e.g. , the propagation of the forward excitation pulse.
- the receiver wavefield can be propagated backwards in time and cross-correlated at each computational cell (x) with the forward-in- time simulation of a source wavefield. This means that the forward-in-time source simulation must be accessed in reversed time order. Since storing all of the forward in time points for a cross-correlation may not be feasible, due to memory and access time limitations, at block 330, forward simulation wavefields 314 can be stored for various time steps, as discussed herein. These forward simulation wavefields can be considered checkpoints that contain correlation buffers for the cross-correlation with the reverse data projection.
- Each of the checkpoints in the database 314 may be a full state checkpoint, which may be used to restart a propagation calculation, or only a smaller correlation checkpoint used for determine the cross-correlation at a particular time step.
- the source wavefield may be propagated one-step forward in time.
- a determination is made as to whether the forward propagation is finished. If not, flow proceeds to block 328 to continue the calculation. If so, flow returns to block 312 (Fig. 3(A)) at which the cross-correlation is resumed.
- the determination of the time steps e.g., the checkpointing process at block 306) at which to save full state checkpoints versus only correlation checkpoints is discussed below.
- each full state checkpoint ⁇ requires the same amount of memory of size S.
- each correlation checkpoint c t requires the same amount of memory of size C.
- the additional memory requirement during the process of 3 ⁇ 4(c ; , 3 ⁇ 4) , c i />(3 ⁇ 4) , f t or is not considered part of the memory constraint.
- the Griewank checkpointing strategy assumes that the memory required to save a full state checkpoint (the variable S) is identical to that required to save the information necessary to do a cross-correlation (the variable C) for the imaging step. For example, if a reverse time migration based on velocity-stress propagators is being performed, there may only be a need to correlate pressure, instead of all components of particle velocity and stress. This can easily increase the ratio of S/C to 4 or even up to 9. If perfectly matched layer (PML) boundary conditions are used, the S/C ratio may increase by another factor of two or three near the boundary of the earth model. Thus, propagation of waves may take place on a fine grid, but imaging may be performed on a coarser grid.
- PML perfectly matched layer
- the resulting S/C ratio would be eight. If some accuracy in the cross-correlation step may be sacrificed by storing a compressed correlation checkpoint, the S/C ratio can be increased by another factor of two. The S/C ratio components mentioned here would be multiplied together to yield the S/C ratio needed for this algorithm. Therefore, indeed, there could be a substantial difference between S and C. Given that reverse time depth migration is very computationally expensive, the present techniques may provide a substantial decrease in computational overhead by exploiting the difference between S and C.
- the total memory cost is (n-l)C and the total forward computation effort is n (the total forward computation effort is 2n-l assuming each adjoint step requires the same effort as a forward step). It may be noted that the correlation at state zero is ignored, since state 0 usually corresponds to zero wavefields for reverse time migration applications. However, the techniques described herein can be easily modified to accommodate nonzero initial wavefields.
- the notation J(n, M) may be used to represent the computation effort or cost for correlating n states (state 1 to state n) under memory constraint M.
- the adjoint state n is known, and state 0 can always be recovered during computation with no computation effort, by either resetting everything to zero or loading state 0 from memory (which is not part of M).
- the adjoint state at adjoint state 1 is used (instead of at adjoint state 0).
- n c is the number of correlations possible given memory M and correlation buffer size C.
- Fig. 4 is a schematic diagram illustrating the minimum computational effort using a full state checkpoint at time index k, in accordance with exemplary embodiments of the present techniques. If an optimization goal assumed herein is the minimization of J(n,M) using one checkpoint 402 at time step k, then for the correlation step 404 at and above time step index k, k forward steps can be used to get to the checkpoint location plus J(n-k, MS) for the time forward and adjoint stepping needed for time step indices k+1 to n. The memory available is reduced by S due to the checkpoint 402 of the state buffer at time step index k. The computational effort 406 for both forward and adjoint time stepping for indices 0 to k-1 would be J(k-1,M), as shown in Eqn. 5.
- JaM _ one _ cp (n,M , k) k + J(n - k , M - S) + J(k - ⁇ ,M) Eqn. 5 Further, Eqn. 6 allows for minimizing J(n,M) under the restriction that there is either no checkpoint used or at least one checkpoint at some state k (state k is between state 0 and state n).
- J (n, M) min ⁇ J no (n, M), mm [J add one (n, M, k)] ⁇ Eqn. 6
- the memory constraint size is always changing in units of S and there are an integral number of checkpoint state buffers n s with memory equal to n s S.
- the memory associated with the n c correlation buffers is equal to (n c - 1)C.
- the total memory associated with the combination of both checkpoint state buffers and correlation buffers is shown in Eqn. 7.
- the above equation is iteratively solved to find a numerical solution for a desired problem size and memory footprint.
- Figs. 5A-B are schematic diagrams illustrating the time steps at which full state or correlation checkpoints may be stored, in accordance with exemplary embodiments of the present techniques.
- correlation checkpoints 502 may be stored before a full state checkpoint 504 at time step k.
- the total computation effort may be given in Eqn. 8.
- ⁇ J k + n c + 2 + J(k - l - n c , M) + J(n - k,M - S - n c C) Eqn. 8
- the total computation effort is shown in Eqn. 9.
- the storage ratio (S/C) of full state checkpoints to correlation checkpoints may often be around 10, thus, this provides a convenient ratio to use for comparing the computational effort for optimal checkpointing, described herein, to Griewank checkpointing.
- n provides the number of time steps required for the forward and adjoint computations.
- the column labeled “ideal” provides the computational cost for time-stepping to enable correlation of the forward and adjoint simulations in an environment where memory is plentiful and the cost is the minimum possible.
- the column labeled "optimal checkpointing” shows the results obtained using both full state checkpoints and correlation checkpoints.
- the column labeled "ratio" is calculated by the ratio of the Griewank computation results divided by the Optimal checkpointing results, and provides the speedup possible with this new method compared to using only the Griewank optimal checkpointing strategy.
- Table 1 Costs for Optimal Checkpointing versus Griewank Checkpointing
- Figs. 6A-C are schematic diagrams illustrating the operation of the Griewank and optimal checkpointing schemes for a simplified simulation having 55 time steps, in accordance with exemplary embodiments of the present techniques. For each of the examples, the number of steps (55) and the amount of storage space (20) is the same.
- a Griewank checkpointing algorithm shown in Fig. 6A, only full states (indicated by horizontal lines) are saved, allowing a complete restart of the propagation algorithm from each saved state.
- the backwards propagated wavefield is run backward in time one time step to time step 54.
- the forward propagation wavefield is restored at time step 50 (64) and advanced to time step 54, and the cross-correlation is again performed. This procedure is repeated for time steps 53, 52, 51, and the correlation is performed using the full state checkpoint itself at time step 50 (604).
- the memory used for time step 50 is then released, and the cross-correlation proceeds with the forward simulations run from time step 35 (606).
- the released memory is used for storing checkpoints from time step 35 (606), such as a checkpoint at time step 45 (608).
- the checkpoint at time step 45 (608) is used to run forward simulations for time steps 49 through 46 wherein at each time step, the forward propagated wavefield is cross correlated with the backwards propagated wavefield from the receiver.
- the memory is released, and used for another checkpoint at time step 41 (610). The procedure is repeated until the cross- correlation has been performed for all time steps.
- the spacing between checkpoints is not uniform in Fig. 6A; in the first sweep for example, the checkpoints are at 50, 45, 41, 38 and 36, rather than for example 50, 45, 40 and 36.
- the numbers shown in the drawing were determined to be optimal using an optimization algorithm (Griewank optimization in the case of Fig. 6A), whereas other possible choices of checkpoint location may or may not be optimal.
- the amount of memory utilized is decreased, it can be seen that the amount of calculations is substantially increased. Since the amount of memory and the access time for the memory are often limiting, the procedure may substantially improve the running time, making the full RTM feasible. However, the number of calculations and amount of memory used in Griewank checkpointing may still be problematic for complex seismic imaging calculations, such as RTM.
- This may provide significant benefits for both calculation and memory.
- the optimal memory utilization shown in Fig. 6B may result if it is assumed that the memory used to hold a correlation checkpoint is 1/10 the size of the memory used to hold a full state checkpoint. In this condition, far fewer full simulation runs may be needed.
- longer lines indicate full state checkpoints while shorter lines indicate correlation checkpoints.
- a full simulation run 612 is started from the zero point 614.
- a correlation checkpoint or correlation buffer
- time step 35 656
- time step 54 time step 54
- the available memory M 20 with 20 correlation buffers.
- the cross-correlation may then be performed with the backwards propagated wavefield from the receiver at each of these points.
- the cross-correlation is repeated at each of these time steps using the correlation checkpoint at that time step, and then the procedure is repeated for a third run 626 of the full simulation.
- the optimal checkpointing strategy provides a substantial savings in calculation time, with only 101 forward wave propagation steps performed, versus 209 forward wave propagation steps for the Griewank checkpointing procedure.
- Fig. 6C shows an optimal checkpointing run in the same amount of memory as in 6A and 6B, but with a 5 to 1 relationship in size between a full state checkpoint and a correlation checkpoint.
- the procedure is generally the same as in 6B, but a full state checkpoint 628 is saved during a first full simulation run 630.
- correlation checkpoints are saved between time step 49 (632) and time step 54 (634). The cross-correlation may then be performed at time step 55, and then with each of the values between time steps 54 and 49.
- the full simulation run is repeated from time step 31 (628) three more times, as indicated by reference number 636, and the cross-correlation is run at each time step.
- the memory is freed and three final full simulation runs 638 are performed from the zero time step, with cross-correlations performed for each of the saved correlation checkpoints.
- the forward wave propagation steps is only 147 for this situation, which is still significantly less that 209 forward wave propagation steps of Griewank checkpointing.
- the optimal checkpointing technology may provide between 10 percent to over 400 percent speedup for RTM over the earlier Griewank checkpointing strategy, depending on the computer hardware environment and problem size for a given RTM application.
- the checkpointing strategy discussed herein is not limited to direct correlations, but may be used for correlations in which a current state is dependent on a past state, as may be needed with respect to some FWI gradient computations and some automatic differentiation formulae.
- Figs. 7A-C are schematic diagrams comparing checkpointing for a standard correlation versus checkpointing when a past state in adjoint computation influences cross- correlation with a current state in forward computation, in accordance with exemplary embodiments of the present techniques.
- Fig. 7A illustrates a standard correlation condition
- Fig. 7B illustrates a standard correlation condition in addition to a shifted correlation condition, for example, when running reservoir simulations in which past conditions influence current conditions.
- an upward arrow 702 represents forward computation and a downward arrow 704 represents an adjoint simulation, e.g., in which values calculated at a previous time step influences values calculated at a later time step.
- a horizontal bi-direction arrow 706 represents a standard correlation condition and a diagonal bi-direction arrow 708 represents a shifted correlation condition.
- a bold horizontal line 710 represents a full state checkpoint with size S
- a dotted horizontal line 712 represents a correlation checkpoint with size C.
- Fig. 7B the optimal checkpointing strategy is modified to work for the latter case as demonstrated in Fig. 7C.
- Fig. 7C provides a minimum memory use.
- three types of correlation are used, i.e., correlating the adjoint wavefield with a forward wavefield, correlating the adjoint wavefield with a snapshot buffer in storage, and correlating the adjoint wavefield with a correlation buffer in storage).
- This may be better understood by considering the cross-correlation problem as a chain-reverse problem.
- Embodiments of the present techniques may provide a more efficient way to reverse a chain calculation that correlates results from a forward simulation with results from a backward, or adjoint, simulation, e.g., a reversed chain. It can be applied for standard cross-correlation as illustrated in Figure 7A. It can also be applied to modified cross-correlation as illustrated in Figure 7B and more detail in Figure 7C. Other cross-correlation conditions may also benefit from the present technique so long as the implementation is based on using a reversed chain.
- exemplary embodiments of the present techniques can also optimize the storage of checkpoints based on the speed of the storage available.
- GPUs graphical processing units
- CPU memory the fastest storage
- solid state disk memory the slowest storage
- the slow storage (with size 5 ) requires cost W $ , ⁇ ⁇ writing a full state checkpoint or a correlation checkpoint, respectively, and cost R s s , R ⁇ ? for reading a full state checkpoint or a correlation checkpoint, respectively.
- the computational effort for evolving any state to the next state is one, the full state checkpoint is of size S, and the correlation checkpoint is of size C.
- the cost function may be defined as shown in Eqn. 10.
- the cost function on the left side of the equation is the minimum of the three choices listed on the right hand side.
- J F (n, M F , M S ) is the cost of cross-correlating n states with
- J s (n, M F , M S ) is similar except that the first state in slow storage J F 0 cp (n, M F ,M S ) , and J m s cp (n, M F ,M S ) , follow the same definitions with the constraint that no full state checkpoints are allowed and, thus, only correlation checkpoints are stored.
- R F or R ⁇ the first state in slow storage J F 0 cp (n, M F ,M S )
- i and j are the number of correlation buffers we want to use.
- f no cp (n,M F ,M s ) can be explicitly evaluated instead of relying on the above recursive formulation.
- Figs. 8 and 9 The results of determining optimal checkpoints in storage having two different access speeds are shown in Figs. 8 and 9.
- the techniques described herein work for any implementations having a non-zero access cost to fast storage.
- a long horizontal line represents a full state checkpoint
- a short horizontal line represents a correlation checkpoint
- any line having a diamond at the end is stored in slow memory.
- FIGS. 8A-E are schematic diagrams illustrating a number of situations in which the amount of fast and slow memory is varied, while the storage space used for each type of checkpoint remains the same, in accordance with exemplary embodiments of the present techniques.
- the costs for accessing storage i.e. time for I/O
- the storage used for a full state checkpoint may be substantially greater than that used for a correlation checkpoint in the case S is substantially greater than C.
- FIGs. 9A-E are schematic diagrams illustrating a number of situations in which the amount of fast and slow memory is varied, wherein the storage space used for a correlation checkpoint is two and a full state checkpoint is three, in accordance with exemplary embodiments of the present techniques.
- Table 2 provides a comparison of the solution time (including both forward and adjoint computation) between the optimal checkpoint techniques disclosed herein and the Griewank checkpoint strategy.
- J n * ocp (n,M F ,M S ) can be determined explicitly.
- J n * ocp (n,m,M F ,M S ) which is the cost of cross- correlating n steps by m forward sweeps using no full state checkpoints with state 0 in * storage (either F or 5) and a memory constraint of M F ,M S .
- the procedure shown in Eqn.12 can be used to determine the cost with storing full state checkpoints.
- J 1 J ( r F (t F + ⁇ ) + n F (W F +R F )
- n F m(n-m,mn ⁇ ,),t ⁇ -n* -S*ni
- Eqn. 16 may be used to get the best m and correspond J n * ocp (n,M F ,M S ) .
- Proper bounds should be considered while applying these above formulations. For example if m o F pt is not n
- J * o cp (n,M F ,M S ) can be explicitly determined, a recursive formulation is still used to find J * (n,M F ,M S ) .
- the symbol " ⁇ " is used to mean "on the order of. This pre-tabulated data needs a storage of size ⁇ nxn F xn s .
- Fig. 10 is a process flow diagram for implementing a simulation, which uses correlation checkpoints, in accordance with exemplary embodiments of the present techniques.
- the process begins at block 1002 with the calculation of the optimal checkpointing strategy. This calculation may be performed using the formulations discussed above.
- the required storage is allocated. This may be limited by the storage available, the size of the full state checkpoints and correlation checkpoints, and the like.
- the checkpointing strategy and correlation calculations are implemented, for example, by looping through a series of checkpointing instructions.
- a checkpointing strategy may be expressed in the form of an ordered list of instructions.
- Table 3, below provides an example of an instruction set that may be used for implementing a checkpointing strategy.
- an "instruction number” is associated with a sequence of operations to be done when that "instruction number” is encountered.
- (0 74 S) says do instruction type zero and forward time step 74 steps and then save a state buffer in slow memory.
- (1 S F) means do an adjoint time step and correlate. Then release storage space from slow memory from the last state buffer saved there. Then reload the forward simulation from the last state buffer saved in fast memory.
- (2 55 10F 4S) means forward compute 55 time steps and save fast correlation buffers for steps 45-54 in fast storage and save correlation buffers for steps 41-44 in slow storage. Note that the correlation information for step 55 is available in the forward simulation data for step 55 and does not have to be saved separately.
- (3 F) reloads the forward wavefield state from the last state buffer stored in fast storage.
- Table 3 Exemplary instructions for implementing a checkpointing strategy
- Appendices A and B are source code listings of two examples of a computer program that could be used to generate an optimal checkpointing strategy such as that embodied by the above list of instructions, given only the parameters specified above, i.e. S, C, etc.
- the programs of Appendices A and B use the checkpointing strategy of the present invention; however, where it would be optimal, the program will select Griewank checkpointing.
- Fig. 11 is a process flow diagram of a method for computing a minimum cost without any full state checkpoints, in accordance with exemplary embodiments of the present techniques.
- the method begins at block 1 102 with the initialization of an empty list to store the potential optimal number of sweeps.
- the first value of this list is initialized to be equal to n, the number of time steps in the forward simulation.
- the optimal number of sweeps if using only fast correlation buffers is computed using the formula «i
- the value of m F is added
- the optimal number of sweeps if using all of the fast correlation buffers and at least one correlation buffer is computed using the formula: m F&S • 7(l + n c F )
- m F p s is added to the list if and only if m F&s ⁇ m F p s ⁇ last value in list.
- m t ⁇ is added to the list.
- the list is regenerated to include the nearest integers within the same range. For example, if the original list is (17, 10, 1), then the new list should be (17,16, 11, 10,9,2, 1). This may help to account for the rounding of real numbers to integer numbers.
- the minimum cost is returned.
- Fig. 12 is a process flow diagram of a method for computing the minimum cost and the best location for cross-correlating n states, in accordance with exemplary embodiments of the present techniques.
- the method assumes that nf ised fast memory checkpoint state buffers and ns_used slow memory checkpoint state buffers are already used and that the starting full state checkpoint is stored in StartType storage and the first full state checkpoint in stored in KType storage. (The italicized terms are used in C and C++ implementations of the present inventive method, and appear again in equations below.)
- StartType denotes the type of storage, fast or slow, associated with the full state checkpoint from which the forward simulation is initiated.
- KType denotes the type of storage, fast or slow, associated with the full state checkpoint to be stored at time index k.
- StartType can take on two values, F for fast memory or S for slow memory
- nfjised is the number of fast memory checkpoint state buffers currently in use. The currently available fast memory for new checkpoints of either state or correlation information does not include the space for fast memory checkpoint state buffers currently in use.
- ns_used is the number of slow memory checkpoint state buffers currently in use and the currently available slow memory does not include the space for the slow memory checkpoint state buffers currently in use.
- process flow proceeds to block 1204 where a huge cost (e.g., lelO) is returned to identify that it is impossible.
- a huge cost e.g., lelO
- n 2. If so, then the best first full state checkpoint location must be 1, and the corresponding cost is returned at block 1208.
- the previous best k is obtained from a pre-computed table. This value in the table is calculated for correlating n-1 states with the same memory constraint and the same starting full state checkpoint and first full state checkpoint storage- type requirement.
- the cost is given by the formula: k + W + J F ( « - k,nf _ used + 1, ns _ used) + R + R s startType + J St ⁇ ?e (k - 1, nf _ used, ns _ used)]
- the cost is given by the formula: k + Wl + 7 s (n - k, nf _ used, ns _ used + l) + R c s + R rt2 ⁇ e + JS ⁇ P * (k - ⁇ , nf _ used, ns _ used)]
- J * (n, nf _used, ns _used) ⁇ J * (n,M F - nf _used x S,M s - ns _used x S) has been used to indicate that the storage is reduced by unit of S.
- the pre- computed table is updated with the computed minimum cost and the best location of the first checkpoint.
- Fig. 13 is a process flow diagram showing how to pre-compute the table of minimum costs associated with a full state checkpoint taken at the optimal k location, in accordance with exemplary embodiments of the present techniques.
- the method begins at block 1302 with the allocation of arrays to store the table. For example, two five dimension arrays: J_with_cp[2][2][n][nfMax][nsMax] and BestK[2][2][n][nfMax][nsMax], may be allocated to keep track of the minimum cost and the best location of the first checkpoint.
- all values in the array are initialized to -1.
- the first dimension represents the storage type for the starting checkpoint.
- the second dimension represents the storage type for the first checkpoint.
- the third dimension represents the number of states to be correlated.
- the fourth dimension represents the maximum number of checkpoints in fast storage.
- the fifth dimension represents the maximum number of checkpoints in slow storage.
- a counter is tracked for looping through I from 2 to n, where I represents the number of states to be correlated.
- another counter is tracked for looping through J from 0 to nfMax, where nfMax is the number of fast memory state buffers that have been used.
- a third counter is tracked for looping through K from 0 to nSMax, where nsMax is the number of slow memory state buffers that have been used.
- the minimum cost and the best location of the first checkpoint are computed for cross-correlating I states with J fast memory full state checkpoint buffers, and with K slow memory full state checkpoint buffers already used for the 4 cases: 1) Starting with a full state checkpoint in fast storage, calculate the cost for a first full state checkpoint in slow storage. 2) Starting with a full state checkpoint in fast storage, calculate the cost for a first full state checkpoint in slow storage. 3) Starting with a checkpoint in slow storage, calculate the cost for a first full state checkpoint in fast storage. 4) Finally, starting with a full state checkpoint in slow storage, calculate the cost for a first full state checkpoint in slow storage.
- the obtained results are used to update the corresponding table entry for J with cp and BestK.
- Each of these four steps for block 1304 can be computed using the method of figure 12.
- the cost calculation 1212 requires knowledge of the cost of a full state store for the specified storage type, how many restores will be done for a given full state checkpoint at the specified time step, and the cost of a full state restore for the specified storage type.
- n s > 2 the above outlined process may be applied recursively to optimally locate additional full state checkpoints.
- Fig. 14 is a process flow diagram of a method for computing minimum cost and optimal checkpointing strategy for correlating n states with nf_used fast memory state buffers and ns ised slow memory state buffers in the situation that the starting checkpoint is in StartType storage, in accordance with exemplary embodiments of the present techniques.
- the method begins at block 1402, where the cost associated with the first full state checkpoint in fast storage is obtained from table J_with_cp, and the corresponding best location of the full state checkpoint from table BestK.
- the cost with the first full state checkpoint in slow storage is obtained from table J_with_cp, and the corresponding best location of the checkpoint is obtained from table BestK. Tables generated by the method of Fig.
- the location of the optimal first checkpoint has an explicit form (as determined by the Griewank checkpointing strategy).
- the graph was generated assuming that recovering from forward simulation state zero required no effort.
- the identification of a minimum 1602 may be complicated.
- this technique may provide a check- pointing strategy with additional cost less than 1% away from the optimal checkpointing strategy obtained from a full search.
- n max j a bie For very large n, memory for cost and BestK tables and table computation time can become large.
- a practical implementation strategy for very large n can be to compute optimal tables for a reasonable size of n max j a bie and then to switch to the Griewank full state checkpointing strategy to find BestK if n > n max jabh and to use the tables if n ⁇ n max _ t abie-
- the Griewank value for BestK can be estimated without the need for a table. Usually this yields a check-pointing strategy that is only a few percent more expensive than the optimal one found with a full-sized table.
- Fig. 17 is a graph 1700 showing the performance improvement of the optimal checkpointing strategy over checkpointing using the Griewank procedure, in accordance with exemplary embodiments of the present techniques.
- the relation between performance and available memory typically has a shape shown in Fig. 17.
- the top solid line 1702 is the optimal performance calculated for using two levels of storage, e.g., a fast storage and a slow storage.
- the middle solid line 1704 is the optimal performance calculated for using a single level of storage.
- the lower dotted line 1706 is the performance calculated for using Griewank checkpointing.
- performance initially increases with more available storage (usually as more computational nodes are added), since less re-computation of full state checkpoints will be required.
- Scaling loss becomes dominant, and performance falls off.
- Scaling loss is a result of adding more computing units to a problem, wherein the efficiency of each computing unit is reduced due to the increased overhead caused by using multiple units, for example, communication between the units or between the units and storage systems. Scaling loss may be due to a lack of ideal scalability of the application. Further, the benefit from reduction of re-computation becomes marginal.
- the performance uplift from the optimal checkpointing strategy depends on the available storage. For example, if sufficient storage is available, the performance uplift of the optimal checkpointing over Griewank checkpointing can be the ratio between point A 1708 and point F 1710. If storage is constrained (which is usually the case), the performance uplift may be the ratio between point A 1712 and point D 1714.
- the optimal checkpointing strategy of the present techniques may be used to obtain enhanced efficiency for any number of computationally-intensive large-storage processes, for example, using a table-driven software implementation.
- the processes that will benefit from the techniques involve a time-stepping forward simulation that is accessed in reverse-time order to correlate with a backward time stepping computation.
- the optimal checkpointing procedure is used in seismic imaging applications.
- the optimal checkpointing procedure may provide improved computational efficiency for prestack shot-record RTM, Prestack simultaneous source RTM, Prestack shot-record FWI Gradient, Prestack shot-record FWI Hessian, Prestack simultaneous source FWI Gradient, Prestack simultaneous source Hessian, and similar seismic calculations.
- the computer simulator in each of these applications may be based on a seismic wave equation, for example, using anisotropic visco- elastic physics.
- the recorded data may include particle velocity, pressure, stress, acceleration, or any combinations thereof.
- the forward time-stepping seismic simulation can apply different levels of physics ranging from simple constant-density acoustic, variable-density acoustic, visco-anisotropic acoustic, isotropic elastic, anisotropic elastic and up to fully anisotropic -visco-elastic simulation.
- the correlation of the forward simulation with adjoint simulations states generated from the measured data may be used to generate seismic images, to correct velocity models, estimate stiffness coefficients, estimate source wavelets, and estimate attenuation quality factors, among others.
- the correlation step only requires that the source- excitation wavefield and the receiver backward-in-time propagated wavefield at the same time be cross-correlated and summed for all time steps.
- a propagation or simulation may be performed in a reverse time step order or in a forward time step order and the result is the same.
- the RTM example discussed above has a source excitation wavefield that is naturally accessible in a forward-time order accessed in reverse-time order while the receiver wavefield is marched backward in time.
- the optimal checkpointing strategy can also apply to implementations in which the receiver wavefield is checkpointed during backward-in-time propagation and then accessed in forward-time order to match the source excitation wavefield being forwardly propagated in time.
- the optimal checkpointing strategy can be used for history matching of hydrocarbon reservoir simulations.
- the data collected from the reservoir may include fluid volumes and types produced from a well, bottom hole temperatures, and stratigraphic rock records, among others.
- the computer simulation may be based on a multi-phase expression of Darcy's law for fluid flow.
- the correlation may be used to adjust parameters such as porosity, permeability, fluid saturations, and pressure distributions, among others.
- the correlation may also be used to generate production predictions for the reservoir and for reservoir management tasks. Such tasks may include determining locations for new wells, and determining whether to converting producers to injectors, among others.
- the present techniques may be used for basin modeling.
- the stratigraphic rock record may be one of the measured parameters.
- the computer simulation is based on tectonic deformation of a basin and a model of the sedimentation processes that formed the basin.
- the output from the correlation may assist with the determination of sedimentation rates and accommodation space available as a function of position and geologic time. Further, the output may include the historical shape of the basin over geologic time and the history of depth of burial and thermal history for target reservoirs and source rocks.
- Another embodiment of the present techniques may be used in determining heat transfer in a heavy oil reservoir, such as the bitumen reservoirs in Cold Lake in Canada.
- the measured data may include temperature measurements, rock type and hydrocarbon type measurements, thermal expansion, subsidence associated with hydrocarbon production, and the like.
- the computer simulation may be based on diffusion equation for heat transfer, coupled with equations for rock, and heavy oil stiffness coefficients as a function of temperature, coupled with heavy oil phase relationships as a function of temperature and pressure, among others.
- the results of the correlation may be used to determine thermal conductivity and subsurface temperature in the overburden, and reservoir intervals and changes in phase for the hydrocarbon components, among others.
- the techniques are not limited to hydrocarbon systems.
- embodiments of the present techniques may be used to determine heat transfer through or across objects.
- the techniques may be used to compare temperature at the skin of the spacecraft with simulated results generated from a forward finite element analysis.
- the techniques may also benefit other diverse applications as climate simulations, simulations of nuclear weapon detonations, and the like.
- Fig. 18 is a block diagram of an exemplary cluster computing system 1800 that may be used to implement the present techniques, in accordance with exemplary embodiments of the present techniques.
- the cluster computing system 1800 illustrated has four computing units 1802, each of which may perform calculations for part of the seismic imaging.
- the present techniques are not limited to this configuration, as any number of computing configurations may be selected. For example, a smaller simulation, such as a seismic imaging calculation, may be run on a single computing unit 1802, such as a workstation, while a large simulation may be run on a cluster computing system 1800 having 10, 100, 1000, or even more computing units 1802.
- the cluster computing system 1800 may be accessed from one or more client systems 1804 over a network 1806, for example, through a high speed network interface 1808.
- the network 1806 may include a local area network (LAN), a wide area network (WAN), the Internet, or any combinations thereof.
- Each of the client systems 1804 may have non-transitory, computer readable memory 1810 for the storage of operating code and programs, including random access memory (RAM) and read only memory (ROM).
- RAM random access memory
- ROM read only memory
- the operating code and programs may include the code used to implement all or any portions of the methods discussed herein, for example, as discussed with respect to Figs. 3 and 10-14.
- non-transitory computer readable media may hold full state checkpoints, correlation checkpoints, and simulation results, such as a data representation of a subsurface space.
- the client systems 1804 can also have other non-transitory, computer readable media, such as storage systems 1812.
- the storage systems 1812 may include one or more hard drives, one or more optical drives, one or more flash drives, any combinations of these units, or any other suitable storage device.
- the storage systems 1812 may be used for the storage of checkpoints, code, models, data, and other information used for implementing the methods described herein.
- the data storage system may hold checkpoints for the optimal checkpointing strategy.
- the high speed network interface 1808 may be coupled to one or more communications busses in the cluster computing system 1800, such as a communications bus 1814.
- the communication bus 1814 may be used to communicate instructions and data from the high speed network interface 1808 to a cluster storage system 1816 and to each of the computing units 1802 in the cluster computing system 1800.
- the communications bus 1814 may also be used for communications among computing units 1802 and the storage array 1816.
- a high speed bus 1818 can be present to increase the communications rate between the computing units 1802 and/or the cluster storage system 1816.
- the cluster storage system 1816 can have one or more non-transitory, computer readable media devices, such as storage arrays 1820 for the storage of checkpoints, data, visual representations, results, code, or other information, for example, concerning the implementation of and results from the methods of Figs. 3 and 10-14.
- the storage arrays 1820 may include any combinations of hard drives, optical drives, flash drives, holographic storage arrays, or any other suitable devices.
- Each of the computing units 1802 can have a processor 1822 and associated local tangible, computer readable media, such as memory 1824 and storage 1826.
- Each of the processors 1822 may be a multiple core unit, such as a multiple core CPU or a GPU.
- the memory 1824 may include ROM and/or RAM used to store code, for example, used to direct the processor 1822 to implement the methods discussed with respect to Figs. 3 and 10-14.
- the storage 1826 may include one or more hard drives, one or more optical drives, one or more flash drives, or any combinations thereof.
- the storage 1826 may be used to provide storage for checkpoints, intermediate results, data, images, or code associated with operations, including code used to implement the method of Figs. 3 and 10-14.
- the present techniques are not limited to the architecture or unit configuration illustrated in Fig. 18.
- any suitable processor-based device may be utilized for implementing all or a portion of embodiments of the present techniques, including without limitation personal computers, networks personal computers, laptop computers, computer workstations, GPUs, mobile devices, and multi-processor servers or workstations with (or without) shared memory.
- embodiments may be implemented on application specific integrated circuits (ASICs) or very large scale integrated (VLSI) circuits.
- ASICs application specific integrated circuits
- VLSI very large scale integrated circuits.
- persons of ordinary skill in the art may utilize any number of suitable structures capable of executing logical operations according to the embodiments.
- the algorithm used needs to compute the number of store and restore operations for each type of memory and for each type of operation. This information is used to compute the cost of the forward simulation time reversal.
- the algorithm used provides a Griewank solution whenever C is greater than or equal to S. In that case, the full state check-points done by Griewank that could have been done by only storing the information needed for doing a correlation are reported by the algorithm as if they were stores of correlation information.
- the three examples labeled A, B and C compare (1) the computer cost of a time-reversal strategy using Griewank check-pointing to RAM, (2) the present invention using only check-pointing to RAM, and (3) the present invention using check-pointing to both RAM and disk. These examples assume that n is equal to 40,000 time steps and a computer environment that can support 100 restart state buffers in RAM and 100 restart state buffers on disk.
- the present invention can provide a speedup of 1.30x over the Griewank check-pointing strategy with all Griewank check-points going to RAM.
- Example B Optimal in Memory
- correlation buffers provide a 1.44x speedup for the forward simulation time reversal and an overall speedup of 1.29x over using "Griewank in Memory” for doing RTM.
- Example C Optimal in Memory and Disk
- n is equal to 40,000 time steps and a computer environment that can support 20 restart state buffers in RAM and 100 restart state buffers on disk.
- the RAM available is smaller than in the examples above and that the advantage associated with this invention is greater.
- the present invention applied in Example G can provide a speedup of 1.67x over the Griewank check-pointing strategy with all Griewank check-points going to RAM in Example D and an even larger speedup over the Griewank check-pointing strategy with all Griewank check-points going to disk in Example E.
- Example F Optimal in Memory and Disk
- the present invention can provide a speedup of 1.97x over a Griewank check-pointing strategy with all check-points saved in RAM.
- Example H Optimal in Memory and Disk
- Example K Optimal in Memory and Disk
- Example M Optimal in Memory and Disk
- the present invention can provide a speedup of 893x over a Griewank check-pointing strategy with all check-points saved in RAM.
- an algorithm of the present invention is able to use storage less than a restart state buffer if it is enough to contain a correlation buffer.
- This source code provides an example implementation of the present inventive method incorporating a two-level storage optimal check pointing strategy.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Remote Sensing (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- General Life Sciences & Earth Sciences (AREA)
- Geophysics (AREA)
- Environmental & Geological Engineering (AREA)
- Geology (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Optimization (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Algebra (AREA)
- Geophysics And Detection Of Objects (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Retry When Errors Occur (AREA)
- Processing Or Creating Images (AREA)
Abstract
Description
Claims
Priority Applications (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CA2796631A CA2796631C (en) | 2010-05-19 | 2011-03-14 | Method and system for checkpointing during simulations |
RU2012154894/08A RU2573269C2 (en) | 2010-05-19 | 2011-03-14 | Method and system for generating control points during simulation |
BR112012025845A BR112012025845A2 (en) | 2010-05-19 | 2011-03-14 | method and system to set verification during simulations |
AU2011256799A AU2011256799B2 (en) | 2010-05-19 | 2011-03-14 | Method and system for checkpointing during simulations |
KR1020127032886A KR101931935B1 (en) | 2010-05-19 | 2011-03-14 | Method and system for checkpointing during simulations |
CN201180024861.8A CN102906728B (en) | 2010-05-19 | 2011-03-14 | Method and system for checkpointing during simulations |
SG2012073813A SG184808A1 (en) | 2010-05-19 | 2011-03-14 | Method and system for checkpointing during simulations |
EP11783895.3A EP2572292A4 (en) | 2010-05-19 | 2011-03-14 | Method and system for checkpointing during simulations |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US34629810P | 2010-05-19 | 2010-05-19 | |
US61/346,298 | 2010-05-19 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2011146161A1 true WO2011146161A1 (en) | 2011-11-24 |
Family
ID=44973196
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2011/028350 WO2011146161A1 (en) | 2010-05-19 | 2011-03-14 | Method and system for checkpointing during simulations |
Country Status (11)
Country | Link |
---|---|
US (1) | US8756042B2 (en) |
EP (1) | EP2572292A4 (en) |
KR (1) | KR101931935B1 (en) |
CN (1) | CN102906728B (en) |
AU (1) | AU2011256799B2 (en) |
BR (1) | BR112012025845A2 (en) |
CA (1) | CA2796631C (en) |
MY (1) | MY175034A (en) |
RU (1) | RU2573269C2 (en) |
SG (1) | SG184808A1 (en) |
WO (1) | WO2011146161A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102866423A (en) * | 2012-09-13 | 2013-01-09 | 浪潮(北京)电子信息产业有限公司 | Seismic prestack time migration processing method and system |
Families Citing this family (71)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ES2341065B1 (en) * | 2007-10-25 | 2011-06-13 | Airbus España, S.L. | METHODS AND SYSTEMS FOR IMPROVING BADS USED IN COMPUTATIONAL FLUID DYNAMICS. |
CN102741854B (en) * | 2009-10-23 | 2015-08-19 | 埃克森美孚上游研究公司 | Utilize the method that gradient information is optimized |
US8694299B2 (en) | 2010-05-07 | 2014-04-08 | Exxonmobil Upstream Research Company | Artifact reduction in iterative inversion of geophysical data |
EP2577353A4 (en) * | 2010-06-02 | 2017-11-22 | Exxonmobil Upstream Research Company | Efficient computation of wave equation migration angle gathers |
US9366776B2 (en) * | 2010-11-30 | 2016-06-14 | Schlumberger Technology Corporation | Integrated formation modeling systems and methods |
US9046626B2 (en) * | 2011-01-10 | 2015-06-02 | Westerngeco L.L.C. | Performing reverse time imaging of multicomponent acoustic and seismic data |
US9291733B2 (en) * | 2011-01-31 | 2016-03-22 | Cggveritas Services Sa | Device and method for determining S-wave attenuation in near-surface condition |
CA2825395A1 (en) | 2011-03-30 | 2012-10-04 | Partha S. Routh | Convergence rate of full wavefield inversion using spectral shaping |
AU2012260584B2 (en) * | 2011-05-24 | 2015-09-10 | Geco Technology B.V. | Imaging by extrapolation of vector-acoustic data |
US9176930B2 (en) * | 2011-11-29 | 2015-11-03 | Exxonmobil Upstream Research Company | Methods for approximating hessian times vector operation in full wavefield inversion |
RU2612896C2 (en) | 2012-03-08 | 2017-03-13 | Эксонмобил Апстрим Рисерч Компани | Orthogonal coding source and receiver |
US20130311149A1 (en) * | 2012-05-17 | 2013-11-21 | Yaxun Tang | Tomographically Enhanced Full Wavefield Inversion |
US9665604B2 (en) * | 2012-07-31 | 2017-05-30 | Schlumberger Technology Corporation | Modeling and manipulation of seismic reference datum (SRD) in a collaborative petro-technical application environment |
US9429912B2 (en) * | 2012-08-17 | 2016-08-30 | Microsoft Technology Licensing, Llc | Mixed reality holographic object development |
EP2901363A4 (en) * | 2012-09-28 | 2016-06-01 | Exxonmobil Upstream Res Co | Fault removal in geological models |
US9857488B2 (en) | 2012-11-20 | 2018-01-02 | International Business Machines Corporation | Efficient wavefield compression in seismic imaging |
SG11201503218RA (en) | 2012-11-28 | 2015-06-29 | Exxonmobil Upstream Resarch Company | Reflection seismic data q tomography |
US10591638B2 (en) * | 2013-03-06 | 2020-03-17 | Exxonmobil Upstream Research Company | Inversion of geophysical data on computer system having parallel processors |
US9262560B2 (en) * | 2013-03-13 | 2016-02-16 | Saudi Arabian Oil Company | Automatic recovery of reservoir simulation runs from processing system failures |
AU2014237711B2 (en) * | 2013-03-15 | 2017-06-01 | Chevron U.S.A. Inc. | Beam inversion by Monte Carlo back projection |
US10088588B2 (en) * | 2013-04-03 | 2018-10-02 | Cgg Services Sas | Device and method for stable least-squares reverse time migration |
BR112015025516A2 (en) | 2013-05-24 | 2017-07-18 | Exxonmobil Upstream Res Co | multiparameter inversion through displacement-dependent elastic fwi |
US10459117B2 (en) | 2013-06-03 | 2019-10-29 | Exxonmobil Upstream Research Company | Extended subspace method for cross-talk mitigation in multi-parameter inversion |
US9702998B2 (en) | 2013-07-08 | 2017-07-11 | Exxonmobil Upstream Research Company | Full-wavefield inversion of primaries and multiples in marine environment |
CN104376026B (en) * | 2013-08-18 | 2018-04-13 | 复旦大学 | Table lookup method based on grid and multidimensional tree mixed structure |
US9772413B2 (en) | 2013-08-23 | 2017-09-26 | Exxonmobil Upstream Research Company | Simultaneous sourcing during both seismic acquisition and seismic inversion |
US10036818B2 (en) | 2013-09-06 | 2018-07-31 | Exxonmobil Upstream Research Company | Accelerating full wavefield inversion with nonstationary point-spread functions |
US9910189B2 (en) | 2014-04-09 | 2018-03-06 | Exxonmobil Upstream Research Company | Method for fast line search in frequency domain FWI |
US10267937B2 (en) | 2014-04-17 | 2019-04-23 | Saudi Arabian Oil Company | Generating subterranean imaging data based on vertical seismic profile data and ocean bottom sensor data |
US9562983B2 (en) * | 2014-04-17 | 2017-02-07 | Saudi Arabian Oil Company | Generating subterranean imaging data based on vertical seismic profile data |
EP3140675A1 (en) | 2014-05-09 | 2017-03-15 | Exxonmobil Upstream Research Company | Efficient line search methods for multi-parameter full wavefield inversion |
US10185046B2 (en) | 2014-06-09 | 2019-01-22 | Exxonmobil Upstream Research Company | Method for temporal dispersion correction for seismic simulation, RTM and FWI |
US9689999B2 (en) * | 2014-06-13 | 2017-06-27 | Pgs Geophysical As | Seismic imaging using higher-order reflections |
EP3158367A1 (en) | 2014-06-17 | 2017-04-26 | Exxonmobil Upstream Research Company | Fast viscoacoustic and viscoelastic full-wavefield inversion |
US10838092B2 (en) | 2014-07-24 | 2020-11-17 | Exxonmobil Upstream Research Company | Estimating multiple subsurface parameters by cascaded inversion of wavefield components |
US10422899B2 (en) * | 2014-07-30 | 2019-09-24 | Exxonmobil Upstream Research Company | Harmonic encoding for FWI |
US9551210B2 (en) * | 2014-08-15 | 2017-01-24 | Carbo Ceramics Inc. | Systems and methods for removal of electromagnetic dispersion and attenuation for imaging of proppant in an induced fracture |
WO2016054008A1 (en) * | 2014-10-02 | 2016-04-07 | Conocophillips Company | Pulsed marine source |
US10386511B2 (en) | 2014-10-03 | 2019-08-20 | Exxonmobil Upstream Research Company | Seismic survey design using full wavefield inversion |
EP3210050A1 (en) | 2014-10-20 | 2017-08-30 | Exxonmobil Upstream Research Company | Velocity tomography using property scans |
US10803534B2 (en) * | 2014-10-31 | 2020-10-13 | Exxonmobil Upstream Research Company | Handling domain discontinuity with the help of grid optimization techniques |
AU2015363241A1 (en) | 2014-12-18 | 2017-06-29 | Exxonmobil Upstream Research Company | Scalable scheduling of parallel iterative seismic jobs |
US10520618B2 (en) * | 2015-02-04 | 2019-12-31 | ExxohnMobil Upstream Research Company | Poynting vector minimal reflection boundary conditions |
US10317546B2 (en) | 2015-02-13 | 2019-06-11 | Exxonmobil Upstream Research Company | Efficient and stable absorbing boundary condition in finite-difference calculations |
SG11201704623RA (en) | 2015-02-17 | 2017-09-28 | Exxonmobil Upstream Res Co | Multistage full wavefield inversion process that generates a multiple free data set |
US10317551B2 (en) * | 2015-06-01 | 2019-06-11 | Pgs Geophysical As | Using seabed sensors and sea-surface reflections for structural imaging of a subsurface location in a geological formation |
AU2016270000B2 (en) | 2015-06-04 | 2019-05-16 | Exxonmobil Upstream Research Company | Method for generating multiple free seismic images |
US10838093B2 (en) | 2015-07-02 | 2020-11-17 | Exxonmobil Upstream Research Company | Krylov-space-based quasi-newton preconditioner for full-wavefield inversion |
US10310113B2 (en) | 2015-10-02 | 2019-06-04 | Exxonmobil Upstream Research Company | Q-compensated full wavefield inversion |
US10520619B2 (en) | 2015-10-15 | 2019-12-31 | Exxonmobil Upstream Research Company | FWI model domain angle stacks with amplitude preservation |
CN105354385B (en) * | 2015-11-13 | 2019-10-01 | 电子科技大学 | A kind of ordering of grids implementation method in semiconductor technology emulation |
EP3394642B1 (en) * | 2015-12-22 | 2022-02-16 | Shell Internationale Research Maatschappij B.V. | Method and system for generating a seismic gather |
WO2017188873A1 (en) * | 2016-04-29 | 2017-11-02 | Telefonaktiebolaget Lm Ericsson (Publ) | Encoding and decoding using a polar code |
US10768324B2 (en) | 2016-05-19 | 2020-09-08 | Exxonmobil Upstream Research Company | Method to predict pore pressure and seal integrity using full wavefield inversion |
WO2018017108A1 (en) * | 2016-07-22 | 2018-01-25 | Schlumberger Technology Corporation | Modeling of oil and gas fields for appraisal and early development |
WO2018053051A1 (en) * | 2016-09-13 | 2018-03-22 | Purdue Research Foundation | System and method for divide-and conquer checkpointing |
US10345466B2 (en) * | 2017-07-25 | 2019-07-09 | Advanced Geophysical Technology Inc. | Memory efficient Q-RTM computer method and apparatus for imaging seismic data |
GB2590330B (en) * | 2018-10-11 | 2023-01-04 | Landmark Graphics Corp | Calibrating time-lapse seismic images for production operations |
US11644593B2 (en) | 2018-10-11 | 2023-05-09 | Landmark Graphics Corporation | Calibrating time-lapse seismic images for production operations |
US11073629B2 (en) * | 2018-10-16 | 2021-07-27 | Halliburton Energy Services, Inc. | Method to improve DAS channel location accuracy using global inversion |
US11080141B2 (en) | 2019-01-22 | 2021-08-03 | International Business Machines Corporation | Automatic restarting and reconfiguration of physics-based models in event of model failure |
US11360224B2 (en) | 2019-05-03 | 2022-06-14 | Exxonmobil Upstream Research Company | Inversion, migration, and imaging related to isotropic wave-mode- independent attenuation |
US11500116B2 (en) * | 2019-05-15 | 2022-11-15 | Saudi Arabian Oil Company | Identifying characteristics of a subterranean region using vector-based wavefield separation of seismic data from the subterranean region |
US11187820B1 (en) * | 2019-06-18 | 2021-11-30 | Euram Geo-Focus Technologies Corporation | Methods of oil and gas exploration using digital imaging |
US11346967B2 (en) * | 2019-09-10 | 2022-05-31 | Advanced Geophysical Technology Inc. | Systems and methods for providing amplitude versus offset compliant migration gathers |
US20220236439A1 (en) * | 2021-01-23 | 2022-07-28 | Manzar Fawad | Rock physics model for shale volume estimation in subsurface reservoirs |
KR102424206B1 (en) * | 2021-03-23 | 2022-07-22 | 국방과학연구소 | Reverse simulation engine server and reverse simulation method thereof for developing defense systems based on simulation models |
US20220413176A1 (en) * | 2021-06-28 | 2022-12-29 | Halliburton Energy Services, Inc. | Annulus Velocity Independent Time Domain Structure Imaging In Cased Holes Using Multi-Offset Secondary Flexural Wave Data |
US11867857B2 (en) * | 2021-07-13 | 2024-01-09 | Saudi Arabian Oil Company | Method and system for updating a seismic velocity model |
CN113706603B (en) * | 2021-10-28 | 2022-02-22 | 中国科学院地质与地球物理研究所 | Method for classifying and characterizing porosity connectivity of shale organic matter |
CN118468798B (en) * | 2024-07-11 | 2024-10-01 | 北京开源芯片研究院 | Method and device for generating check point, electronic equipment and storage medium |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5504678A (en) * | 1994-06-03 | 1996-04-02 | Exxon Production Research Company | Method for seismic data processing using depth slice decomposition |
US20100054082A1 (en) * | 2008-08-29 | 2010-03-04 | Acceleware Corp. | Reverse-time depth migration with reduced memory requirements |
US20100088494A1 (en) * | 2008-10-02 | 2010-04-08 | International Business Machines Corporation | Total cost based checkpoint selection |
US20100118651A1 (en) * | 2008-11-10 | 2010-05-13 | Chevron U.S.A. Inc. | Method for generation of images related to a subsurface region of interest |
Family Cites Families (134)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3812457A (en) | 1969-11-17 | 1974-05-21 | Shell Oil Co | Seismic exploration method |
US3864667A (en) | 1970-09-11 | 1975-02-04 | Continental Oil Co | Apparatus for surface wave parameter determination |
US3984805A (en) | 1973-10-18 | 1976-10-05 | Daniel Silverman | Parallel operation of seismic vibrators without phase control |
US4168485A (en) | 1974-08-12 | 1979-09-18 | Continental Oil Company | Simultaneous use of pseudo-random control signals in vibrational exploration methods |
US4675851A (en) | 1982-09-09 | 1987-06-23 | Western Geophysical Co. | Method for seismic exploration |
US4545039A (en) | 1982-09-09 | 1985-10-01 | Western Geophysical Co. Of America | Methods for seismic exploration |
US4575830A (en) | 1982-10-15 | 1986-03-11 | Schlumberger Technology Corporation | Indirect shearwave determination |
US4562540A (en) | 1982-11-12 | 1985-12-31 | Schlumberger Technology Corporation | Diffraction tomography system and methods |
US4594662A (en) | 1982-11-12 | 1986-06-10 | Schlumberger Technology Corporation | Diffraction tomography systems and methods with fixed detector arrays |
JPS606032A (en) | 1983-06-22 | 1985-01-12 | Honda Motor Co Ltd | Control method of operating condition of internal- combustion engine |
US4924390A (en) | 1985-03-04 | 1990-05-08 | Conoco, Inc. | Method for determination of earth stratum elastic parameters using seismic energy |
US4715020A (en) | 1986-10-29 | 1987-12-22 | Western Atlas International, Inc. | Simultaneous performance of multiple seismic vibratory surveys |
FR2589587B1 (en) | 1985-10-30 | 1988-02-05 | Inst Francais Du Petrole | MARINE SEISMIC PROSPECTION METHOD USING A CODE VIBRATORY SIGNAL AND DEVICE FOR IMPLEMENTING SAME |
US4707812A (en) | 1985-12-09 | 1987-11-17 | Atlantic Richfield Company | Method of suppressing vibration seismic signal correlation noise |
US4823326A (en) | 1986-07-21 | 1989-04-18 | The Standard Oil Company | Seismic data acquisition technique having superposed signals |
US4686654A (en) | 1986-07-31 | 1987-08-11 | Western Geophysical Company Of America | Method for generating orthogonal sweep signals |
US4766574A (en) | 1987-03-31 | 1988-08-23 | Amoco Corporation | Method for depth imaging multicomponent seismic data |
US4953657A (en) | 1987-11-30 | 1990-09-04 | Halliburton Geophysical Services, Inc. | Time delay source coding |
US4969129A (en) | 1989-09-20 | 1990-11-06 | Texaco Inc. | Coding seismic sources |
US4982374A (en) | 1989-10-23 | 1991-01-01 | Halliburton Geophysical Services, Inc. | Method of source coding and harmonic cancellation for vibrational geophysical survey sources |
GB9011836D0 (en) | 1990-05-25 | 1990-07-18 | Mason Iain M | Seismic surveying |
US5469062A (en) | 1994-03-11 | 1995-11-21 | Baker Hughes, Inc. | Multiple depths and frequencies for simultaneous inversion of electromagnetic borehole measurements |
GB2322704B (en) | 1994-07-07 | 1998-12-09 | Geco As | Method of Processing seismic data |
US5583825A (en) | 1994-09-02 | 1996-12-10 | Exxon Production Research Company | Method for deriving reservoir lithology and fluid content from pre-stack inversion of seismic data |
US5924049A (en) | 1995-04-18 | 1999-07-13 | Western Atlas International, Inc. | Methods for acquiring and processing seismic data |
CA2188255C (en) | 1995-04-18 | 2003-03-25 | Craig J. Beasley | Method for providing uniform subsurface coverage in the presence of steep dips |
US5721710A (en) | 1995-09-29 | 1998-02-24 | Atlantic Richfield Company | High fidelity vibratory source seismic method with source separation |
US5719821A (en) | 1995-09-29 | 1998-02-17 | Atlantic Richfield Company | Method and apparatus for source separation of seismic vibratory signals |
US5790473A (en) | 1995-11-13 | 1998-08-04 | Mobil Oil Corporation | High fidelity vibratory source seismic method for use in vertical seismic profile data gathering with a plurality of vibratory seismic energy sources |
US5822269A (en) | 1995-11-13 | 1998-10-13 | Mobil Oil Corporation | Method for separation of a plurality of vibratory seismic energy source signals |
US5715213A (en) | 1995-11-13 | 1998-02-03 | Mobil Oil Corporation | High fidelity vibratory source seismic method using a plurality of vibrator sources |
US5838634A (en) | 1996-04-04 | 1998-11-17 | Exxon Production Research Company | Method of generating 3-D geologic models incorporating geologic and geophysical constraints |
US5798982A (en) | 1996-04-29 | 1998-08-25 | The Trustees Of Columbia University In The City Of New York | Method for inverting reflection trace data from 3-D and 4-D seismic surveys and identifying subsurface fluid and pathways in and among hydrocarbon reservoirs based on impedance models |
GB9612471D0 (en) | 1996-06-14 | 1996-08-14 | Geco As | Method and apparatus for multiple seismic vibratory surveys |
US5878372A (en) | 1997-03-04 | 1999-03-02 | Western Atlas International, Inc. | Method for simultaneous inversion processing of well log data using a plurality of earth models |
US6014342A (en) | 1997-03-21 | 2000-01-11 | Tomo Seis, Inc. | Method of evaluating a subsurface region using gather sensitive data discrimination |
US5999489A (en) | 1997-03-21 | 1999-12-07 | Tomoseis Inc. | High vertical resolution crosswell seismic imaging |
US5920838A (en) | 1997-06-02 | 1999-07-06 | Carnegie Mellon University | Reading and pronunciation tutor |
FR2765692B1 (en) | 1997-07-04 | 1999-09-10 | Inst Francais Du Petrole | METHOD FOR 3D MODELING THE IMPEDANCE OF A HETEROGENEOUS MEDIUM |
GB2329043B (en) | 1997-09-05 | 2000-04-26 | Geco As | Method of determining the response caused by model alterations in seismic simulations |
US5999488A (en) | 1998-04-27 | 1999-12-07 | Phillips Petroleum Company | Method and apparatus for migration by finite differences |
US6219621B1 (en) | 1998-06-30 | 2001-04-17 | Exxonmobil Upstream Research Co. | Sparse hyperbolic inversion of seismic data |
US6388947B1 (en) | 1998-09-14 | 2002-05-14 | Tomoseis, Inc. | Multi-crosswell profile 3D imaging and method |
US6574564B2 (en) | 1998-10-01 | 2003-06-03 | Institut Francais Du Petrole | 3D prestack seismic data migration method |
FR2784195B1 (en) | 1998-10-01 | 2000-11-17 | Inst Francais Du Petrole | METHOD FOR PERFORMING IN 3D BEFORE SUMMATION, A MIGRATION OF SEISMIC DATA |
US6225803B1 (en) | 1998-10-29 | 2001-05-01 | Baker Hughes Incorporated | NMR log processing using wavelet filter and iterative inversion |
US6021094A (en) | 1998-12-03 | 2000-02-01 | Sandia Corporation | Method of migrating seismic records |
US6754588B2 (en) | 1999-01-29 | 2004-06-22 | Platte River Associates, Inc. | Method of predicting three-dimensional stratigraphy using inverse optimization techniques |
US6549854B1 (en) | 1999-02-12 | 2003-04-15 | Schlumberger Technology Corporation | Uncertainty constrained subsurface modeling |
US6058073A (en) | 1999-03-30 | 2000-05-02 | Atlantic Richfield Company | Elastic impedance estimation for inversion of far offset seismic sections |
FR2792419B1 (en) | 1999-04-16 | 2001-09-07 | Inst Francais Du Petrole | METHOD FOR OBTAINING AN OPTIMAL MODEL OF A PHYSICAL CHARACTERISTICS IN A HETEROGENEOUS ENVIRONMENT, SUCH AS THE BASEMENT |
GB9927395D0 (en) | 1999-05-19 | 2000-01-19 | Schlumberger Holdings | Improved seismic data acquisition method |
US6327537B1 (en) | 1999-07-19 | 2001-12-04 | Luc T. Ikelle | Multi-shooting approach to seismic modeling and acquisition |
FR2798197B1 (en) | 1999-09-02 | 2001-10-05 | Inst Francais Du Petrole | METHOD FOR FORMING A MODEL OF A GEOLOGICAL FORMATION, CONSTRAINED BY DYNAMIC AND STATIC DATA |
EP1094338B1 (en) | 1999-10-22 | 2006-08-23 | Jason Geosystems B.V. | Method of estimating elastic parameters and rock composition of underground formations using seismic data |
FR2800473B1 (en) | 1999-10-29 | 2001-11-30 | Inst Francais Du Petrole | METHOD FOR 2D OR 3D MODELING A HETEROGENEOUS MEDIUM SUCH AS THE BASEMENT DESCRIBED BY SEVERAL PHYSICAL PARAMETERS |
US6480790B1 (en) | 1999-10-29 | 2002-11-12 | Exxonmobil Upstream Research Company | Process for constructing three-dimensional geologic models having adjustable geologic interfaces |
EP1248957A1 (en) | 2000-01-21 | 2002-10-16 | Schlumberger Holdings Limited | System and method for estimating seismic material properties |
DE60112895D1 (en) | 2000-01-21 | 2005-09-29 | Schlumberger Holdings | SYSTEM AND METHOD OF SEISMIC WAVELOCK SEPARATION |
US6826486B1 (en) | 2000-02-11 | 2004-11-30 | Schlumberger Technology Corporation | Methods and apparatus for predicting pore and fracture pressures of a subsurface formation |
FR2805051B1 (en) | 2000-02-14 | 2002-12-06 | Geophysique Cie Gle | METHOD OF SEISMIC MONITORING OF AN UNDERGROUND AREA BY SIMULTANEOUS USE OF MULTIPLE VIBROISISMIC SOURCES |
GB2359363B (en) | 2000-02-15 | 2002-04-03 | Geco Prakla | Processing simultaneous vibratory seismic data |
US6687659B1 (en) | 2000-03-24 | 2004-02-03 | Conocophillips Company | Method and apparatus for absorbing boundary conditions in numerical finite-difference acoustic applications |
US6317695B1 (en) | 2000-03-30 | 2001-11-13 | Nutec Sciences, Inc. | Seismic data processing method |
CA2426160A1 (en) | 2000-10-17 | 2002-04-25 | David Lee Nyland | Method of using cascaded sweeps for source coding and harmonic cancellation |
AU2002239619A1 (en) | 2000-12-08 | 2002-06-18 | Peter J. Ortoleva | Methods for modeling multi-dimensional domains using information theory to resolve gaps in data and in theories |
FR2818753B1 (en) | 2000-12-21 | 2003-03-21 | Inst Francais Du Petrole | METHOD AND DEVICE FOR SEISMIC PROSPECTION BY SIMULTANEOUS EMISSION OF SEISMISK SIGNALS OBTAINED BY CODING A SIGNAL BY RANDOM PSEUDO SEQUENCES |
FR2821677B1 (en) | 2001-03-05 | 2004-04-30 | Geophysique Cie Gle | IMPROVEMENTS TO TOMOGRAPHIC INVERSION PROCESSES OF POINTED EVENTS ON MIGREE SEISMIC DATA |
US6751558B2 (en) | 2001-03-13 | 2004-06-15 | Conoco Inc. | Method and process for prediction of subsurface fluid and rock pressures in the earth |
US6927698B2 (en) | 2001-08-27 | 2005-08-09 | Larry G. Stolarczyk | Shuttle-in receiver for radio-imaging underground geologic structures |
US6545944B2 (en) | 2001-05-30 | 2003-04-08 | Westerngeco L.L.C. | Method for acquiring and processing of data from two or more simultaneously fired sources |
US6882958B2 (en) | 2001-06-28 | 2005-04-19 | National Instruments Corporation | System and method for curve fitting using randomized techniques |
GB2379013B (en) | 2001-08-07 | 2005-04-20 | Abb Offshore Systems Ltd | Microseismic signal processing |
US6593746B2 (en) | 2001-08-27 | 2003-07-15 | Larry G. Stolarczyk | Method and system for radio-imaging underground geologic structures |
US7672824B2 (en) | 2001-12-10 | 2010-03-02 | Westerngeco L.L.C. | Method for shallow water flow detection |
FR2833384B1 (en) * | 2001-12-10 | 2004-04-02 | Tsurf | METHOD, DEVICE AND PROGRAM PRODUCT FOR THREE-DIMENSIONAL MODELING OF A GEOLOGICAL VOLUME |
US7069149B2 (en) | 2001-12-14 | 2006-06-27 | Chevron U.S.A. Inc. | Process for interpreting faults from a fault-enhanced 3-dimensional seismic attribute volume |
US7330799B2 (en) | 2001-12-21 | 2008-02-12 | Société de commercialisation des produits de la recherche appliquée-Socpra Sciences et Génie s.e.c. | Method and algorithm for using surface waves |
US6842701B2 (en) | 2002-02-25 | 2005-01-11 | Westerngeco L.L.C. | Method of noise removal for cascaded sweep data |
GB2387226C (en) | 2002-04-06 | 2008-05-12 | Westerngeco Ltd | A method of seismic surveying |
FR2839368B1 (en) | 2002-05-06 | 2004-10-01 | Total Fina Elf S A | METHOD OF DECIMATING SEISMIC TRACES PILOTED BY THE SEISMIC PATH |
US6832159B2 (en) | 2002-07-11 | 2004-12-14 | Schlumberger Technology Corporation | Intelligent diagnosis of environmental influence on well logs with model-based inversion |
FR2843202B1 (en) | 2002-08-05 | 2004-09-10 | Inst Francais Du Petrole | METHOD FOR FORMING A REPRESENTATIVE MODEL OF THE DISTRIBUTION OF A PHYSICAL QUANTITY IN AN UNDERGROUND AREA, FREE OF THE EFFECT OF CORRECTED NOISES BINDING EXPLORATION DATA |
WO2004034088A2 (en) | 2002-10-04 | 2004-04-22 | Paradigm Geophysical Corporation | Method and system for limited frequency seismic imaging |
GB2396448B (en) | 2002-12-21 | 2005-03-02 | Schlumberger Holdings | System and method for representing and processing and modeling subterranean surfaces |
US6735527B1 (en) | 2003-02-26 | 2004-05-11 | Landmark Graphics Corporation | 3-D prestack/poststack multiple prediction |
US6999880B2 (en) | 2003-03-18 | 2006-02-14 | The Regents Of The University Of California | Source-independent full waveform inversion of seismic data |
US7184367B2 (en) | 2003-03-27 | 2007-02-27 | Exxonmobil Upstream Research Company | Method to convert seismic traces into petrophysical property logs |
US7436734B2 (en) | 2003-04-01 | 2008-10-14 | Exxonmobil Upstream Research Co. | Shaped high frequency vibratory source |
US7072767B2 (en) | 2003-04-01 | 2006-07-04 | Conocophillips Company | Simultaneous inversion for source wavelet and AVO parameters from prestack seismic data |
NO322089B1 (en) | 2003-04-09 | 2006-08-14 | Norsar V Daglig Leder | Procedure for simulating local preamp deep-migrated seismic images |
GB2400438B (en) | 2003-04-11 | 2005-06-01 | Westerngeco Ltd | Determination of waveguide parameters |
US6970397B2 (en) | 2003-07-09 | 2005-11-29 | Gas Technology Institute | Determination of fluid properties of earth formations using stochastic inversion |
US6882938B2 (en) | 2003-07-30 | 2005-04-19 | Pgs Americas, Inc. | Method for separating seismic signals from two or more distinct sources |
US6944546B2 (en) | 2003-10-01 | 2005-09-13 | Halliburton Energy Services, Inc. | Method and apparatus for inversion processing of well logging data in a selected pattern space |
US6901333B2 (en) | 2003-10-27 | 2005-05-31 | Fugro N.V. | Method and device for the generation and application of anisotropic elastic parameters |
US7046581B2 (en) | 2003-12-01 | 2006-05-16 | Shell Oil Company | Well-to-well tomography |
US20050128874A1 (en) | 2003-12-15 | 2005-06-16 | Chevron U.S.A. Inc. | Methods for acquiring and processing seismic data from quasi-simultaneously activated translating energy sources |
FR2872584B1 (en) | 2004-06-30 | 2006-08-11 | Inst Francais Du Petrole | METHOD FOR SIMULATING THE SEDIMENT DEPOSITION IN A BASIN RESPECTING THE SEDIMENT SEQUENCE THICKNESS |
US7646924B2 (en) | 2004-08-09 | 2010-01-12 | David Leigh Donoho | Method and apparatus for compressed sensing |
US7480206B2 (en) | 2004-09-13 | 2009-01-20 | Chevron U.S.A. Inc. | Methods for earth modeling and seismic imaging using interactive and selective updating |
GB2422433B (en) | 2004-12-21 | 2008-03-19 | Sondex Wireline Ltd | Method and apparatus for determining the permeability of earth formations |
US7373251B2 (en) | 2004-12-22 | 2008-05-13 | Marathon Oil Company | Method for predicting quantitative values of a rock or fluid property in a reservoir using seismic data |
US7230879B2 (en) | 2005-02-12 | 2007-06-12 | Chevron U.S.A. Inc. | Method and apparatus for true relative amplitude correction of seismic data for normal moveout stretch effects |
WO2006090374A2 (en) | 2005-02-22 | 2006-08-31 | Paradigm Geophysical Ltd. | Multiple suppression in angle domain time and depth migration |
US7840625B2 (en) | 2005-04-07 | 2010-11-23 | California Institute Of Technology | Methods for performing fast discrete curvelet transforms of data |
US7271747B2 (en) | 2005-05-10 | 2007-09-18 | Rice University | Method and apparatus for distributed compressed sensing |
US7405997B2 (en) | 2005-08-11 | 2008-07-29 | Conocophillips Company | Method of accounting for wavelet stretch in seismic data |
RU2440604C2 (en) | 2005-10-18 | 2012-01-20 | Синвент Ас | Viewing response data of geologic environment using streaming processors |
AU2006235820B2 (en) | 2005-11-04 | 2008-10-23 | Westerngeco Seismic Holdings Limited | 3D pre-stack full waveform inversion |
FR2895091B1 (en) | 2005-12-21 | 2008-02-22 | Inst Francais Du Petrole | METHOD FOR UPDATING A GEOLOGICAL MODEL WITH SEISMIC DATA |
US7196969B1 (en) * | 2006-02-09 | 2007-03-27 | Pgs Geophysical As | Three-dimensional two-way acoustic wave equation pre-stack imaging systems and methods |
GB2436626B (en) | 2006-03-28 | 2008-08-06 | Westerngeco Seismic Holdings | Method of evaluating the interaction between a wavefield and a solid body |
US7620534B2 (en) | 2006-04-28 | 2009-11-17 | Saudi Aramco | Sound enabling computerized system for real time reservoir model calibration using field surveillance data |
US20070274155A1 (en) | 2006-05-25 | 2007-11-29 | Ikelle Luc T | Coding and Decoding: Seismic Data Modeling, Acquisition and Processing |
US7725266B2 (en) | 2006-05-31 | 2010-05-25 | Bp Corporation North America Inc. | System and method for 3D frequency domain waveform inversion based on 3D time-domain forward modeling |
US7599798B2 (en) | 2006-09-11 | 2009-10-06 | Westerngeco L.L.C. | Migrating composite seismic response data to produce a representation of a seismic volume |
AU2007302695B2 (en) * | 2006-09-28 | 2011-05-26 | Exxonmobil Upstream Research Company | Iterative inversion of data from simultaneous geophysical sources |
ATE543109T1 (en) | 2007-01-20 | 2012-02-15 | Spectraseis Ag | TIME REVERSAL RESERVOIR LOCALIZATION |
JP2009063942A (en) | 2007-09-10 | 2009-03-26 | Sumitomo Electric Ind Ltd | Far-infrared camera lens, lens unit, and imaging apparatus |
US20090070042A1 (en) | 2007-09-11 | 2009-03-12 | Richard Birchwood | Joint inversion of borehole acoustic radial profiles for in situ stresses as well as third-order nonlinear dynamic moduli, linear dynamic elastic moduli, and static elastic moduli in an isotropically stressed reference state |
US20090083006A1 (en) | 2007-09-20 | 2009-03-26 | Randall Mackie | Methods and apparatus for three-dimensional inversion of electromagnetic data |
US20090164186A1 (en) | 2007-12-20 | 2009-06-25 | Bhp Billiton Innovation Pty Ltd. | Method for determining improved estimates of properties of a model |
US8577660B2 (en) | 2008-01-23 | 2013-11-05 | Schlumberger Technology Corporation | Three-dimensional mechanical earth modeling |
EP2105765A1 (en) | 2008-03-28 | 2009-09-30 | Schlumberger Holdings Limited | Simultaneous inversion of induction data for dielectric permittivity and electric conductivity |
US8494777B2 (en) | 2008-04-09 | 2013-07-23 | Schlumberger Technology Corporation | Continuous microseismic mapping for real-time 3D event detection and location |
US8345510B2 (en) | 2008-06-02 | 2013-01-01 | Pgs Geophysical As | Method for aquiring and processing marine seismic data to extract and constructively use the up-going and down-going wave-fields emitted by the source(s) |
CN102124374B (en) | 2008-08-15 | 2013-07-17 | Bp北美公司 | Method for separating independent simultaneous sources |
US8296069B2 (en) | 2008-10-06 | 2012-10-23 | Bp Corporation North America Inc. | Pseudo-analytical method for the solution of wave equations |
US7616523B1 (en) | 2008-10-22 | 2009-11-10 | Pgs Geophysical As | Method for combining pressure and motion seismic signals from streamers where sensors are not at a common depth |
US9213119B2 (en) | 2008-10-29 | 2015-12-15 | Conocophillips Company | Marine seismic acquisition |
US20100142316A1 (en) | 2008-12-07 | 2010-06-10 | Henk Keers | Using waveform inversion to determine properties of a subsurface medium |
US8223587B2 (en) * | 2010-03-29 | 2012-07-17 | Exxonmobil Upstream Research Company | Full wavefield inversion using time varying filters |
US8437998B2 (en) * | 2010-09-27 | 2013-05-07 | Exxonmobil Upstream Research Company | Hybrid method for full waveform inversion using simultaneous and sequential source method |
-
2011
- 2011-02-24 US US13/034,341 patent/US8756042B2/en active Active
- 2011-03-14 AU AU2011256799A patent/AU2011256799B2/en not_active Ceased
- 2011-03-14 RU RU2012154894/08A patent/RU2573269C2/en not_active IP Right Cessation
- 2011-03-14 WO PCT/US2011/028350 patent/WO2011146161A1/en active Application Filing
- 2011-03-14 CN CN201180024861.8A patent/CN102906728B/en not_active Expired - Fee Related
- 2011-03-14 MY MYPI2012004555A patent/MY175034A/en unknown
- 2011-03-14 CA CA2796631A patent/CA2796631C/en not_active Expired - Fee Related
- 2011-03-14 KR KR1020127032886A patent/KR101931935B1/en active IP Right Grant
- 2011-03-14 BR BR112012025845A patent/BR112012025845A2/en not_active Application Discontinuation
- 2011-03-14 SG SG2012073813A patent/SG184808A1/en unknown
- 2011-03-14 EP EP11783895.3A patent/EP2572292A4/en not_active Withdrawn
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5504678A (en) * | 1994-06-03 | 1996-04-02 | Exxon Production Research Company | Method for seismic data processing using depth slice decomposition |
US20100054082A1 (en) * | 2008-08-29 | 2010-03-04 | Acceleware Corp. | Reverse-time depth migration with reduced memory requirements |
US20100088494A1 (en) * | 2008-10-02 | 2010-04-08 | International Business Machines Corporation | Total cost based checkpoint selection |
US20100118651A1 (en) * | 2008-11-10 | 2010-05-13 | Chevron U.S.A. Inc. | Method for generation of images related to a subsurface region of interest |
Non-Patent Citations (2)
Title |
---|
See also references of EP2572292A4 * |
SYMES.: "Reverse Time Migration with Optimal Checkpointing", GEOPHYSICS, vol. 72, no. 5, September 2007 (2007-09-01), pages SM213 - SM221., XP001506322, Retrieved from the Internet <URL:http://www.caam.rice.edu/caam/trs/2006/TR06-18.pdf> [retrieved on 20110430] * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102866423A (en) * | 2012-09-13 | 2013-01-09 | 浪潮(北京)电子信息产业有限公司 | Seismic prestack time migration processing method and system |
CN102866423B (en) * | 2012-09-13 | 2015-07-22 | 浪潮(北京)电子信息产业有限公司 | Seismic prestack time migration processing method and system |
Also Published As
Publication number | Publication date |
---|---|
BR112012025845A2 (en) | 2016-06-28 |
EP2572292A4 (en) | 2017-11-29 |
CN102906728A (en) | 2013-01-30 |
RU2012154894A (en) | 2014-06-27 |
CA2796631C (en) | 2017-03-28 |
KR20130105792A (en) | 2013-09-26 |
SG184808A1 (en) | 2012-11-29 |
US20110288831A1 (en) | 2011-11-24 |
AU2011256799B2 (en) | 2016-02-25 |
CA2796631A1 (en) | 2011-11-24 |
RU2573269C2 (en) | 2016-01-20 |
EP2572292A1 (en) | 2013-03-27 |
MY175034A (en) | 2020-06-03 |
AU2011256799A1 (en) | 2012-11-29 |
US8756042B2 (en) | 2014-06-17 |
CN102906728B (en) | 2017-04-26 |
KR101931935B1 (en) | 2019-03-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2796631C (en) | Method and system for checkpointing during simulations | |
Etgen et al. | Computational methods for large-scale 3D acoustic finite-difference modeling: A tutorial | |
McMechan | Migration by extrapolation of time-dependent boundary values | |
Zeng et al. | An improved vacuum formulation for 2D finite-difference modeling of Rayleigh waves including surface topography and internal discontinuities | |
Tsvankin et al. | Seismic anisotropy in exploration and reservoir characterization: An overview | |
Robertsson et al. | An efficient method for calculating finite-difference seismograms after model alterations | |
US8352190B2 (en) | Method for analyzing multiple geophysical data sets | |
US11815642B2 (en) | Elastic full wavefield inversion with refined anisotropy and VP/VS models | |
US20100054082A1 (en) | Reverse-time depth migration with reduced memory requirements | |
US20140129479A1 (en) | Method to aid in the exploration, mine design, evaluation and/or extraction of metalliferous mineral and/or diamond deposits | |
Engquist et al. | Seismic imaging and optimal transport | |
US20220373703A1 (en) | Methods and systems for generating an image of a subterranean formation based on low frequency reconstructed seismic data | |
US11947062B2 (en) | Velocity tomography using time lags of wave equation migration | |
Rusmanugroho et al. | 3D, 9C seismic modeling and inversion of Weyburn Field data | |
Lu et al. | Comparison of elastic and acoustic reverse-time migration on the synthetic elastic Marmousi-II OBC dataset | |
Gibson Jr et al. | Modeling and velocity analysis with a wavefront-construction algorithm for anisotropic media | |
Wason et al. | Seismic modeling and inversion | |
Dong et al. | Fast 3D target-oriented reverse-time datuming | |
Alaei et al. | Geological modelling and finite difference forward realization of a regional section from the Zagros fold-and-thrust belt | |
Young | Reverse-Time Migration of a Methane Gas Hydrate Distributed Acoustic Sensing Three-Dimensional Vertical Seismic Profile Dataset | |
Zheng et al. | Improved numerical solution of anisotropic poroelastic wave equation in microseismicity: Graphic process unit acceleration and moment tensor implementation | |
Pinto Guerrero | 2-D and 2.5-D Multi-scale Full-Waveform Inversion in frequency domain for high-resolution P-wave velocity (Vp) and quality factor (Q) models at Sleipner field. | |
WO2024191795A1 (en) | Seismic imaging framework | |
Kamei | Strategies for visco-acoustic waveform inversion in the Laplace-Fourier domain, with application to the Nankai subduction zone | |
Bilgi | Investigation of Seismic Surveys and Enhancement of Seismic Images |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 201180024861.8 Country of ref document: CN |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 11783895 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2796631 Country of ref document: CA |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 2011256799 Country of ref document: AU Date of ref document: 20110314 Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2011783895 Country of ref document: EP |
|
ENP | Entry into the national phase |
Ref document number: 20127032886 Country of ref document: KR Kind code of ref document: A |
|
ENP | Entry into the national phase |
Ref document number: 2012154894 Country of ref document: RU Kind code of ref document: A |
|
REG | Reference to national code |
Ref country code: BR Ref legal event code: B01A Ref document number: 112012025845 Country of ref document: BR |
|
ENP | Entry into the national phase |
Ref document number: 112012025845 Country of ref document: BR Kind code of ref document: A2 Effective date: 20121009 |