47template <>
struct KernelTrait<
double,
lbmpy::Arch::GPU> {
48 using StreamCollisionModelThermalized =
49 pystencils::StreamCollideSweepThermalizedDoublePrecisionCUDA;
50 using StreamCollisionModelLeesEdwards =
51 pystencils::StreamCollideSweepLeesEdwardsDoublePrecisionCUDA;
52 using InitialPDFsSetter = pystencils::InitialPDFsSetterDoublePrecisionCUDA;
53 using UpdateVelFromPDF = pystencils::UpdateVelFromPDFDoublePrecisionCUDA;
54 using PackInfoPdf = pystencils::PackInfoPdfDoublePrecisionCUDA;
55 using PackInfoVec = pystencils::PackInfoVecDoublePrecisionCUDA;
56 using DynamicUBB = lbm::DynamicUBBDoublePrecisionCUDA;
59template <>
struct KernelTrait<
float,
lbmpy::Arch::GPU> {
60 using StreamCollisionModelThermalized =
61 pystencils::StreamCollideSweepThermalizedSinglePrecisionCUDA;
62 using StreamCollisionModelLeesEdwards =
63 pystencils::StreamCollideSweepLeesEdwardsSinglePrecisionCUDA;
64 using InitialPDFsSetter = pystencils::InitialPDFsSetterSinglePrecisionCUDA;
65 using UpdateVelFromPDF = pystencils::UpdateVelFromPDFSinglePrecisionCUDA;
66 using PackInfoPdf = pystencils::PackInfoPdfSinglePrecisionCUDA;
67 using PackInfoVec = pystencils::PackInfoVecSinglePrecisionCUDA;
68 using DynamicUBB = lbm::DynamicUBBSinglePrecisionCUDA;
cudaStream_t stream[1]
CUDA streams for parallel computing on CPU and GPU.
\file PackInfoPdfDoublePrecision.cpp \author pystencils