activity
20122023
most citedDevito (v3.1.0): an embedded domain-specific language for finite differences and geophysical exploration

202 citations · 431 across the 32 of their papers we have counts for

collaborators

33 papers

cs.MS2023★ 17 cited

Learned multiphysics inversion with differentiable programming and machine learning

Mathias Louboutin, Ziyi Yin, Rafael Orozco +7

We present the Seismic Laboratory for Imaging and Modeling/Monitoring (SLIM) open-source software framework for computational geophysics and, more generally, inverse problems invol…

cs.HC2021

PyBryt: auto-assessment and auto-grading for computational thinking

Christopher Pyles, Francois van Schalkwyk, Gerard J. Gorman +4

We continuously interact with computerized systems to achieve goals and perform tasks in our personal and professional lives. Therefore, the ability to program such systems is a sk…

physics.med-ph2021★ 29 cited

Stride: a flexible platform for high-performance ultrasound computed tomography

Carlos Cueto, Oscar Bates, George Strong +6

Advanced ultrasound computed tomography techniques like full-waveform inversion are mathematically challenging and orders of magnitude more computationally expensive than conventio…

cs.DC2020

Temporal blocking of finite-difference stencil operators with sparse "off-the-grid" sources

George Bisbas, Fabio Luporini, Mathias Louboutin +3

Stencil kernels dominate a range of scientific applications, including seismic and medical imaging, image processing, and neural networks. Temporal blocking is a performance optimi…

physics.comp-ph2020

Lossy Checkpoint Compression in Full Waveform Inversion: a case study with ZFPv0.5.5 and the Overthrust Model

Navjot Kukreja, Jan Hueckelheim, Mathias Louboutin +3

This paper proposes a new method that combines check-pointing methods with error-controlled lossy compression for large-scale high-performance Full-Waveform Inversion (FWI), an inv…

physics.comp-ph2020★ 4 cited

Scaling through abstractions -- high-performance vectorial wave simulations for seismic inversion with Devito

Mathias Louboutin, Fabio Luporini, Philipp Witte +5

[Devito] is an open-source Python project based on domain-specific language and compiler technology. Driven by the requirements of rapid HPC applications development in exploration…

cs.DC2019

GPU Support for Automatic Generation of Finite-Differences Stencil Kernels

Vitor Hugo Mickus Rodrigues, Lucas Cavalcante, Maelso Bruno Pereira +4

The growth of data to be processed in the Oil & Gas industry matches the requirements imposed by evolving algorithms based on stencil computations, such as Full Waveform Inversion…

cs.PF2019

Performance of Devito on HPC-Optimised ARM Processors

Hermes Senger, Jaime F. de Souza, Edson S. Gomi +2

We evaluate the performance of Devito, a domain specific language (DSL) for finite differences on Arm ThunderX2 processors. Experiments with two common seismic computational kernel…

cs.DC2019★ 12 cited

Automatic Differentiation for Adjoint Stencil Loops

Jan Hückelheim, Navjot Kukreja, Sri Hari Krishna Narayanan +3

Stencil loops are a common motif in computations including convolutional neural networks, structured-mesh solvers for partial differential equations, and image processing. Stencil…

cs.DC2019★ 1 cited

Training on the Edge: The why and the how

Navjot Kukreja, Alena Shilova, Olivier Beaumont +4

Edge computing is the natural progression from Cloud computing, where, instead of collecting all data and processing it centrally, like in a cloud computing environment, we distrib…

cs.CE2018

Combining Checkpointing and Data Compression to Accelerate Adjoint-Based Optimization Problems

Navjot Kukreja, Jan Hueckelheim, Mathias Louboutin +3

Seismic inversion and imaging are adjoint-based optimization problems that process up to terabytes of data, regularly exceeding the memory capacity of available computers. Data com…

cs.DM2018★ 202 cited

Devito (v3.1.0): an embedded domain-specific language for finite differences and geophysical exploration

Mathias Louboutin, Michael Lange, Fabio Luporini +5

We introduce Devito, a new domain-specific language for implementing high-performance finite difference partial differential equation solvers. The motivating application is explora…

cs.MS2018★ 7 cited

Architecture and performance of Devito, a system for automated stencil computation

Fabio Luporini, Michael Lange, Mathias Louboutin +7

Stencil computations are a key part of many high-performance computing applications, such as image processing, convolutional neural networks, and finite-difference solvers for part…

cs.DC2018

Backpropagation for long sequences: beyond memory constraints with constant overheads

Navjot Kukreja, Jan Hückelheim, Gerard J. Gorman

Naive backpropagation through time has a memory footprint that grows linearly in the sequence length, due to the need to store each state of the forward propagation. This is a prob…

cs.MS2018★ 16 cited

High-level python abstractions for optimal checkpointing in inversion problems

Navjot Kukreja, Jan Hückelheim, Michael Lange +4

Inversion and PDE-constrained optimization problems often rely on solving the adjoint problem to calculate the gradient of the objec- tive function. This requires storing large amo…

cs.CE2017

Automated Tiling of Unstructured Mesh Computations with Application to Seismological Modelling

Fabio Luporini, Michael Lange, Christian T. Jacobs +3

Sparse tiling is a technique to fuse loops that access common data, thus increasing data locality. Unlike traditional loop fusion or blocking, the loops may have different iteratio…

cs.MS2017

Optimised finite difference computation from symbolic equations

Michael Lange, Navjot Kukreja, Fabio Luporini +4

Domain-specific high-productivity environments are playing an increasingly important role in scientific computing due to the levels of abstraction and automation they provide. In t…

math.NA2016★ 3 cited

Anisotropic mesh adaptation in Firedrake with PETSc DMPlex

Nicolas Barral, Matthew G. Knepley, Michael Lange +2

Despite decades of research in this area, mesh adaptation capabilities are still rarely found in numerical simulation software. We postulate that the primary reason for this is lac…

cs.MS2016★ 2 cited

Devito: Towards a generic Finite Difference DSL using Symbolic Python

Michael Lange, Navjot Kukreja, Mathias Louboutin +6

Domain specific languages (DSL) have been used in a variety of fields to express complex scientific problems in a concise manner and provide automated performance optimization for…

cs.MS2016

Devito: automated fast finite difference computation

Navjot Kukreja, Mathias Louboutin, Felippe Vieira +3

Domain specific languages have successfully been used in a variety of fields to cleanly express scientific problems as well as to simplify implementation and performance opti- miza…

cs.PF2016★ 17 cited

Performance prediction of finite-difference solvers for different computer architectures

Mathias Louboutin, Michael Lange, Felix Herrmann +2

The life-cycle of a partial differential equation (PDE) solver is often characterized by three development phases: the development of a stable numerical discretization, development…

cs.CG2015★ 4 cited

Shoreline and Bathymetry Approximation in Mesh Generation for Tidal Renewable Simulations

Alexandros Avdis, Christian T. Jacobs, Jon Hill +2

Due to the fractal nature of the domain geometry in geophysical flow simulations, a completely accurate description of the domain in terms of a computational mesh is frequently dee…

cs.MS2015★ 42 cited

Efficient mesh management in Firedrake using PETSc-DMPlex

Michael Lange, Lawrence Mitchell, Matthew G. Knepley +1

The use of composable abstractions allows the application of new and established algorithms to a wide range of problems while automatically inheriting the benefits of well-known pe…

cs.MS2015★ 7 cited

Unstructured Overlapping Mesh Distribution in Parallel

Matthew G. Knepley, Michael Lange, Gerard J. Gorman

We present a simple mathematical framework and API for parallel mesh and data distribution, load balancing, and overlap generation. It relies on viewing the mesh as a Hasse diagram…