Skip to content

Releases: brightskiesinc/Reverse_Time_Migration

v4.1.0

05 Dec 14:41
fefd6de
Compare
Choose a tag to compare

Added:

  • Added BSTimer package.
  • Do a full BSTimer library integration with the Seismic Toolbox, updating the timing utilities to be fully dependent on BSTimer and remove old library dependency.
  • Added new random boundary approach.
  • Added support to staggered first order computation kernel for DPC++.
  • Added support to staggered first order CPML boundary manager for DPC++.
  • Added support to staggered first order computation kernel for OpenMP Offload.
  • Added support to second order and staggered first order CPML boundary manager for OpenMP Offload.
  • Added backend unification module for easing development process for different backend.
  • Updated BS IO submodule's HEAD, and change codebase accordingly.
  • Added BSBase package.
  • Completely deprecated Helpers submodule.
  • Added new Random Boundaries approach to all three technologies (OpenMP, OpenMP Offload and OneAPI).

v4.0.0

16 Sep 11:07
426c6bd
Compare
Choose a tag to compare
MS3 Release (#13)

* Pre-release

* Remove lambdas names for clang, fix timer error in bandwidth, fix correlation for GPU (#14)

Co-authored-by: ehab <ehab.nasr@brightskiesinc.com>

* Update README.md + Update CONTRIBUTORS.txt + Cleanup

Co-authored-by: ehab <ehab.nasr@brightskiesinc.com>

v3.1.0

06 Jun 16:08
0349226
Compare
Choose a tag to compare
v3.1.0 Pre-release
Pre-release
  • Added OpenMP Offload support
  • Wave Approximations
    • Isotropic Second Order
  • Migration Accommodators
    • Cross Correlation
  • Boundary Conditions
    • None
  • Forward Collectors
    • Reverse Propagation
    • Two Propagation
  • Model Handlers
    • Seismic Model Handler
    • Synthetic Model Handler
  • Source Injectors
    • Ricker Source Injector

v3.0.1

12 Apr 08:58
9f72472
Compare
Choose a tag to compare

Fixed:

  • CMake now doesn't specify a device for OneAPI
  • First touch is now specific to cpu.
  • Corrected the computational grid size.
  • Fix typo in OneAPI generator.

v3.0.0

28 Mar 11:36
30e5eb4
Compare
Choose a tag to compare

Added:

  • Added CFL condition to OpenMP.
  • Added CFL condition to OneAPI.
  • Added Interpolator component.
  • Added Sampler component.
  • Added Compressor component.
  • Added 3D support to kernels.
  • Added 3D support to I/O.
  • Added shots stride for trace reading.
  • Added tests for all components.
  • Added Generators module.
  • Added Thoth (I/O) library to existing code (N.B. Old I/O still included and should completely be deprecated in later releases)
  • Modified some existing features to scale up the code on clusters.
  • Renewed Helpers library.
  • Changed libraries from SHARED to STATIC.
  • Restructured CMake
  • Redesigned SeismicOperations library by adding new layer of abstraction
    • Interface:
      Contains the interface only to be implemented
    • Primitive:
      Contains the common code across different technologies
    • Concrete:
      Contains the different code for different technologies
    • Memory transfers
    • Kernels
  • Reintroduced configurations' structure
  • Reintroduced configurations' data structures in code
  • Unify constructors of all components to take the same configurations' data structures
  • Added user manual

Fixed:

  • Fixed MPI in OpenMP.
  • Fixed MPI in OneAPI.
  • Fixed bugs in CorrelationKernel.
  • Fixed bugs in TraceManager.
  • Fixed 3D support to OpenMP kernels.
  • Fixed CrossCorrelation's compensation.
  • Fixed TwoPropagation.
  • Fixed TwoPropagation w/Compression.

Removed:

  • Removed ZFP submodule.

1.0.0

12 Jul 00:32
ddcd978
Compare
Choose a tag to compare

This is the first stable release of Brightskies' own reverse time migration.

Features

  • An OpenMP version:
    • Support the following boundary conditions :
      • CPML
      • Sponge
      • Random
      • Free surface boundary functionality
    • Support the following stencil orders :
      • O(2)
      • O(4)
      • O(8)
      • O(12)
      • O(16)
    • Support 2D modeling and imaging
    • Support the following algorithmic approaches :
      • Two propagation, an IO intensive approach where you would store all of the calculated wavefields while performing the forward propagation, then read them while performing the backward propagation.
      • We provide the option to use the ZFP compression technique in the two-propagation workflow to reduce the volume of data in the IO.
      • Three propagation, a computation intensive approach where you would calculate the forward propagation storing only the last two timesteps. You would then do a reverse propagation, propagate the wavefield stored from the forward backward in time alongside the backward propagation.
    • Support solving the equation system in :
      • Second order
      • Staggered first order
    • Support manual cache blocking.
    • Support windowing to enhance performance, instead of simulating whole domain for each shot, simulate just the shot and a window surrounding it. User can specify the window and a trade-off between performance and accuracy exists according to how tight the user specifies the window around the source point.
    • Support Illumination compensation : source compensation, receiver compensation and combined compensation to enhance imaging results.
    • Support norm callback, and multiple writing formats (SegY, PNG, SU, binary and CSV).
    • Support basic post processing, mainly apply a laplacian filter and afterwards an automatic gain control with a window of 500.
  • A DPC++ version:
    • Support the following boundary conditions :
      • Random
    • Support the following stencil orders :
      • O(2)
      • O(4)
      • O(8)
      • O(12)
      • O(16)
    • Support 2D modeling and imaging
    • Support the following algorithmic approaches :
      • Three propagation, a computation intensive approach where you would calculate the forward propagation storing only the last two timesteps. You would then do a reverse propagation, propagate the wavefield stored from the forward backward in time alongside the backward propagation.
    • Support solving the equation system in :
      • Second order
    • Support windowing to enhance performance, instead of simulating whole domain for each shot, simulate just the shot and a window surrounding it. User can specify the window and a trade-off between performance and accuracy exists according to how tight the user specifies the window around the source point.
    • Support Illumination compensation : source compensation, receiver compensation and combined compensation to enhance imaging results.
    • Support norm callback, and multiple writing formats (SegY, PNG, SU, binary and CSV).
    • Support basic post processing, mainly apply a laplacian filter and afterwards an automatic gain control with a window of 500.