Skip to content

Commit

Permalink
[ep2to2ep1] check.cc : finally copy ep1 to ep2 as-is including getCom…
Browse files Browse the repository at this point in the history
…piler

This also requires adding Process::getCompiler to ep2 CPPProcess.cc/h.

Now check.cc is identical in both epoch2 and epoch1
(and runTest.cc is almost identical, except for the test name).
Will now include PR madgraph5#144 for single precision in epoch1,
and will copy check.cc again (and runTest.cc with some changes).

Epoch2 baseline remains epoch2 C++ 1.10e6, cuda 6.6e8

time ./check.exe -p 2048 256 12
***********************************************************************
NumBlocksPerGrid            = 2048
NumThreadsPerBlock          = 256
NumIterations               = 12
-----------------------------------------------------------------------
FP precision                = DOUBLE (nan=0)
Complex type                = STD::COMPLEX
RanNumb memory layout       = AOSOA[4]
Momenta memory layout       = AOSOA[4]
Random number generation    = CURAND (C++ code)
OMP threads / `nproc --all` = 1 / 4
MatrixElements compiler     = gcc (GCC) 9.2.0
-----------------------------------------------------------------------
NumberOfEntries             = 12
TotalTime[Rnd+Rmb+ME] (123) = ( 7.968041e+00                 )  sec
TotalTime[Rambo+ME]    (23) = ( 7.643061e+00                 )  sec
TotalTime[RndNumGen]    (1) = ( 3.249804e-01                 )  sec
TotalTime[Rambo]        (2) = ( 1.928639e+00                 )  sec
TotalTime[MatrixElems]  (3) = ( 5.714422e+00                 )  sec
MeanTimeInMatrixElems       = ( 4.762018e-01                 )  sec
[Min,Max]TimeInMatrixElems  = [ 4.760149e-01 ,  4.765775e-01 ]  sec
-----------------------------------------------------------------------
TotalEventsComputed         = 6291456
EvtsPerSec[Rnd+Rmb+ME](123) = ( 7.895863e+05                 )  sec^-1
EvtsPerSec[Rmb+ME]     (23) = ( 8.231592e+05                 )  sec^-1
EvtsPerSec[MatrixElems] (3) = ( 1.100979e+06                 )  sec^-1
***********************************************************************
NumMatrixElements(notNan)   = 6291456
MeanMatrixElemValue         = ( 1.372152e-02 +- 3.269516e-06 )  GeV^0
[Min,Max]MatrixElemValue    = [ 6.071581e-03 ,  3.374925e-02 ]  GeV^0
StdDevMatrixElemValue       = ( 8.200854e-03                 )  GeV^0
MeanWeight                  = ( 4.515827e-01 +- 0.000000e+00 )
[Min,Max]Weight             = [ 4.515827e-01 ,  4.515827e-01 ]
StdDevWeight                = ( 0.000000e+00                 )
***********************************************************************

time ./gcheck.exe -p 2048 256 12
***********************************************************************
NumBlocksPerGrid            = 2048
NumThreadsPerBlock          = 256
NumIterations               = 12
-----------------------------------------------------------------------
FP precision                = DOUBLE (nan=0)
Complex type                = THRUST::COMPLEX
RanNumb memory layout       = AOSOA[4]
Momenta memory layout       = AOSOA[4]
Wavefunction GPU memory     = LOCAL
Random number generation    = CURAND DEVICE (CUDA code)
MatrixElements compiler     = nvcc 11.0.221
-----------------------------------------------------------------------
NumberOfEntries             = 12
TotalTime[Rnd+Rmb+ME] (123) = ( 1.044441e-01                 )  sec
TotalTime[Rambo+ME]    (23) = ( 9.709213e-02                 )  sec
TotalTime[RndNumGen]    (1) = ( 7.351930e-03                 )  sec
TotalTime[Rambo]        (2) = ( 8.758798e-02                 )  sec
TotalTime[MatrixElems]  (3) = ( 9.504147e-03                 )  sec
MeanTimeInMatrixElems       = ( 7.920122e-04                 )  sec
[Min,Max]TimeInMatrixElems  = [ 7.825940e-04 ,  8.001750e-04 ]  sec
-----------------------------------------------------------------------
TotalEventsComputed         = 6291456
EvtsPerSec[Rnd+Rmb+ME](123) = ( 6.023757e+07                 )  sec^-1
EvtsPerSec[Rmb+ME]     (23) = ( 6.479882e+07                 )  sec^-1
EvtsPerSec[MatrixElems] (3) = ( 6.619696e+08                 )  sec^-1
***********************************************************************
NumMatrixElements(notNan)   = 6291456
MeanMatrixElemValue         = ( 1.372152e-02 +- 3.269516e-06 )  GeV^0
[Min,Max]MatrixElemValue    = [ 6.071581e-03 ,  3.374925e-02 ]  GeV^0
StdDevMatrixElemValue       = ( 8.200854e-03                 )  GeV^0
MeanWeight                  = ( 4.515827e-01 +- 0.000000e+00 )
[Min,Max]Weight             = [ 4.515827e-01 ,  4.515827e-01 ]
StdDevWeight                = ( 0.000000e+00                 )
***********************************************************************
  • Loading branch information
valassi committed Mar 31, 2021
1 parent 75ce445 commit a588a88
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -229,6 +229,28 @@ bool * isGoodHel) // output: isGoodHel[ncomb] - device array

//--------------------------------------------------------------------------

// Retrieve the compiler that was used to build this module
const std::string CPPProcess::getCompiler()
{
std::stringstream out;
#ifdef __CUDACC__
#if defined __CUDACC_VER_MAJOR__ && defined __CUDACC_VER_MINOR__ && defined __CUDACC_VER_BUILD__
out << "nvcc " << __CUDACC_VER_MAJOR__ << "." << __CUDACC_VER_MINOR__ << "." << __CUDACC_VER_BUILD__;
#else
out << "nvcc UNKNOWN";
#endif
#else
#if defined __GNUC__ && defined __GNUC_MINOR__ && defined __GNUC_PATCHLEVEL__
out << "gcc (GCC) " << __GNUC__ << "." << __GNUC_MINOR__ << "." << __GNUC_PATCHLEVEL__;
#else
out << "gcc UNKNOWKN";
#endif
#endif
return out.str();
}

//--------------------------------------------------------------------------

#ifdef __CUDACC__
void sigmaKin_setGoodHel(const bool * isGoodHel) // input: isGoodHel[ncomb] - host array
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,9 @@ class CPPProcess
static const int nexternal = mgOnGpu::npar;
// static const int nprocesses = 1;

// Retrieve the compiler that was used to build this module
static const std::string getCompiler();

private:
int m_numiterations;
// gpu variables
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -645,7 +645,7 @@ int main(int argc, char **argv)
#endif
<< "OMP threads / `nproc --all` = " << omp_get_max_threads() << " / " << nprocall // includes a newline
#endif
//<< "MatrixElements compiler = " << process.getCompiler() << std::endl
<< "MatrixElements compiler = " << process.getCompiler() << std::endl
<< "-----------------------------------------------------------------------" << std::endl
<< "NumberOfEntries = " << niter << std::endl
<< std::scientific // fixed format: affects all floats (default precision: 6)
Expand Down

0 comments on commit a588a88

Please sign in to comment.