GPU_inspiral

GPU_inspiral is a low-latency, high performance many-core implementation of the matched-filter gravitational wave search algorithm, developed by the RMKI Virgo Group. The base is an architecture and vendor independent OpenCL code. The sub algorithms implemented so far are the following:

  • template generation
  • PSD calculation
  • matched-filtering
  • chi2 calculation
  • clustering of events

The implementation makes use of the stream processing paradigm applied to the matched filter problem. Various atomic operations are mapped to one or some of the kernel classes like map, reduce, fold, etcc... which are deeply studied and examined already in many-core architecture programming. The complete pipeline runs on the GPU, no CPU - GPU communication happens, which gives an additional acceleration of the code.. The implementation is straightforward to extend to multi-GPU or GPU-cluster environment,

Performance

Performence test was done on a 2048 sec long data chunk, 500 template of 64 sec long was filtered. The code run on an Nvidia Tesla C2050. To produce the SNR time series it took ~17 sec for gpu_inpiral, this has to be compare with the ~40 minutes necessary for lalapps_inspiral to produce the same result.

This results a speed-up factor of 2 orders of magnitude !


Documentation

There is some material available on this project:
  • A poster about the project here.
  • A summary paper here.
  • Bence's Somhegyi MSc thesis (in hungarian) here.

Complete description and documentation in english available soon !

Future plans

Instead of writing up a completely new analysis software we will incorporate the code developed as gpu_inspiral to be part of the pyCBC project.

Developers

  1. Gergely Debreczeni (Gergely.Debreczeni@rmki.kfki.hu)
  2. Bence Somhegyi
Edit | Attach | Watch | Print version | History: r4 < r3 < r2 < r1 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r4 - 2011-08-04 - GergelyDebreczeni
 
This site is powered by the TWiki collaboration platform Powered by Perl This site is powered by the TWiki collaboration platformCopyright &© by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback