From 835538c7a1bcf983d35c0ee1151bcce94be4fdc0 Mon Sep 17 00:00:00 2001 From: Andrea Bocci Date: Thu, 17 Jan 2019 08:31:51 +0100 Subject: [PATCH] Remove unnecessary pragmas (#249) `#pragma unroll` is not supported by GCC, leading to compilation warnings in host code. GCC 8 supports `#pragma GCC unroll N` which could be used instead. However, benchmarking on a V100 with and without the `#pragma unroll` there is no observable difference, so it is simpler to remove them. --- RecoPixelVertexing/PixelTrackFitting/interface/RiemannFit.h | 3 --- 1 file changed, 3 deletions(-) diff --git a/RecoPixelVertexing/PixelTrackFitting/interface/RiemannFit.h b/RecoPixelVertexing/PixelTrackFitting/interface/RiemannFit.h index 3e93aab13d00d..35cf3d3256b6b 100644 --- a/RecoPixelVertexing/PixelTrackFitting/interface/RiemannFit.h +++ b/RecoPixelVertexing/PixelTrackFitting/interface/RiemannFit.h @@ -827,11 +827,9 @@ __host__ __device__ inline circle_fit Circle_fit(const M2xN& hits2D, constexpr u_int nu[6][2] = {{0, 0}, {0, 1}, {0, 2}, {1, 1}, {1, 2}, {2, 2}}; Matrix6d E; // cov matrix of the 6 independent elements of A - #pragma unroll for (u_int a = 0; a < 6; ++a) { const u_int i = nu[a][0], j = nu[a][1]; - #pragma unroll for (u_int b = a; b < 6; ++b) { const u_int k = nu[b][0], l = nu[b][1]; @@ -875,7 +873,6 @@ __host__ __device__ inline circle_fit Circle_fit(const M2xN& hits2D, printIt(&E, "circle_fit - E:"); Eigen::Matrix J2; // Jacobian of min_eigen() (numerically computed) - #pragma unroll for (u_int a = 0; a < 6; ++a) { const u_int i = nu[a][0], j = nu[a][1];