Accelerating ultrasound research

An open-source library for ultrasound modelling and tomography that provides flexibility and scalability together with production-grade performance.

Key features

High-performance

Stride provides CPU- and GPU-ready finite-difference solvers, including variable sound speed, density, and attenuation and off-grid sources and receivers.

Intuitive

Easily prototype tomography algorithms with automatic gradient calculations, state-of-the-art reconstruction algorithms, and the flexibility to (re)define every step.

Flexible

Stride integrates with Devito, allowing you to add new physics using math-like symbolic expressions that will automatically run on both CPUs and GPUs.

Scalable

With Mosaic, its custom parallelisation library, Stride can scale seamlessly from a local workstation, to an HPC cluster with production-grade performance.

Install Stride

Jump right in using a Jupyter notebook directly in your browser with binder.

Otherwise, the recommended way to install Stride is through Anaconda's package manager (version >=4.9), which can be downloaded in Anaconda or Miniconda. A Python version above 3.8 is recommended to run Stride.

To install Stride, follow these steps:

git clone https://github.com/trustimaging/stride
cd stride
conda env create -f environment.yml
conda activate stride
pip install -e .
					

You can also start using Stride through Docker:

git clone https://github.com/trustimaging/stride.git
cd stride
docker-compose up stride
					

which will start a Jupyter server within the Docker container and display a URL on your terminal that looks something like https://127.0.0.1:8888/?token=XXX. To access the server, copy-paste the URL shown on the terminal into your browser to start a new Jupyter session.