<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v3.0 20080202//EN" "https://jats.nlm.nih.gov/nlm-dtd/publishing/3.0/journalpublishing3.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" article-type="research-article" specific-use="SMUR" dtd-version="3.0" xml:lang="en">
<front>
<journal-meta>
<journal-id journal-id-type="publisher">EGUsphere</journal-id>
<journal-title-group>
<journal-title>EGUsphere</journal-title>
<abbrev-journal-title abbrev-type="publisher">EGUsphere</abbrev-journal-title>
<abbrev-journal-title abbrev-type="nlm-ta">EGUsphere</abbrev-journal-title>
</journal-title-group>
<publisher><publisher-name>Copernicus Publications</publisher-name>
<publisher-loc>Göttingen, Germany</publisher-loc>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="doi">10.5194/egusphere-2026-5366</article-id>
<title-group>
<article-title>A GPU-accelerated geodynamic modelling framework: JUSTRELAX.JL v0.8</article-title>
</title-group>
<contrib-group><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>de Montserrat</surname>
<given-names>Albert</given-names>
<ext-link>https://orcid.org/0000-0003-1694-3735</ext-link>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<xref ref-type="aff" rid="aff6">
<sup>6</sup>
</xref>
</contrib>
<contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Aellig</surname>
<given-names>Pascal S.</given-names>
<ext-link>https://orcid.org/0009-0008-9039-5646</ext-link>
</name>
<xref ref-type="aff" rid="aff2">
<sup>2</sup>
</xref>
<xref ref-type="aff" rid="aff3">
<sup>3</sup>
</xref>
<xref ref-type="aff" rid="aff6">
<sup>6</sup>
</xref>
</contrib>
<contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Räss</surname>
<given-names>Ludovic</given-names>
<ext-link>https://orcid.org/0000-0002-1136-899X</ext-link>
</name>
<xref ref-type="aff" rid="aff4">
<sup>4</sup>
</xref>
</contrib>
<contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Schuler</surname>
<given-names>Christian</given-names>
</name>
<xref ref-type="aff" rid="aff4">
<sup>4</sup>
</xref>
</contrib>
<contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Duretz</surname>
<given-names>Thibault</given-names>
<ext-link>https://orcid.org/0000-0001-8472-7490</ext-link>
</name>
<xref ref-type="aff" rid="aff5">
<sup>5</sup>
</xref>
</contrib>
<contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Kaus</surname>
<given-names>Boris J. P.</given-names>
<ext-link>https://orcid.org/0000-0002-0247-8660</ext-link>
</name>
<xref ref-type="aff" rid="aff2">
<sup>2</sup>
</xref>
<xref ref-type="aff" rid="aff3">
<sup>3</sup>
</xref>
</contrib>
</contrib-group><aff id="aff1">
<label>1</label>
<addr-line>Geophysical Fluid Dynamics, Institute of Geophysics, ETH Zürich, Zürich, Switzerland</addr-line>
</aff>
<aff id="aff2">
<label>2</label>
<addr-line>Institute of Geosciences, Johannes Gutenberg University Mainz, Mainz, Germany</addr-line>
</aff>
<aff id="aff3">
<label>3</label>
<addr-line>Mainz Institute of Multiscale Modelling, Johannes Gutenberg University, Mainz, Germany</addr-line>
</aff>
<aff id="aff4">
<label>4</label>
<addr-line>Institute of Earth Sciences, University of Lausanne, Lausanne, Switzerland</addr-line>
</aff>
<aff id="aff5">
<label>5</label>
<addr-line>Institut für Geowissenschaften, Goethe-Universität Frankfurt, Frankfurt, Germany</addr-line>
</aff>
<aff id="aff6">
<label>6</label>
<addr-line>These authors contributed equally to this work.</addr-line>
</aff>
<pub-date pub-type="epub">
<day>02</day>
<month>11</month>
<year>2026</year>
</pub-date>
<volume>2026</volume>
<fpage>1</fpage>
<lpage>36</lpage>
<permissions>
<copyright-statement>Copyright: &#x000a9; 2026 Albert de Montserrat et al.</copyright-statement>
<copyright-year>2026</copyright-year>
<license license-type="open-access">
<license-p>This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this licence, visit <ext-link ext-link-type="uri"  xlink:href="https://creativecommons.org/licenses/by/4.0/">https://creativecommons.org/licenses/by/4.0/</ext-link></license-p>
</license>
</permissions>
<self-uri xlink:href="https://egusphere.copernicus.org/preprints/2026/egusphere-2026-5366/">This article is available from https://egusphere.copernicus.org/preprints/2026/egusphere-2026-5366/</self-uri>
<self-uri xlink:href="https://egusphere.copernicus.org/preprints/2026/egusphere-2026-5366/egusphere-2026-5366.pdf">The full text article is available as a PDF file from https://egusphere.copernicus.org/preprints/2026/egusphere-2026-5366/egusphere-2026-5366.pdf</self-uri>
<abstract>
<p>The rapid evolution of high-performance computing and the widespread adoption of graphics processing units (GPUs) require corresponding advances in solver design and strategies in computational geodynamics. Pseudo-transient, or dynamic-relaxation, approaches are particularly promising for multi-physics problems on structured staggered grids and are well suited to efficient parallel execution. Here, we introduce JUSTRELAX.JL, a geodynamic code written in the Julia programming language that runs seamlessly on GPUs, from a single device to distributed multi-device systems. JUSTRELAX.JL separates material-property calculations, particle-in-cell advection, and (distributed) parallelism into dedicated packages, facilitating the integration of new physical processes, numerical methods, and solver strategies while limiting modifications to the solver core. We demonstrate the capabilities of JUSTRELAX.JL using a suite of geodynamic applications, including plastic shear-band localization, thermal convection, subduction, and magmatic systems. We assess its parallel scalability on modern GPU-based supercomputers, showing efficient scaling to hundreds of GPUs and providing a foundation for future extensions in computational geodynamics.</p>
</abstract>
<counts><page-count count="36"/></counts>
</article-meta>
</front>
<body/>
<back>
</back>
</article>