Skip to content

nlesc-recruit/echoframe-beamformer

Repository files navigation

github url github license badge Research Software Directory CI status

Echoframe tensor core beamformer

Requirements

Software Minimum version
CUDA 11.0
CMake 3.20
Hardware Type
GPU NVIDIA GPU with 1-bit tensor cores (Turing-generation or later)

Installation

This project uses CMake. To build the library:

git clone https://github.com/nlesc-recruit/echoframe-beamformer
cd echoframe-beamformer
cmake -S . -B build
make -C build

This will create executables and a libtcbf library in the build directory.

Usage

Prepare A matrix

The A matrix must be preprocessed before beamforming. Example commandline:

echoframe-tcbf-prepare-a-matrix --a_matrix_in A_matrix.bin --a_matrix_out A_matrix_preprocessed.bin --pixels 4096 --samples 16384

Standalone beamformer

The standalone beamformer executable is echoframe-beamformer. It can read a preprocessed A matrix and raw RF from disk, process it on the GPU, and store the BF back to disk. Example commandline:

echoframe-tcbf-standalone --a_matrix A_matrix_preprocessed.bin --rf RF.bin --bf BF.bin --pixels 4096 --frames 8192 --samples 16384