From c66df98929acfcb4cf3a4ebad101be16cc0bad8d Mon Sep 17 00:00:00 2001 From: "Kurt A. O'Hearn" <ohearnku@msu.edu> Date: Tue, 10 Aug 2021 12:38:00 -0400 Subject: [PATCH] PG-PuReMD: fix compilation issue with MPI code (from SDSC hackathon branch merge). --- PG-PuReMD/src/cuda/cuda_copy.cu | 12 ++++++------ PG-PuReMD/src/cuda/cuda_copy.h | 4 ++-- PG-PuReMD/src/puremd.c | 4 ++-- PG-PuReMD/src/system_props.c | 6 +++--- PG-PuReMD/src/system_props.h | 3 ++- 5 files changed, 15 insertions(+), 14 deletions(-) diff --git a/PG-PuReMD/src/cuda/cuda_copy.cu b/PG-PuReMD/src/cuda/cuda_copy.cu index 7fa7321e..1163b0e9 100644 --- a/PG-PuReMD/src/cuda/cuda_copy.cu +++ b/PG-PuReMD/src/cuda/cuda_copy.cu @@ -116,18 +116,18 @@ extern "C" void Cuda_Copy_Atoms_Device_to_Host( reax_system *system, control_par /* Copy simulation data from device to host */ -extern "C" void Cuda_Copy_Simulation_Data_Device_to_Host( control_params *control, - simulation_data *host, simulation_data *dev ) +extern "C" void Cuda_Copy_Simulation_Data_Device_to_Host( control_params const * const control, + simulation_data * const data, simulation_data * const d_data ) { - sCudaMemcpyAsync( &host->my_en, &dev->my_en, sizeof(energy_data), + sCudaMemcpyAsync( &data->my_en, &d_data->my_en, sizeof(energy_data), cudaMemcpyDeviceToHost, control->streams[0], __FILE__, __LINE__ ); if ( control->virial == 1 ) { - sCudaMemcpyAsync( &host->kin_press, &dev->kin_press, sizeof(real), + sCudaMemcpyAsync( &data->kin_press, &d_data->kin_press, sizeof(real), cudaMemcpyDeviceToHost, control->streams[0], __FILE__, __LINE__ ); - sCudaMemcpyAsync( host->int_press, dev->int_press, sizeof(rvec), + sCudaMemcpyAsync( data->int_press, d_data->int_press, sizeof(rvec), cudaMemcpyDeviceToHost, control->streams[0], __FILE__, __LINE__ ); - sCudaMemcpyAsync( host->ext_press, dev->ext_press, sizeof(rvec), + sCudaMemcpyAsync( data->ext_press, d_data->ext_press, sizeof(rvec), cudaMemcpyDeviceToHost, control->streams[0], __FILE__, __LINE__ ); } diff --git a/PG-PuReMD/src/cuda/cuda_copy.h b/PG-PuReMD/src/cuda/cuda_copy.h index ae06efd8..a5c4eb30 100644 --- a/PG-PuReMD/src/cuda/cuda_copy.h +++ b/PG-PuReMD/src/cuda/cuda_copy.h @@ -18,8 +18,8 @@ void Cuda_Copy_List_Device_to_Host( control_params *, reax_list *, reax_list *, void Cuda_Copy_Atoms_Device_to_Host( reax_system *, control_params * ); -void Cuda_Copy_Simulation_Data_Device_to_Host( control_params *, simulation_data *, - simulation_data * ); +void Cuda_Copy_Simulation_Data_Device_to_Host( control_params const * const, + simulation_data * const, simulation_data * const ); void Cuda_Copy_MPI_Data_Host_to_Device( control_params *, mpi_datatypes * ); diff --git a/PG-PuReMD/src/puremd.c b/PG-PuReMD/src/puremd.c index 0cf04241..df5b867f 100644 --- a/PG-PuReMD/src/puremd.c +++ b/PG-PuReMD/src/puremd.c @@ -163,7 +163,7 @@ static void Post_Evolve( reax_system * const system, control_params * const cont || (out_control->write_steps > 0 && data->step % out_control->write_steps == 0) ) { - Compute_Total_Energy( system, data, MPI_COMM_WORLD ); + Compute_Total_Energy( system, control, data, MPI_COMM_WORLD ); } } #endif @@ -409,7 +409,7 @@ int simulate( const void * const handle ) Compute_Kinetic_Energy( system, data, mpi_data->comm_mesh3D ); - Compute_Total_Energy( system, data, MPI_COMM_WORLD ); + Compute_Total_Energy( system, control, data, MPI_COMM_WORLD ); Output_Results( system, control, data, lists, out_control, mpi_data ); diff --git a/PG-PuReMD/src/system_props.c b/PG-PuReMD/src/system_props.c index 7cce1b2d..e5cf396b 100644 --- a/PG-PuReMD/src/system_props.c +++ b/PG-PuReMD/src/system_props.c @@ -107,8 +107,8 @@ void Compute_Kinetic_Energy( reax_system* system, simulation_data* data, } -void Compute_Total_Energy( reax_system *system, control_params *control, - simulation_data *data, MPI_Comm comm ) +void Compute_Total_Energy( reax_system const * const system, + control_params const * const control, simulation_data * const data, MPI_Comm comm ) { int ret; real my_en[14], sys_en[14]; @@ -118,7 +118,7 @@ void Compute_Total_Energy( reax_system *system, control_params *control, #if defined(HAVE_CUDA) Cuda_Copy_Simulation_Data_Device_to_Host( control, data, - (simulation_data *)data->d_simulation_data ); + (simulation_data *) data->d_simulation_data ); #endif my_en[0] = data->my_en.e_bond; diff --git a/PG-PuReMD/src/system_props.h b/PG-PuReMD/src/system_props.h index b7e028b9..97d11a9e 100644 --- a/PG-PuReMD/src/system_props.h +++ b/PG-PuReMD/src/system_props.h @@ -33,7 +33,8 @@ void Temperature_Control( control_params*, simulation_data* ); void Compute_Kinetic_Energy( reax_system*, simulation_data*, MPI_Comm ); -void Compute_Total_Energy( reax_system*, control_params *, simulation_data*, MPI_Comm ); +void Compute_Total_Energy( reax_system const * const, control_params const * const, + simulation_data * const, MPI_Comm ); void Check_Energy( simulation_data* ); -- GitLab