A Bifrost wrapper for the Tensor-Core Correlator.
To build BTCC:
- Install appropriate dependancies
- Bifrost (https://github.com/telegraphic/bifrost)
- Tensor-Core Correlator (https://git.astron.nl/RD/tensor-core-correlator)
- Meson build system (https://github.com/mesonbuild/meson)
- Setup your build environment (on topaz, run
source setup_env.sh
). - Ensure correct paths to dependancies are setup in
meson.build
- Compile with meson by running:
meson setup build
cd build
meson compile
There are several conditional compliation constants included in btcc.cu:
DCP_DEBUG
: enables full debugging outputNO_CHECKS
: removes all sanity checksTIME_CORR
: write all correlation times (ms) tocuda_results.csv
from btcc import Btcc
tcc = Btcc()
tcc.init(nbits, ntime, nchan, nant, npol)
tcc.execute(tcc_input, tcc_output, True)
See validate.py
, benchmark.py
and eda.py
for example usages of BTCC.
Example Performance (Tesla V100) | Example correlation matrix | Example image |
---|---|---|