diff --git a/src/Benchmarks/SpMV/spmv.h b/src/Benchmarks/SpMV/spmv.h
index 408bcae2976bfd8b84233c22a93153d3ba22d1ac..41ede9d0a06b8e74ab4aa87b61c69c7cc0dc7547 100644
--- a/src/Benchmarks/SpMV/spmv.h
+++ b/src/Benchmarks/SpMV/spmv.h
@@ -202,17 +202,6 @@ benchmarkSpMV( Benchmark& benchmark,
     // Copy the values
     resultHostVector2 = hostVector2;
 
-    // Setup cuSPARSE MetaData, since it has the same header as CSR,
-    //  and therefore will not get its own headers (rows, cols, speedup etc.) in log.
-    //      * Not setting this up causes (among other undiscovered errors) the speedup from CPU to GPU on the input format to be overwritten.
-    benchmark.setMetadataColumns( Benchmark::MetadataColumns({
-          { "matrix name", convertToString( getMatrixFileName( inputFileName ) ) },
-          { "non-zeros", convertToString( hostMatrix.getNumberOfNonzeroMatrixElements() ) },
-          { "rows", convertToString( hostMatrix.getRows() ) },
-          { "columns", convertToString( hostMatrix.getColumns() ) },
-          { "matrix format", convertToString( "CSR-cuSPARSE" ) }
-       } ));
-
 #ifdef HAVE_CUDA
     benchmark.time< Devices::Cuda >( reset, "GPU", spmvCuda );
 
@@ -223,6 +212,17 @@ benchmarkSpMV( Benchmark& benchmark,
     resultDeviceVector2.setValue( 0.0 );
 
     resultDeviceVector2 = deviceVector2;
+    
+    // Setup cuSPARSE MetaData, since it has the same header as CSR,
+    //  and therefore will not get its own headers (rows, cols, speedup etc.) in log.
+    //      * Not setting this up causes (among other undiscovered errors) the speedup from CPU to GPU on the input format to be overwritten.
+    benchmark.setMetadataColumns( Benchmark::MetadataColumns({
+          { "matrix name", convertToString( getMatrixFileName( inputFileName ) ) },
+          { "non-zeros", convertToString( hostMatrix.getNumberOfNonzeroMatrixElements() ) },
+          { "rows", convertToString( hostMatrix.getRows() ) },
+          { "columns", convertToString( hostMatrix.getColumns() ) },
+          { "matrix format", convertToString( "CSR-cuSPARSE" ) }
+       } ));
 
     benchmark.time< Devices::Cuda >( reset, "GPU", spmvCusparse );