Reference Guide¶
Regression tests¶
internal_timers_mpi.py¶
Sanity checks¶
- reframechecks.common.sphexa.sanity.elapsed_time_from_date(self)¶
Reports elapsed time in seconds using the linux date command:
starttime=1579725956 stoptime=1579725961 reports: _Elapsed: 5 s
- reframechecks.common.sphexa.sanity.pctg_FindNeighbors(obj)¶
reports: * %FindNeighbors: 9.8 %
- reframechecks.common.sphexa.sanity.pctg_IAD(obj)¶
reports: * %IAD: 17.36 %
- reframechecks.common.sphexa.sanity.pctg_MomentumEnergyIAD(obj)¶
reports: * %MomentumEnergyIAD: 30.15 %
- reframechecks.common.sphexa.sanity.pctg_Timestep(obj)¶
reports: * %Timestep: 16.6 %
- reframechecks.common.sphexa.sanity.pctg_mpi_synchronizeHalos(obj)¶
reports: * %mpi_synchronizeHalos: 12.62 %
- reframechecks.common.sphexa.sanity.seconds_elaps(self)¶
Reports elapsed time in seconds using the internal timer from the code
=== Total time for iteration(0) 3.61153s reports: * Elapsed: 3.6115 s
- reframechecks.common.sphexa.sanity.seconds_timers(self, region)¶
Reports timings (in seconds) using the internal timer from the code
# domain::sync: 0.118225s # updateTasks: 0.00561256s # FindNeighbors: 0.266282s # Density: 0.120372s # EquationOfState: 0.00255166s # mpi::synchronizeHalos: 0.116917s # IAD: 0.185804s # mpi::synchronizeHalos: 0.0850162s # MomentumEnergyIAD: 0.423282s # Timestep: 0.0405346s # UpdateQuantities: 0.0140938s # EnergyConservation: 0.0224118s # UpdateSmoothingLength: 0.00413466s
internal_timers_mpi_containers.py¶
- class reframechecks.notool.internal_timers_mpi_containers.SphExa_Container_Base_Check(*args: Any, **kwargs: Any)[source]¶
Bases:
RegressionTest
2 parameters can be set for simulation:
- Parameters
mpi_task – number of mpi tasks; the size of the cube in the 3D square patch test is set with a dictionary depending on mpi_task, but cubesize could also be on the list of parameters,
step – number of simulation steps.
- class reframechecks.notool.internal_timers_mpi_containers.MPI_Collect_Logs_Test(*args: Any, **kwargs: Any)¶
Bases:
RunOnlyRegressionTest
- collect_logs()¶
- extract_data()¶
- class reframechecks.notool.internal_timers_mpi_containers.MPI_Compute_Sarus_Test(*args: Any, **kwargs: Any)¶
Bases:
SphExa_Container_Base_Check
This class run the executable with Sarus
- class reframechecks.notool.internal_timers_mpi_containers.MPI_Compute_Singularity_Test(*args: Any, **kwargs: Any)¶
Bases:
SphExa_Container_Base_Check
This class run the executable with Singularity (and natively too for comparison)
- class reframechecks.notool.internal_timers_mpi_containers.MPI_Plot_Test(*args: Any, **kwargs: Any)¶
Bases:
RunOnlyRegressionTest
- class reframechecks.notool.internal_timers_mpi_containers.SphExa_Container_Base_Check(*args: Any, **kwargs: Any)[source]¶
Bases:
RegressionTest
2 parameters can be set for simulation:
- Parameters
mpi_task – number of mpi tasks; the size of the cube in the 3D square patch test is set with a dictionary depending on mpi_task, but cubesize could also be on the list of parameters,
step – number of simulation steps.
Intel¶
intel_inspector.py¶
- class reframechecks.intel.intel_inspector.SphExaIntelInspectorCheck(*args: Any, **kwargs: Any)¶
Bases:
RegressionTest
This class runs the test code with Intel Inspector (mpi only): https://software.intel.com/en-us/inspector
Available analysis types are:
inspxe-cl -h collect
mi1 Detect Leaks mi2 Detect Memory Problems mi3 Locate Memory Problems ti1 Detect Deadlocks ti2 Detect Deadlocks and Data Races ti3 Locate Deadlocks and Data Races
2 parameters can be set for simulation:
- Parameters
mpitask – number of mpi tasks; the size of the cube in the 3D square patch test is set with a dictionary depending on mpitask, but cubesize could also be on the list of parameters,
steps – number of simulation steps.
Typical performance reporting:
PERFORMANCE REPORT -------------------------------------------------- sphexa_inspector_sqpatch_024mpi_001omp_100n_0steps - dom:gpu - PrgEnv-gnu * num_tasks: 24 * Elapsed: 8.899 s ... * Memory not deallocated: 1
intel_vtune.py¶
- class reframechecks.intel.intel_vtune.SphExaVtuneCheck(*args: Any, **kwargs: Any)¶
Bases:
VtuneBaseTest
This class runs the test code with Intel(R) VTune(TM) (mpi only): https://software.intel.com/en-us/vtune
2 parameters can be set for simulation:
- Parameters
mpitask – number of mpi tasks; the size of the cube in the 3D square patch test is set with a dictionary depending on mpitask, but cubesize could also be on the list of parameters,
steps – number of simulation steps.
- class reframechecks.intel.intel_vtune.SphExaVtuneCheck(*args: Any, **kwargs: Any)¶
Bases:
VtuneBaseTest
This class runs the test code with Intel(R) VTune(TM) (mpi only): https://software.intel.com/en-us/vtune
2 parameters can be set for simulation:
- Parameters
mpitask – number of mpi tasks; the size of the cube in the 3D square patch test is set with a dictionary depending on mpitask, but cubesize could also be on the list of parameters,
steps – number of simulation steps.
Sanity checks¶
- class reframechecks.common.sphexa.sanity_vtune.VtuneBaseTest(*args: Any, **kwargs: Any)[source]¶
Bases:
RegressionTest
- set_basic_perf_patterns()¶
A set of basic perf_patterns shared between the tests
- set_vtune_perf_patterns_rpt()¶
More perf_patterns for the tool
Typical performance reporting:
* vtune_elapsed_min: 6.695 s * vtune_elapsed_max: 6.695 s * vtune_elapsed_cput: 5.0858 s * vtune_elapsed_cput_efft: 4.8549 s * vtune_elapsed_cput_spint: 0.2309 s * vtune_elapsed_cput_spint_mpit: 0.2187 s * %vtune_effective_physical_core_utilization: 85.3 % * %vtune_effective_logical_core_utilization: 84.6 % * vtune_cput_cn0: 122.06 s * %vtune_cput_cn0_efft: 95.5 % * %vtune_cput_cn0_spint: 4.5 %
intel_advisor.py¶
- class reframechecks.intel.intel_advisor.SphExaIntelAdvisorCheck(*args: Any, **kwargs: Any)¶
Bases:
RegressionTest
This class runs the test code with Intel Advisor (mpi only): https://software.intel.com/en-us/advisor
Available analysis types are:
advixe-cl -h collect
survey - Discover efficient vectorization and/or threading dependencies - Identify and explore loop-carried dependencies for loops map - Identify and explore complex memory accesses roofline - Run the Survey analysis + Trip Counts & FLOP analysis suitability - Check predicted parallel performance tripcounts - Identify the number of loop iterations.
2 parameters can be set for simulation:
- Parameters
mpitask – number of mpi tasks; the size of the cube in the 3D square patch test is set with a dictionary depending on mpitask, but cubesize could also be on the list of parameters,
steps – number of simulation steps.
Typical performance reporting:
PERFORMANCE REPORT -------------------------------------------------- sphexa_inspector_sqpatch_024mpi_001omp_100n_0steps - dom:gpu - PrgEnv-gnu * num_tasks: 24 * Elapsed: 3.6147 s ... * advisor_elapsed: 2.13 s * advisor_loop1_line: 94 (momentumAndEnergyIAD.hpp)
Sanity checks¶
- reframechecks.common.sphexa.sanity_intel.advisor_elapsed(obj)¶
Reports the elapsed time (sum of
Self Time
in seconds) measured by the tool> summary.rpt ID / Function Call Sites and Loops / Total Time / Self Time / Type 71 [loop in sphexa::sph::computeMomentumAndEnergyIADImpl<double, ... sphexa::ParticlesData<double>> at momentumAndEnergyIAD.hpp:94] ... 1.092s 0.736s Scalar momentumAndEnergyIAD.hpp:94 34 [loop in MPIDI_Cray_shared_mem_coll_bcast] ... 0.596s 0.472s Scalar libmpich_gnu_82.so.3 etc. returns: * advisor_elapsed: 2.13 s
- reframechecks.common.sphexa.sanity_intel.advisor_loop1_filename(obj)¶
Reports the name of the source file (filename) of the most time consuming loop
> summary.rpt ID / Function Call Sites and Loops / Total Time / Self Time / Type 71 [loop in sphexa::sph::computeMomentumAndEnergyIADImpl<double, ... sphexa::ParticlesData<double>> at momentumAndEnergyIAD.hpp:94] ... 1.092s 0.736s Scalar momentumAndEnergyIAD.hpp:94 34 [loop in MPIDI_Cray_shared_mem_coll_bcast] ... 0.596s 0.472s Scalar libmpich_gnu_82.so.3 etc. returns: * advisor_loop1_line: 94 (momentumAndEnergyIAD.hpp)
- reframechecks.common.sphexa.sanity_intel.advisor_loop1_line(obj)¶
Reports the line (fline) of the most time consuming loop
> summary.rpt ID / Function Call Sites and Loops / Total Time / Self Time / Type 71 [loop in sphexa::sph::computeMomentumAndEnergyIADImpl<double, ... sphexa::ParticlesData<double>> at momentumAndEnergyIAD.hpp:94] ... 1.092s 0.736s Scalar momentumAndEnergyIAD.hpp:94 34 [loop in MPIDI_Cray_shared_mem_coll_bcast] ... 0.596s 0.472s Scalar libmpich_gnu_82.so.3 etc. returns: * advisor_loop1_line: 94 (momentumAndEnergyIAD.hpp)
- reframechecks.common.sphexa.sanity_intel.advisor_version(obj)¶
Checks tool’s version:
> advixe-cl --version Intel(R) Advisor 2020 (build 604394) Command Line Tool returns: True or False
- reframechecks.common.sphexa.sanity_intel.inspector_not_deallocated(obj)¶
Reports number of Memory not deallocated problem(s)
> summary.rpt 2 new problem(s) found 1 Memory leak problem(s) detected 1 Memory not deallocated problem(s) detected returns: * Memory not deallocated: 1
- reframechecks.common.sphexa.sanity_intel.inspector_version(obj)¶
Checks tool’s version:
> inspxe-cl --version Intel(R) Inspector 2020 (build 603904) Command Line tool returns: True or False
- reframechecks.common.sphexa.sanity_intel.vtune_logical_core_utilization(self)¶
Reports the minimum
Physical Core Utilization
(%) measured by the toolEffective Logical Core Utilization: 96.0% (23.028 out of 24) Effective Logical Core Utilization: 95.9% (23.007 out of 24) Effective Logical Core Utilization: 95.5% (22.911 out of 24)
- reframechecks.common.sphexa.sanity_intel.vtune_momentumAndEnergyIAD(self)¶
sphexa::sph::computeMomentumAndEnergyIADImpl<…> sqpatch.exe 40.919s sphexa::sph::computeMomentumAndEnergyIADImpl<…> sqpatch.exe 38.994s sphexa::sph::computeMomentumAndEnergyIADImpl<…> sqpatch.exe 40.245s sphexa::sph::computeMomentumAndEnergyIADImpl<…> sqpatch.exe 39.487s
- reframechecks.common.sphexa.sanity_intel.vtune_perf_patterns(obj)¶
Dictionary of default
perf_patterns
for the tool
- reframechecks.common.sphexa.sanity_intel.vtune_physical_core_utilization(self)¶
Reports the minimum
Physical Core Utilization
(%) measured by the toolEffective Physical Core Utilization: 96.3% (11.554 out of 12) Effective Physical Core Utilization: 96.1% (11.534 out of 12) Effective Physical Core Utilization: 95.9% (11.512 out of 12)
- reframechecks.common.sphexa.sanity_intel.vtune_time(self)¶
Vtune creates 1 report per compute node. For example, a 48 mpi tasks job (= 2 compute nodes when running with 24 c/cn) will create 2 directories: * rpt.nid00001/rpt.nid00001.vtune * rpt.nid00002/rpt.nid00002.vtune
Typical output (for each compute node) is:
Elapsed Time: 14.866s CPU Time: 319.177s /24 = 13.3 Effective Time: 308.218s /24 = 12.8 Idle: 0s Poor: 19.725s Ok: 119.570s Ideal: 168.922s Over: 0s Spin Time: 10.959s /24 = 0.4 MPI Busy Wait Time: 10.795s Other: 0.164s Overhead Time: 0s Total Thread Count: 25 Paused Time: 0s
- reframechecks.common.sphexa.sanity_intel.vtune_tool_reference(obj)¶
Dictionary of default
reference
for the tool
- reframechecks.common.sphexa.sanity_intel.vtune_version(obj)¶
Checks tool’s version:
> vtune --version Intel(R) VTune(TM) Profiler 2020 (build 605129) Command Line Tool returns: True or False
Score-P¶
scorep_sampling_profiling.py¶
scorep_sampling_tracing.py¶
Sanity checks¶
- reframechecks.common.sphexa.sanity_scorep.cube_dump(self, region)¶
Reports timings (in seconds) using the timer from the tool
# ...
- reframechecks.common.sphexa.sanity_scorep.ipc_rk0(obj)¶
Reports the
IPC
(instructions per cycle) for rank 0
- reframechecks.common.sphexa.sanity_scorep.program_begin_count(obj)¶
Reports the number of
PROGRAM_BEGIN
in the otf2 trace file
- reframechecks.common.sphexa.sanity_scorep.program_end_count(obj)¶
Reports the number of
PROGRAM_END
in the otf2 trace file
- reframechecks.common.sphexa.sanity_scorep.ru_maxrss_rk0(obj)¶
Reports the
maximum resident set size
- reframechecks.common.sphexa.sanity_scorep.scorep_assert_version(obj)¶
Checks tool’s version:
> scorep --version Score-P 6.0 returns: True or False
- reframechecks.common.sphexa.sanity_scorep.scorep_com_pct(obj)¶
Reports COM % measured by the tool
type max_buf[B] visits hits time[s] time[%] time/visit[us] region COM 4,680 1,019,424 891 303.17 12.0 297.39 COM ****
- reframechecks.common.sphexa.sanity_scorep.scorep_elapsed(obj)¶
Typical performance report from the tool (profile.cubex)
type max_buf[B] visits hits time[s] time[%] time/visit[us] region ALL 1,019,921 2,249,107 934,957 325.00 100.0 144.50 ALL ****** USR 724,140 1,125,393 667,740 226.14 69.6 200.94 USR MPI 428,794 59,185 215,094 74.72 23.0 1262.56 MPI COM 43,920 1,061,276 48,832 21.96 6.8 20.69 COM MEMORY 9,143 3,229 3,267 2.16 0.7 669.59 MEMORY SCOREP 94 24 24 0.01 0.0 492.90 SCOREP USR 317,100 283,366 283,366 94.43 29.1 333.24 ... _ZN6sphexa3sph31computeMomentumAndEnergyIADImplIdNS_13ParticlesData ... IdEEEEvRKNS_4TaskERT0_
- reframechecks.common.sphexa.sanity_scorep.scorep_exclusivepct_energy(obj)¶
Reports % of elapsed time (exclusive) for MomentumAndEnergy function (small scale job)
> sqpatch_048mpi_001omp_125n_10steps_1000000cycles/rpt.exclusive 0.0193958 (0.0009252%) sqpatch.exe 1.39647 (0.06661%) + main ... 714.135 (34.063%) | + ... ******* _ZN6sphexa3sph31computeMomentumAndEnergyIADImplIdNS_13 ... ParticlesDataIdEEEEvRKNS_4TaskERT0_ 0.205453 (0.0098%) | + _ZN6sphexa3sph15computeTimestepIdNS0_21TimestepPress2ndOrderIdNS_13 ... ParticlesDataIdEEEES4_EEvRKSt6vectorINS_4TaskESaIS7_EERT1_ 201.685 (9.62%) | | + MPI_Allreduce type max_buf[B] visits hits time[s] time[%] time/visit[us] region OMP 1,925,120 81,920 0 63.84 2.5 779.29 !$omp parallel @momentumAndEnergyIAD.hpp:87 *** OMP 920,500 81,920 48,000 125.41 5.0 1530.93 !$omp for @momentumAndEnergyIAD.hpp:87 *** OMP 675,860 81,920 1 30.95 1.2 377.85 !$omp implicit barrier @momentumAndEnergyIAD.hpp:93 ***
- reframechecks.common.sphexa.sanity_scorep.scorep_inclusivepct_energy(obj)¶
Reports % of elapsed time (inclusive) for MomentumAndEnergy function (small scale job)
> sqpatch_048mpi_001omp_125n_10steps_1000000cycles/rpt.exclusive 0.0193958 (0.0009252%) sqpatch.exe 1.39647 (0.06661%) + main ... 714.135 (34.063%) | + ... ******* _ZN6sphexa3sph31computeMomentumAndEnergyIADImplIdNS_13 ... ParticlesDataIdEEEEvRKNS_4TaskERT0_ 0.205453 (0.0098%) | + _ZN6sphexa3sph15computeTimestepIdNS0_21TimestepPress2ndOrderIdNS_13 ... ParticlesDataIdEEEES4_EEvRKSt6vectorINS_4TaskESaIS7_EERT1_ 201.685 (9.62%) | | + MPI_Allreduce
- reframechecks.common.sphexa.sanity_scorep.scorep_info_cuda_support(obj)¶
Checks tool’s configuration (Cuda support)
> scorep-info config-summary CUDA support: yes
- reframechecks.common.sphexa.sanity_scorep.scorep_info_papi_support(obj)¶
Checks tool’s configuration (papi support)
> scorep-info config-summary PAPI support: yes
- reframechecks.common.sphexa.sanity_scorep.scorep_info_perf_support(obj)¶
Checks tool’s configuration (perf support)
> scorep-info config-summary metric perf support: yes
- reframechecks.common.sphexa.sanity_scorep.scorep_info_unwinding_support(obj)¶
Checks tool’s configuration (libunwind support)
> scorep-info config-summary Unwinding support: yes
- reframechecks.common.sphexa.sanity_scorep.scorep_mpi_pct(obj)¶
Reports MPI % measured by the tool
type max_buf[B] visits hits time[s] time[%] time/visit[us] region MPI 428,794 59,185 215,094 74.72 23.0 1262.56 MPI ****
- reframechecks.common.sphexa.sanity_scorep.scorep_omp_pct(obj)¶
Reports OMP % measured by the tool
type max_buf[B] visits hits time[s] time[%] time/visit[us] region OMP 40,739,286 3,017,524 111,304 2203.92 85.4 730.37 OMP ****
- reframechecks.common.sphexa.sanity_scorep.scorep_top1_name(obj)¶
Reports demangled name of top1 function name, for instance:
> c++filt ... _ZN6sphexa3sph31computeMomentumAndEnergyIADImplIdNS_13 ... ParticlesDataIdEEEEvRKNS_4TaskERT0_ void sphexa::sph::computeMomentumAndEnergyIADImpl ... <double, sphexa::ParticlesData<double> > ... (sphexa::Task const&, sphexa::ParticlesData<double>&)
- reframechecks.common.sphexa.sanity_scorep.scorep_top1_tracebuffersize(obj)¶
Reports max_buf[B] for top1 function
type max_buf[B] visits hits time[s] time[%] time/visit[us] region ... USR 317,100 283,366 283,366 94.43 29.1 333.24 ... _ZN6sphexa3sph31computeMomentumAndEnergyIADImplIdNS_13ParticlesData ... USR 430,500 81,902 81,902 38.00 1.5 463.99 ... gomp_team_barrier_wait_end
- reframechecks.common.sphexa.sanity_scorep.scorep_top1_tracebuffersize_name(obj)¶
Reports function name for top1 (max_buf[B]) function
- reframechecks.common.sphexa.sanity_scorep.scorep_usr_pct(obj)¶
Reports USR % measured by the tool
type max_buf[B] visits hits time[s] time[%] time/visit[us] region USR 724,140 1,125,393 667,740 226.14 69.6 200.94 USR ****
- reframechecks.common.sphexa.sanity_scorep.scorep_version(obj)¶
Checks tool’s version:
> scorep --version Score-P 7.0 returns: version string
Scalasca¶
scalasca_sampling_profiling.py¶
scalasca_sampling_tracing.py¶
Sanity checks¶
- reframechecks.common.sphexa.sanity_scalasca.rpt_tracestats_mpi(obj)¶
Reports MPI statistics (mpi_latesender, mpi_latesender_wo, mpi_latereceiver, mpi_wait_nxn, mpi_nxn_completion) by reading the stat_rpt (
trace.stat
) file reported by the tool. Columns are (for each PatternName): Count Mean Median Minimum Maximum Sum Variance Quartil25 and Quartil75. Count (=second column) is used here.Typical performance reporting:
> sphexa_scalascaS+T_sqpatch_024mpi_001omp_100n_4steps_5000000cycles/scorep_sqpatch_24_trace/trace.stat PatternName Count Mean Median Minimum Maximum Sum Variance Quartil25 Quartil75 mpi_latesender 2087 0.0231947 0.0024630 0.0000001623 0.2150408312 48.4074203231 0.0029201162 0.0007851545 0.0067652356 mpi_latesender_wo 15 0.0073685 0.0057757 0.0011093750 0.0301200084 0.1105282126 0.0000531833 0.0025275522 0.0104651418 mpi_latereceiver 327 0.0047614 0.0000339 0.0000362101 0.0139404002 1.5569782562 0.0000071413 0.0000338690 0.0000338690 mpi_wait_nxn 1978 0.0324812 0.0002649 0.0000000015 0.7569314451 64.2478221177 0.0164967346 0.0001135482 0.0004163433 mpi_nxn_completion 1978 0.0000040 0.0001135 0.0000000008 0.0000607473 0.0078960137 0.0000000001 0.0000378494 0.0001892469
- reframechecks.common.sphexa.sanity_scalasca.rpt_tracestats_omp(obj)¶
Reports OpenMP statistics by reading the trace.stat file: - omp_ibarrier_wait: OMP Wait at Implicit Barrier (sec) in Cube GUI - omp_lock_contention_critical: OMP Critical Contention (sec) in Cube GUI Each column (Count Mean Median Minimum Maximum Sum Variance Quartil25 and Quartil75) is read, only Sum is reported here.
- reframechecks.common.sphexa.sanity_scalasca.scalasca_mpi_pct(obj)¶
MPI % reported by Scalasca (scorep.score, notice no hits column)
type max_buf[B] visits time[s] time[%] time/visit[us] region ALL 6,529,686 193,188 28.13 100.0 145.63 ALL OMP 6,525,184 141,056 27.33 97.1 193.74 OMP MPI 4,502 73 0.02 0.1 268.42 MPI *****
- reframechecks.common.sphexa.sanity_scalasca.scalasca_omp_pct(obj)¶
OpenMP % reported by Scalasca (scorep.score, notice no hits column)
type max_buf[B] visits time[s] time[%] time/visit[us] region ALL 6,529,686 193,188 28.13 100.0 145.63 ALL OMP 6,525,184 141,056 27.33 97.1 193.74 OMP ***** MPI 4,502 73 0.02 0.1 268.42 MPI
Extrae¶
extrae.py¶
Sanity checks¶
- reframechecks.common.sphexa.sanity_extrae.create_sh(obj)¶
Create a wrapper script to insert Extrae libs (with
LD_PRELOAD
) into the executable at runtime
- reframechecks.common.sphexa.sanity_extrae.extrae_version(obj)¶
Checks tool’s version. As there is no
--version
flag available, we read the version from extrae_version.h and compare it to our reference> cat $EBROOTEXTRAE/include/extrae_version.h #define EXTRAE_MAJOR 3 #define EXTRAE_MINOR 7 #define EXTRAE_MICRO 1 returns: True or False
- reframechecks.common.sphexa.sanity_extrae.rpt_mpistats(obj)¶
Reports statistics (histogram of MPI communications) from the comms.dat file
#_of_comms %_of_bytes_sent # histogram bin 466 0.00 # 10 B 3543 0.25 # 100 B 11554 11.69 # 1 KB 29425 88.05 # 10 KB 0 0.00 # 100 KB 0 0.00 # 1 MB 0 0.00 # 10 MB 0 0.00 # >10 MB
- reframechecks.common.sphexa.sanity_extrae.tool_reference_scoped_d(obj)¶
Sets a set of tool perf_reference to be shared between the tests.
mpiP¶
mpip.py¶
Sanity checks¶
- class reframechecks.common.sphexa.sanity_mpip.MpipBaseTest(*args: Any, **kwargs: Any)[source]¶
Bases:
RegressionTest
- mpip_sanity_patterns()¶
Checks tool’s version:
> cat ./sqpatch.exe.6.31820.1.mpiP @ mpiP @ Command : sqpatch.exe -n 62 -s 1 @ Version : 3.4.2 <-- 57fc864
- set_basic_perf_patterns()¶
A set of basic perf_patterns shared between the tests
- set_mpip_perf_patterns()¶
More perf_patterns for the tool
----------------------------------- @--- MPI Time (seconds) ----------- ----------------------------------- Task AppTime MPITime MPI% 0 8.6 0.121 1.40 <-- min 1 8.6 0.157 1.82 2 8.6 5.92 68.84 <-- max * 25.8 6.2 24.02 <--- => NonMPI= AppTime - MPITime
Typical performance reporting:
* mpip_avg_app_time: 8.6 s (= 25.8/3mpi) * mpip_avg_mpi_time: 2.07 s (= 6.2/3mpi) * %mpip_avg_mpi_time: 24.02 % * %mpip_avg_non_mpi_time: 75.98 %
- reframechecks.common.sphexa.sanity_mpip.mpip_perf_patterns(obj, reg)¶
More perf_patterns for the tool
----------------------------------- @--- MPI Time (seconds) ----------- ----------------------------------- Task AppTime MPITime MPI% 0 8.6 0.121 1.40 <-- min 1 8.6 0.157 1.82 2 8.6 5.92 68.84 <-- max * 25.8 6.2 24.02 <--- => NonMPI= AppTime - MPITime
Typical performance reporting:
* mpip_avg_app_time: 8.6 s (= 25.8/3mpi) * mpip_avg_mpi_time: 2.07 s (= 6.2/3mpi) * %mpip_avg_mpi_time: 24.02 % * %max/%min * %mpip_avg_non_mpi_time: 75.98 %