Devito: Towards a generic Finite Difference DSL using Symbolic Python

09/12/2016
by   Michael Lange, et al.
0

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 a range of computational architectures. As such DSLs provide a powerful mechanism to speed up scientific Python computation that goes beyond traditional vectorization and pre-compilation approaches, while allowing domain scientists to build applications within the comforts of the Python software ecosystem. In this paper we present Devito, a new finite difference DSL that provides optimized stencil computation from high-level problem specifications based on symbolic Python expressions. We demonstrate Devito's symbolic API and performance advantages over traditional Python acceleration methods before highlighting its use in the scientific context of seismic inversion problems.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
07/12/2017

Optimised finite difference computation from symbolic equations

Domain-specific high-productivity environments are playing an increasing...
research
05/24/2020

miniKanren as a Tool for Symbolic Computation in Python

In this article, we give a brief overview of the current state and futur...
research
05/09/2021

High-performance symbolic-numerics via multiple dispatch

As mathematical computing becomes more democratized in high-level langua...
research
01/12/2018

High-level python abstractions for optimal checkpointing in inversion problems

Inversion and PDE-constrained optimization problems often rely on solvin...
research
07/13/2017

Parcels v0.9: prototyping a Lagrangian Ocean Analysis framework for the petascale age

As Ocean General Circulation Models (OGCMs) move into the petascale age,...
research
10/28/2021

Distill: Domain-Specific Compilation for Cognitive Models

This paper discusses our proposal and implementation of Distill, a domai...
research
08/30/2023

Natlog: Embedding Logic Programming into the Python Deep-Learning Ecosystem

Driven by expressiveness commonalities of Python and our Python-based em...

Please sign up or login with your details

Forgot password? Click here to reset