Loading…
Stride: A flexible software platform for high-performance ultrasound computed tomography
•The lack of open codes for ultrasound computed tomography has hindered adoption and reproducibility.•We present Stride, an open-source Python library for modelling and solving large-scale ultrasound tomography problems.•Stride provides expressive and flexible interfaces for solving physics-constrai...
Saved in:
Published in: | Computer methods and programs in biomedicine 2022-06, Vol.221, p.106855-106855, Article 106855 |
---|---|
Main Authors: | , , , , , , , , |
Format: | Article |
Language: | English |
Subjects: | |
Citations: | Items that this one cites Items that cite this one |
Online Access: | Get full text |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Summary: | •The lack of open codes for ultrasound computed tomography has hindered adoption and reproducibility.•We present Stride, an open-source Python library for modelling and solving large-scale ultrasound tomography problems.•Stride provides expressive and flexible interfaces for solving physics-constrained optimisation problems.•Through ntegration with domain-specific languages,Stride provides high-performance wave-equation solvers in CPUs and GPUs.•Out-of-the-box scaling from a local workstation to a multi-node HPC cluster is made possible through a custom actor-based parallelisation library.
Background and objective: Advanced ultrasound computed tomography techniques like full-waveform inversion are mathematically complex and orders of magnitude more computationally expensive than conventional ultrasound imaging methods. This computational and algorithmic complexity, and a lack of open-source libraries in this field, represent a barrier preventing the generalised adoption of these techniques, slowing the pace of research, and hindering reproducibility. Consequently, we have developed Stride, an open-source Python library for the solution of large-scale ultrasound tomography problems.
Methods: On one hand, Stride provides high-level interfaces and tools for expressing the types of optimisation problems encountered in medical ultrasound tomography. On the other, these high-level abstractions seamlessly integrate with high-performance wave-equation solvers and with scalable parallelisation routines. The wave-equation solvers are generated automatically using Devito, a domain-specific language, and the parallelisation routines are provided through the custom actor-based library Mosaic.
Results: We demonstrate the modelling accuracy achieved by our wave-equation solvers through a comparison (1) with analytical solutions for a homogeneous medium, and (2) with state-of-the-art modelling software applied to a high-contrast, complex skull section. Additionally, we show through a series of examples how Stride can handle realistic numerical and experimental tomographic problems, in 2D and 3D, and how it can scale robustly from a local multi-processing environment to a multi-node high-performance cluster.
Conclusions: Stride enables researchers to rapidly and intuitively develop new imaging algorithms and to explore novel physics without sacrificing performance and scalability. This will lead to faster scientific progress in this field and will significantly ease clinic |
---|---|
ISSN: | 0169-2607 1872-7565 |
DOI: | 10.1016/j.cmpb.2022.106855 |