NAMD
Functions | Variables
CudaPmeSolverUtil.C File Reference
#include <stdio.h>
#include <algorithm>
#include <cstdlib>
#include <cuda_runtime.h>
#include "HipDefines.h"
#include "ComputeNonbondedUtil.h"
#include "ComputePmeCUDAMgr.h"
#include "CudaPmeSolver.h"
#include "CudaPmeSolverUtil.h"
#include "Node.h"
#include "PatchData.h"
#include "NamdEventsProfiling.h"
#include "TestArray.h"
#include "DeviceCUDA.h"

Go to the source code of this file.

Functions

void CcdCallBacksReset (void *ignored, double curWallTime)
 
void writeComplexToDisk (const float2 *d_data, const int size, const char *filename, cudaStream_t stream)
 
void writeHostComplexToDisk (const float2 *h_data, const int size, const char *filename)
 
void writeRealToDisk (const float *d_data, const int size, const char *filename, cudaStream_t stream)
 

Variables

__thread DeviceCUDAdeviceCUDA
 

Function Documentation

◆ CcdCallBacksReset()

void CcdCallBacksReset ( void *  ignored,
double  curWallTime 
)

◆ writeComplexToDisk()

void writeComplexToDisk ( const float2 *  d_data,
const int  size,
const char *  filename,
cudaStream_t  stream 
)

Definition at line 27 of file CudaPmeSolverUtil.C.

References cudaCheck.

27  {
28  fprintf(stderr, "writeComplexToDisk %d %s\n", size, filename);
29  float2* h_data = new float2[size];
30  copy_DtoH<float2>(d_data, h_data, size, stream);
31  cudaCheck(cudaStreamSynchronize(stream));
32  FILE *handle = fopen(filename, "w");
33  for (int i=0;i < size;i++)
34  fprintf(handle, "%f %f\n", h_data[i].x, h_data[i].y);
35  fclose(handle);
36  delete [] h_data;
37 }
#define cudaCheck(stmt)
Definition: CudaUtils.h:233

◆ writeHostComplexToDisk()

void writeHostComplexToDisk ( const float2 *  h_data,
const int  size,
const char *  filename 
)

Definition at line 39 of file CudaPmeSolverUtil.C.

39  {
40  FILE *handle = fopen(filename, "w");
41  for (int i=0;i < size;i++)
42  fprintf(handle, "%f %f\n", h_data[i].x, h_data[i].y);
43  fclose(handle);
44 }

◆ writeRealToDisk()

void writeRealToDisk ( const float *  d_data,
const int  size,
const char *  filename,
cudaStream_t  stream 
)

Definition at line 46 of file CudaPmeSolverUtil.C.

References cudaCheck.

46  {
47  fprintf(stderr, "writeRealToDisk %d %s\n", size, filename);
48  float* h_data = new float[size];
49  copy_DtoH<float>(d_data, h_data, size, stream);
50  cudaCheck(cudaStreamSynchronize(stream));
51  FILE *handle = fopen(filename, "w");
52  for (int i=0;i < size;i++)
53  fprintf(handle, "%f\n", h_data[i]);
54  fclose(handle);
55  delete [] h_data;
56 }
#define cudaCheck(stmt)
Definition: CudaUtils.h:233

Variable Documentation

◆ deviceCUDA

__thread DeviceCUDA* deviceCUDA

Definition at line 23 of file DeviceCUDA.C.

Referenced by CudaPmeOneDevice::checkPatchLevelSimParamCompatibility().