Software-defined radio complex correlator. FX architecture: Polyphase filterbank Fourier transform spectrometer and cross-correlation, powered by GPU-accelerated, concurrent processing.
GNU General Public License v2.0
52
stars
2
forks
source link
Jetson Nano computational load, examples and extended functionality #6
Not documented yet, I may in the future. In general, the USB interface seems like a bottleneck for reading large #s of bytes at a time (~2^17 or 2^18 complex samples per call to librtlsdr), and the GPU interface seems like a bottleneck in the other direction, when taking FFTs of small chunks of complex samples (~2^10). Those aren’t necessarily linked, because you could concatenate many small chunks of samples into a big chunk to send to the GPU, but they are in my implementation. In general, the GPU does well with large arrays of time series data and decently fine FFT resolution, like 2^12 or 2^13 bins. I haven’t run into unsolvable problems with memory utilization, processor load, or thermal throttling yet, although the multi process, multithreaded implementation does show use across all 4 Jetson CPUs.
No examples yet! I have no good place to set up in my current living situation, but I recently purchased a battery pack to run it on, so I can take it somewhere away from buildings.
More than 2 SDR support would be great. There are some interesting technical problems here. Physically connecting > 2 sticks to the Jetson, syncing all clocks, powering them all, delivering power to amplifiers, dealing with temperature stability. A lot of these are solved with KerberosSDR. I don’t have any plans for this at the moment, but I won’t rule it out.
Writing an imaging pipeline would be fun, if time permits. Plenty of challenges there, would also be fun to try to format outputs to interface with an existing imaging pipeline. No plans at this time.
As I've mentioned before, that's an awesome project!
Few questions: