diff --git a/tmva/tmva/src/DNN/Architectures/Cuda/Initialization.cu b/tmva/tmva/src/DNN/Architectures/Cuda/Initialization.cu
index 6efd88ddcd22a9e0c2afd137562daee4a4f1e1b0..3acb8afebfd976d7515da2212948934b9116b4da 100644
--- a/tmva/tmva/src/DNN/Architectures/Cuda/Initialization.cu
+++ b/tmva/tmva/src/DNN/Architectures/Cuda/Initialization.cu
@@ -158,17 +158,8 @@ void TCuda<AFloat>::InitializeIdentity(TCudaMatrix<AFloat> & A)
 template<typename AFloat>
 void TCuda<AFloat>::InitializeZero(TCudaMatrix<AFloat> & A)
 {
-   size_t m,n;
-   m = A.GetNrows();
-   n = A.GetNcols();
-   TMatrixT<AFloat> B(m, n);
-
-   for (size_t i = 0; i < m; i++) {
-      for (size_t j = 0; j < n ; j++) {
-         B(i,j) = 0.0;
-      }
-   }
-   A = B;
+   // use fast zero initialization on the device
+   A.Zero();
 }
 
 } // namespace DNN