diff --git a/RTCP/Cobalt/GPUProc/doc/bf-pipeline.txt b/RTCP/Cobalt/GPUProc/doc/bf-pipeline.txt index 1354c2e361631b2781e94d293f1f2a43aa2528d7..fc638f25c4f72ea52a354950285d27442a668d67 100644 --- a/RTCP/Cobalt/GPUProc/doc/bf-pipeline.txt +++ b/RTCP/Cobalt/GPUProc/doc/bf-pipeline.txt @@ -100,7 +100,7 @@ FFT-16 {inplace} (if >1ch) | [station][pol][samples][channel] [48][2][12288][16] = 144 MiB B | V -Incoherent Stokes (*: no transpose) (*** kernel must be fixed: wrong input format ***) +Incoherent Stokes (*: no transpose) | [stokes][samples][channel] [4][12288][16] = 3 MiB E V (float) (output) diff --git a/RTCP/Cobalt/GPUProc/share/gpu/kernels/BandPassCorrection.cu b/RTCP/Cobalt/GPUProc/share/gpu/kernels/BandPassCorrection.cu index 5668b7423bca7bcb02d13ac19f48c4f67c4d188e..10f68b42f871e5e049c0cb0f9d7af1f244c41e86 100644 --- a/RTCP/Cobalt/GPUProc/share/gpu/kernels/BandPassCorrection.cu +++ b/RTCP/Cobalt/GPUProc/share/gpu/kernels/BandPassCorrection.cu @@ -34,6 +34,7 @@ * - @c NR_CHANNELS_2: a multiple of 16 * - @c NR_SAMPLES_PER_CHANNEL: > a multiple of 16 * - @c NR_BITS_PER_SAMPLE: 8 or 16 + * - @c DO_BANDPASS_CORRECTION: if defined, perform bandpass correction */ #include "gpu_math.cuh" @@ -69,7 +70,8 @@ typedef const float (* BandPassFactorsType)[NR_CHANNELS_1 * NR_CHANNELS_2]; /** * This kernel performs on the input data: - * - Apply a bandpass correction to compensate for the errors introduced by the + * - If the preprocessor variable \c DO_BANDPASS_CORRECTION is defined, apply a + * bandpass correction to compensate for the errors introduced by the * polyphase filter that produced the subbands. This error is deterministic, * hence it can be fully compensated for. * - Transpose the data so that the samples for each channel are placed diff --git a/RTCP/Cobalt/GPUProc/src/cuda/SubbandProcs/BeamFormerSubbandProc.cc b/RTCP/Cobalt/GPUProc/src/cuda/SubbandProcs/BeamFormerSubbandProc.cc index 946bd75331fed878231254fb0316d992fd25545b..343475a5923b32feb62046d8dc263852c18321ee 100644 --- a/RTCP/Cobalt/GPUProc/src/cuda/SubbandProcs/BeamFormerSubbandProc.cc +++ b/RTCP/Cobalt/GPUProc/src/cuda/SubbandProcs/BeamFormerSubbandProc.cc @@ -205,7 +205,6 @@ namespace LOFAR factories.incoherentStokesTranspose.create( queue, incoherentTransposeBuffers)), - // TODO: Add a transpose // inverse FFT: A -> A incoherentInverseFFT( queue, BEAM_FORMER_NR_CHANNELS, @@ -214,7 +213,6 @@ namespace LOFAR false, devA), // FIR filter: A -> B - // TODO: provide history samples separately // TODO: do a FIR for each individual TAB!! devIncoherentFilterWeights( context,