@@ -1511,10 +1511,14 @@ class Conv2d : public UnaryBlock {
15111511 b = params[" bias" ];
15121512 }
15131513 if (direct) {
1514- #if defined(SD_USE_CUDA) || defined(SD_USE_SYCL) || defined(SD_USE_METAL) || defined(SD_USE_OPENCL)
1515- return ggml_nn_conv_2d (ctx, x, w, b, stride.second , stride.first , padding.second , padding.first , dilation.second , dilation.first );
1514+ #if defined(SD_USE_CONV2D_DIRECT)
1515+ #if defined(SD_USE_CUDA) || defined(SD_USE_SYCL) || defined(SD_USE_METAL) || defined(SD_USE_OPENCL)
1516+ return ggml_nn_conv_2d (ctx, x, w, b, stride.second , stride.first , padding.second , padding.first , dilation.second , dilation.first );
1517+ #else
1518+ return ggml_nn_conv_2d_direct (ctx, x, w, b, stride.second , stride.first , padding.second , padding.first , dilation.second , dilation.first );
1519+ #endif
15161520 #else
1517- return ggml_nn_conv_2d_direct (ctx, x, w, b, stride.second , stride.first , padding.second , padding.first , dilation.second , dilation.first );
1521+ return ggml_nn_conv_2d (ctx, x, w, b, stride.second , stride.first , padding.second , padding.first , dilation.second , dilation.first );
15181522 #endif
15191523 } else {
15201524 return ggml_nn_conv_2d (ctx, x, w, b, stride.second , stride.first , padding.second , padding.first , dilation.second , dilation.first );
0 commit comments