diff --git a/src/operator/ConvImpl.cpp b/src/operator/ConvImpl.cpp index 096ee9485a03b736326f46e9a569c6b3c9b5a631..c0c32d3bbb758c9403577c84500bfe951e5e1a96 100644 --- a/src/operator/ConvImpl.cpp +++ b/src/operator/ConvImpl.cpp @@ -102,18 +102,11 @@ void Aidge::ConvImpl_cuda<DIM>::forward() { // Do the actual forward computation // Template is only for scaling parameters, which are always in float // excepted when the convolution is performed in double precision. - switch(op.getOutput(0)->dataType()) { - case DataType::Float64: - forward_<double>(input0, input1, input2); - break; - case DataType::Float32: - forward_<float>(input0, input1, input2); - break; - case DataType::Float16: - forward_<half>(input0, input1, input2); - break; - default: - AIDGE_THROW_OR_ABORT(std::runtime_error, "Data type is not supported by Backend Cuda"); + if (op.getOutput(0)->dataType() == DataType::Float64) { + forward_<double>(input0, input1, input2); + } + else { + forward_<float>(input0, input1, input2); } }