diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 4b41bb80e9880857f64f078b1972add68cf66c16..a7ef1913d978e175558c2c7a6b397f66c8f0ab40 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -119,8 +119,8 @@ intel_15_serial:
    <<: *build_serial_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:15
    tags:
-      - intel
       - docker
+      - intel
    only:
       - triggers
 
@@ -128,8 +128,8 @@ intel_15_mpionly:
    <<: *build_mpionly_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:15
    tags:
-      - intel
       - docker
+      - intel
    only:
       - triggers
 
@@ -137,8 +137,8 @@ intel_15_hybrid:
    <<: *build_hybrid_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:15
    tags:
-      - intel
       - docker
+      - intel
    only:
       - triggers
 
@@ -146,8 +146,8 @@ intel_15_serial_dbg:
    <<: *build_serial_dbg_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:15
    tags:
-      - intel
       - docker
+      - intel
    only:
       - triggers
 
@@ -155,8 +155,8 @@ intel_15_mpionly_dbg:
    <<: *build_mpionly_dbg_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:15
    tags:
-      - intel
       - docker
+      - intel
    only:
       - triggers
 
@@ -164,15 +164,15 @@ intel_15_hybrid_dbg:
    <<: *build_hybrid_dbg_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:15
    tags:
-      - intel
       - docker
+      - intel
 
 intel_15_hybrid_dbg_sp:
    <<: *build_hybrid_dbg_sp_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:15
    tags:
-      - intel
       - docker
+      - intel
    only:
       - triggers
 
@@ -180,9 +180,9 @@ intel_16_serial:
    <<: *build_serial_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:16
    tags:
-      - cuda
-      - intel
       - docker
+      - intel
+      - cuda
    only:
       - triggers
 
@@ -190,9 +190,9 @@ intel_16_mpionly:
    <<: *build_mpionly_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:16
    tags:
-      - cuda
-      - intel
       - docker
+      - intel
+      - cuda
    only:
       - triggers
 
@@ -200,9 +200,9 @@ intel_16_hybrid:
    <<: *build_hybrid_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:16
    tags:
-      - cuda
-      - intel
       - docker
+      - intel
+      - cuda
    only:
       - triggers
 
@@ -210,9 +210,9 @@ intel_16_serial_dbg:
    <<: *build_serial_dbg_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:16
    tags:
-      - cuda
-      - intel
       - docker
+      - intel
+      - cuda
    only:
       - triggers
 
@@ -220,9 +220,9 @@ intel_16_mpionly_dbg:
    <<: *build_mpionly_dbg_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:16
    tags:
-      - cuda
-      - intel
       - docker
+      - intel
+      - cuda
    only:
       - triggers
 
@@ -230,9 +230,9 @@ intel_16_hybrid_dbg:
    <<: *build_hybrid_dbg_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:16
    tags:
-      - cuda
-      - intel
       - docker
+      - intel
+      - cuda
    only:
       - triggers
 
@@ -240,9 +240,9 @@ intel_16_hybrid_dbg_sp:
    <<: *build_hybrid_dbg_sp_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:16
    tags:
-      - cuda
-      - intel
       - docker
+      - intel
+      - cuda
    only:
       - triggers
 
@@ -250,8 +250,8 @@ intel_17_serial:
    <<: *build_serial_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:17
    tags:
-      - intel
       - docker
+      - intel
    only:
       - triggers
 
@@ -259,8 +259,8 @@ intel_17_mpionly:
    <<: *build_mpionly_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:17
    tags:
-      - intel
       - docker
+      - intel
    only:
       - triggers
 
@@ -268,36 +268,36 @@ intel_17_hybrid:
    <<: *build_hybrid_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:17
    tags:
-      - intel
       - docker
+      - intel
 
 intel_17_serial_dbg:
    <<: *build_serial_dbg_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:17
    tags:
-      - intel
       - docker
+      - intel
 
 intel_17_mpionly_dbg:
    <<: *build_mpionly_dbg_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:17
    tags:
-      - intel
       - docker
+      - intel
 
 intel_17_hybrid_dbg:
    <<: *build_hybrid_dbg_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:17
    tags:
-      - intel
       - docker
+      - intel
 
 intel_17_hybrid_dbg_sp:
    <<: *build_hybrid_dbg_sp_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:17
    tags:
-      - intel
       - docker
+      - intel
 
 gcc_4.7_serial:
    <<: *build_serial_definition
@@ -469,8 +469,8 @@ gcc_5_serial:
    <<: *build_serial_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:5
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -478,8 +478,8 @@ gcc_5_mpionly:
    <<: *build_mpionly_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:5
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -487,22 +487,24 @@ gcc_5_hybrid:
    <<: *build_hybrid_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:5
    tags:
-      - cuda
       - docker
+      - cuda
+   only:
+      - triggers
 
 gcc_5_serial_dbg:
    <<: *build_serial_dbg_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:5
    tags:
-      - cuda
       - docker
+      - cuda
 
 gcc_5_mpionly_dbg:
    <<: *build_mpionly_dbg_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:5
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -510,8 +512,8 @@ gcc_5_hybrid_dbg:
    <<: *build_hybrid_dbg_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:5
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -519,10 +521,8 @@ gcc_5_hybrid_dbg_sp:
    <<: *build_hybrid_dbg_sp_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:5
    tags:
-      - cuda
       - docker
-   only:
-      - triggers
+      - cuda
 
 gcc_6_serial:
    <<: *build_serial_definition
@@ -628,8 +628,8 @@ clang_3.5_serial:
    <<: *build_serial_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.5
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -637,8 +637,8 @@ clang_3.5_mpionly:
    <<: *build_mpionly_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.5
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -646,8 +646,8 @@ clang_3.5_hybrid:
    <<: *build_hybrid_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.5
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -655,8 +655,8 @@ clang_3.5_serial_dbg:
    <<: *build_serial_dbg_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.5
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -664,8 +664,8 @@ clang_3.5_mpionly_dbg:
    <<: *build_mpionly_dbg_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.5
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -673,8 +673,8 @@ clang_3.5_hybrid_dbg:
    <<: *build_hybrid_dbg_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.5
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -682,8 +682,8 @@ clang_3.5_hybrid_dbg_sp:
    <<: *build_hybrid_dbg_sp_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.5
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -691,8 +691,8 @@ clang_3.6_serial:
    <<: *build_serial_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.6
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -700,8 +700,8 @@ clang_3.6_mpionly:
    <<: *build_mpionly_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.6
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -709,8 +709,8 @@ clang_3.6_hybrid:
    <<: *build_hybrid_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.6
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -718,8 +718,8 @@ clang_3.6_serial_dbg:
    <<: *build_serial_dbg_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.6
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -727,8 +727,8 @@ clang_3.6_mpionly_dbg:
    <<: *build_mpionly_dbg_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.6
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -736,8 +736,8 @@ clang_3.6_hybrid_dbg:
    <<: *build_hybrid_dbg_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.6
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -745,8 +745,8 @@ clang_3.6_hybrid_dbg_sp:
    <<: *build_hybrid_dbg_sp_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.6
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -754,8 +754,8 @@ clang_3.7_serial:
    <<: *build_serial_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.7
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -763,8 +763,8 @@ clang_3.7_mpionly:
    <<: *build_mpionly_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.7
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -772,8 +772,8 @@ clang_3.7_hybrid:
    <<: *build_hybrid_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.7
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -781,8 +781,8 @@ clang_3.7_serial_dbg:
    <<: *build_serial_dbg_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.7
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -790,8 +790,8 @@ clang_3.7_mpionly_dbg:
    <<: *build_mpionly_dbg_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.7
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -799,8 +799,8 @@ clang_3.7_hybrid_dbg:
    <<: *build_hybrid_dbg_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.7
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -808,8 +808,8 @@ clang_3.7_hybrid_dbg_sp:
    <<: *build_hybrid_dbg_sp_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.7
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -817,8 +817,8 @@ clang_3.8_serial:
    <<: *build_serial_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.8
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -826,8 +826,8 @@ clang_3.8_mpionly:
    <<: *build_mpionly_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.8
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -835,8 +835,8 @@ clang_3.8_hybrid:
    <<: *build_hybrid_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.8
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -844,8 +844,8 @@ clang_3.8_serial_dbg:
    <<: *build_serial_dbg_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.8
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -853,8 +853,8 @@ clang_3.8_mpionly_dbg:
    <<: *build_mpionly_dbg_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.8
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -862,8 +862,8 @@ clang_3.8_hybrid_dbg:
    <<: *build_hybrid_dbg_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.8
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
@@ -871,8 +871,8 @@ clang_3.8_hybrid_dbg_sp:
    <<: *build_hybrid_dbg_sp_definition
    image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.8
    tags:
-      - cuda
       - docker
+      - cuda
    only:
       - triggers
 
diff --git a/apps/tutorials/cuda/01_GameOfLife_cuda.cpp b/apps/tutorials/cuda/01_GameOfLife_cuda.cpp
index 1f6ef10f8375c1f48ee9b27e479e4c1f09550a73..391f4ab11687558e476b2cddac86aed133aa71ab 100644
--- a/apps/tutorials/cuda/01_GameOfLife_cuda.cpp
+++ b/apps/tutorials/cuda/01_GameOfLife_cuda.cpp
@@ -60,7 +60,7 @@ ScalarField * createField( IBlock* const block, StructuredBlockStorage* const st
             storage->getNumberOfYCells( *block ),   // number of cells in y direction per block
             storage->getNumberOfZCells( *block ),   // number of cells in z direction per block
             1,                                      // one ghost layer
-            real_t(0),                              // initial value
+            double(0),                              // initial value
             field::fzyx,                            // layout
             make_shared<cuda::HostFieldAllocator<double> >()  // allocator for host pinned memory
             );
@@ -75,8 +75,8 @@ class GameOfLifeSweepCUDA
       }
       void operator() ( IBlock * block )
       {
-         auto srcCudaField = block->getData< cuda::GPUField<real_t> > ( gpuFieldSrcID_ );
-         auto dstCudaField = block->getData< cuda::GPUField<real_t> > ( gpuFieldDstID_ );
+         auto srcCudaField = block->getData< cuda::GPUField<double> > ( gpuFieldSrcID_ );
+         auto dstCudaField = block->getData< cuda::GPUField<double> > ( gpuFieldDstID_ );
 
          auto myKernel = cuda::make_kernel( &gameOfLifeKernel );
          myKernel.addFieldIndexingParam( cuda::FieldIndexing<double>::xyz( *srcCudaField ) );
diff --git a/src/gui/BlockView3D/BlockView3D.cpp b/src/gui/BlockView3D/BlockView3D.cpp
index 0e3c123c73a2740742f08f48caccf1312a8708e9..dc78bdf5e776ebf9e2cd723e45db93b751dfb50c 100644
--- a/src/gui/BlockView3D/BlockView3D.cpp
+++ b/src/gui/BlockView3D/BlockView3D.cpp
@@ -112,7 +112,7 @@ void BlockView3D::paintGL(QGLPainter * painter)
                       0.5 * (bb.max(1) + bb.min(1)),
                       0.5 * (bb.max(2) + bb.min(2)));
 
-   real_t maxExtend = std::max( std::max( bbMid.x(), bbMid.y() ), bbMid.z() );
+   double maxExtend = std::max( std::max( bbMid.x(), bbMid.y() ), bbMid.z() );
 
    painter->modelViewMatrix().push();
    painter->modelViewMatrix().scale( 15.0 / maxExtend );
diff --git a/tests/cuda/CudaMPI.cpp b/tests/cuda/CudaMPI.cpp
index ffcb892601289e954d96f59899d26837a5df7f86..1669a1acdab3afc377067cb6edc927558f4339dd 100644
--- a/tests/cuda/CudaMPI.cpp
+++ b/tests/cuda/CudaMPI.cpp
@@ -115,8 +115,8 @@ void blockStorageAndGui( int argc, char ** argv )
       auto h_f2_datatype = mpi::Datatype ( field::communication::mpiDatatypeSliceBeforeGhostlayer( *h_f2, stencil::W, 1, true ) );
       auto d_f_datatype  = mpi::Datatype ( field::communication::mpiDatatypeSliceBeforeGhostlayer( *d_f , stencil::W, 1, true ) );
 
-      MPI_Sendrecv( const_cast<double *>( h_f1->data() ), 1, h_f1_datatype, 0, 0,
-                                           d_f->data(),   1, d_f_datatype , 0, 0, MPI_COMM_WORLD, MPI_STATUS_IGNORE );
+      MPI_Sendrecv( h_f1->data() , 1, h_f1_datatype, 0, 0,
+                    d_f->data(),   1, d_f_datatype , 0, 0, MPI_COMM_WORLD, MPI_STATUS_IGNORE );
 
       MPI_Sendrecv( d_f->data(), 1, d_f_datatype, 0, 0,
                     h_f2->data(),  1, h_f2_datatype, 0, 0, MPI_COMM_WORLD, MPI_STATUS_IGNORE );
diff --git a/tests/cuda/SimpleKernelTest.cpp b/tests/cuda/SimpleKernelTest.cpp
index 4c2efa9ef38f1fda0c703e54267de4adb8d52fb0..6b79fa8db826bf4dac52ba0f5d976826b16cc557 100644
--- a/tests/cuda/SimpleKernelTest.cpp
+++ b/tests/cuda/SimpleKernelTest.cpp
@@ -39,20 +39,20 @@ namespace walberla{
 void kernel_double( cuda::FieldAccessor<double> f );
 }
 
-GhostLayerField<real_t,1> * createCPUField( IBlock* const block, StructuredBlockStorage* const storage )
+GhostLayerField<double,1> * createCPUField( IBlock* const block, StructuredBlockStorage* const storage )
 {
-   return new GhostLayerField<real_t,1> (
+   return new GhostLayerField<double,1> (
             storage->getNumberOfXCells( *block ), // number of cells in x direction
             storage->getNumberOfYCells( *block ), // number of cells in y direction
             storage->getNumberOfZCells( *block ), // number of cells in z direction
             1,                                    // number of ghost layers
-            real_t(1),                            // initial value
+            double(1),                            // initial value
             field::fzyx);
 }
 
-cuda::GPUField<real_t> * createGPUField( IBlock* const block, StructuredBlockStorage* const storage )
+cuda::GPUField<double> * createGPUField( IBlock* const block, StructuredBlockStorage* const storage )
 {
-   return new cuda::GPUField<real_t> (
+   return new cuda::GPUField<double> (
             storage->getNumberOfXCells( *block ), // number of cells in x direction
             storage->getNumberOfYCells( *block ), // number of cells in y direction
             storage->getNumberOfZCells( *block ), // number of cells in z direction
@@ -76,18 +76,18 @@ int main( int argc, char ** argv )
 
 
 
-   BlockDataID cpuFieldID = blocks->addStructuredBlockData< GhostLayerField<real_t,1> > ( &createCPUField, "CPUField" );
+   BlockDataID cpuFieldID = blocks->addStructuredBlockData< GhostLayerField<double,1> > ( &createCPUField, "CPUField" );
 
 
-   BlockDataID gpuFieldID = blocks->addStructuredBlockData< cuda::GPUField<real_t>    > ( &createGPUField, "GPUField" );
+   BlockDataID gpuFieldID = blocks->addStructuredBlockData< cuda::GPUField<double>    > ( &createGPUField, "GPUField" );
 
    for ( auto blockIterator = blocks->begin(); blockIterator != blocks->end(); ++blockIterator )
    {
       IBlock & currentBlock = *blockIterator;
 
       // get the field stored on the current block
-      auto cpuField = currentBlock.getData< GhostLayerField<real_t,1> > ( cpuFieldID );
-      auto gpuField = currentBlock.getData< cuda::GPUField<real_t>    > ( gpuFieldID );
+      auto cpuField = currentBlock.getData< GhostLayerField<double,1> > ( cpuFieldID );
+      auto gpuField = currentBlock.getData< cuda::GPUField<double>    > ( gpuFieldID );
 
       cuda::fieldCpy( *gpuField, *cpuField );