Skip to content
Snippets Groups Projects
Commit 17a5ae58 authored by Martin Bauer's avatar Martin Bauer
Browse files

Fix float-double issues

parent 5dd47682
Branches
Tags
No related merge requests found
......@@ -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
......
......@@ -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 ) );
......
......@@ -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 );
......
......@@ -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 );
......
......@@ -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 );
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment