FieldGPU: A GPU-based Version of Field II with Python Bindings for Large Scale Simulations and Complex Transducer Configurations

Luma Vision

Florence Klitzner, Rüdiger Göbl, Christoph Hennersperger, Stefan Wörz

IEEE IUS 2025

Abstract We present FieldGPU, a CUDA-accelerated reimplementation of the Field II ultrasound simulation framework, accessible as a Python package. FieldGPU leverages GPU parallelism to improve scalability and reduce simulation times for large transducer arrays and high-quality simulation scenarios. It supports most core Field II features, including transmit and receive simulation and custom transducer configurations with rectangular aperture elements. Comparison benchmarks performed between Field II and FieldGPU demonstrate that FieldGPU achieves up to 1100 times performance increase compared to Field II for the largest tested simulation with 10 million scatterers. Our simulation method significantly reduces simulation times and provides a modern Python interface that facilitates the direct translation of Field II simulation scripts to FieldGPU.

Focused wave propagation simulation generated using FieldGPU

Technical Approach

GPU Acceleration

CUDA-based parallel processing distributes spatial impulse response calculations across GPU threads, utilizing the massively parallel architecture for significant performance improvements over CPU implementations.

Python Integration

Native Python bindings enable integration with scientific computing workflows, machine learning frameworks, and data analysis pipelines commonly used in medical imaging research.

Scalable Architecture

Performance improvements scale with simulation complexity, enabling large-scale studies previously limited by computational constraints in traditional CPU-based implementations.

Performance Evaluation

Test Configuration

  • Hardware: NVIDIA RTX 3090, AMD Threadripper 3970X, 128 GB RAM
  • Transducer: 64-element linear array, 5 MHz center frequency
  • Sampling: 100 MHz sampling rate, 1540 m/s speed of sound
  • Function: calc_scat_multi performance comparison

Comprehensive benchmarks were conducted comparing FieldGPU with the original Field II implementation across varying scatterer counts and multiple functions. For the function calc_scat_multi FieldGPU achieves maximum speedups of over 1,300×:

Scatterers Field II (s) FieldGPU (s) Speedup
100 0.099 0.0024 41×
1,000 0.673 0.0050 135×
10,000 6.68 0.022 304×
100,000 69.5 0.086 810×
1,000,000 644 0.51 1,265×
10,000,000 5,876 4.31 1,364×

Discussion

This work demonstrates that GPU acceleration can significantly improve the computational efficiency of ultrasound simulation workflows. The performance improvements achieved (average 650× speedup, maximum 1,364×) enable simulation scenarios that were previously unfeasible, particularly for studies involving large numbers of scatterers or complex transducer geometries.

While FieldGPU currently supports rectangular elements and maintains compatibility with most standard Field II workflows, the Python interface facilitates integration with modern scientific computing and machine learning frameworks.

Citation

Klitzner, F., Göbl, R., Hennersperger, C., & Wörz, S. (2025 September).
FieldGPU: A GPU-based Version of Field II with Python Bindings for Large Scale Simulations and Complex Transducer Configurations.
In 2025 IEEE International Ultrasonics Symposium (IUS) (pp. 1-4). IEEE.