diff --git a/src/pyronn_torch/PYRO-NN-Layers b/src/pyronn_torch/PYRO-NN-Layers
index 32dd8e7e0f43fc80a5ef905535c5212dea0c0773..1d10af309ff19d637bf4e991f4cb0aa58b561840 160000
--- a/src/pyronn_torch/PYRO-NN-Layers
+++ b/src/pyronn_torch/PYRO-NN-Layers
@@ -1 +1 @@
-Subproject commit 32dd8e7e0f43fc80a5ef905535c5212dea0c0773
+Subproject commit 1d10af309ff19d637bf4e991f4cb0aa58b561840
diff --git a/src/pyronn_torch/conebeam.py b/src/pyronn_torch/conebeam.py
index 5343f8c7edce53e5f8c476f96c3bc40513330463..aa0819e225331c3df082b4fe3c124bc3aee9cecc 100644
--- a/src/pyronn_torch/conebeam.py
+++ b/src/pyronn_torch/conebeam.py
@@ -155,7 +155,7 @@ class ConeBeamProjector:
         if self._projection_matrices_numpy is None:
             return
         self._projection_matrices = torch.stack(tuple(
-            map(torch.from_numpy, self._projection_matrices_numpy))).cpu().contiguous()
+            map(torch.from_numpy, self._projection_matrices_numpy))).cuda().contiguous()
 
         inv_spacing = np.array([1/s for s in reversed(self._volume_spacing)], np.float32)
 
@@ -167,6 +167,6 @@ class ConeBeamProjector:
         inv_matrices = map(lambda x: (np.linalg.inv(x[:3, :3]) *
                                       inv_spacing).astype(np.float32), self._projection_matrices_numpy)
 
-        self._inverse_matrices = torch.stack(tuple(map(torch.from_numpy, inv_matrices))).cpu().contiguous()
-        self._source_points = torch.stack(tuple(map(torch.from_numpy, source_points))).cpu().contiguous()
+        self._inverse_matrices = torch.stack(tuple(map(torch.from_numpy, inv_matrices))).cuda().contiguous()
+        self._source_points = torch.stack(tuple(map(torch.from_numpy, source_points))).cuda().contiguous()
         self._projection_multiplier = 1.