DIFx is a collection of code for correlating baseband radio interferometry data producing visibilities. It was made publicly available in 2007 and has been a popular choice in such upgrades and is now used worldwide by some observatories and research groups for production correlation.
Here we are going to describe the evolution in the capabilities of the DIFx correlator over the past few years which has supported substantial infrastructure to ease the use of code.
Some of the new capabilities that DiFx has introduced is the ability for extraction of phase-calibration tones and correlation of disparate but overlapping sub-bands. It is worth noting the latest version of the code is at least 15% dater than the original one.
Capabilities of DIFx
DIFX can be configured to produce visibilities with arbitrary time and frequency resolution, which in turn produces an arbitrary combination of products of each baseline. You can channelize using a polyphase filterbank, even though this seems to be slower but has a better channel spectral response. The other capability is that it can pulsar bin visibilities through incoherent de-dispersion. If you are just trying to recover the best SNR from a pulsar observation, DIFx gives you the option to sum your bins, after calculating the power contained in the bin.
The Code and Dependencies
DIFX is written C++, however, most of the computation is done by vector routines. There are performance libraries and are provided through an architecture header file, mapping generic function calls to specific function calls. The Intel Performance Primitive (IPP) is the only complete mapping and there are no available libraries for AMD architectures. It is noteworthy that IPP runs on any x86-based 32 or 64-bit machine.
The code makes use of a pre-computed geometric delay model for the array telescope. The pre-calculated model is presented to the correlator in a simple format text file. The user is free to produce this delay file with any meals possible and as long as it conforms to format specifications, additional software is provided, making use of CALC which produces accurate models conveniently.
New Data Monitoring Tools
To facilitate searches for transient signals, there is a spigot that was added to DIFx-2 that supplies the autocorrelations from antennas, at the user-specified time and frequency resolution, employing a User Datagram Protocol multicast message. Usually, the additional computational load is negligible because the antenna autocorrelations have already been calculated, making for short integrations.
Real-Time Visibility Monitoring
The final new data monitoring tool included in DIFx-2 is a TCP-based visibility monitor server that enables you to send copies of visibility data through a TCP network connection to a monitor server. This feature is responsible for data quality assessment during correlation, useful for verification of correct array and correlator set-up.
Several significant improvements have been made to the DIFx software correlator since its public release in 2007. These have made it more robust with greater performance. The new series DIFx-2 now supports phase-calibration and production of high-resolution filter-bank. Go back to our home page here.