High-level python abstractions for optimal checkpointing in inversion problems

File Description SizeFormat 
1802.02474v1.pdfWorking paper1.51 MBAdobe PDFView/Open
Title: High-level python abstractions for optimal checkpointing in inversion problems
Authors: Kukreja, N
Hückelheim, J
Lange, M
Louboutin, M
Walther, A
Funke, SW
Gorman, G
Item Type: Working Paper
Abstract: 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 amounts of intermediate data, setting a limit to the largest problem that might be solved with a given amount of memory available. Checkpointing is an approach that can reduce the amount of memory required by redoing parts of the computation instead of storing intermediate results. The Revolve checkpointing algorithm o ers an optimal schedule that trades computational cost for smaller memory footprints. Integrat- ing Revolve into a modern python HPC code and combining it with code generation is not straightforward. We present an API that makes checkpointing accessible from a DSL-based code generation environment along with some initial performance gures with a focus on seismic applications.
Issue Date: 12-Jan-2018
URI: http://hdl.handle.net/10044/1/72501
Keywords: cs.MS
cs.MS
cs.CE
cs.MS
cs.MS
cs.CE
Appears in Collections:Faculty of Engineering
Earth Science and Engineering



Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.

Creative Commonsx