==============================================================
 Performance Tuning HPL-MxP-NVIDIA
==============================================================

Use ./xhpl_mxp -h/--help for a full list of options for HPL-MxP-NVIDIA:

```
Usage: ./xhpl_mxp [OPTIONS]

Options:
  -h,--help                   Print this help message and exit
  --nprow INT:POSITIVE ... REQUIRED
                              number of rows in the processor grid
  --npcol INT:POSITIVE ... REQUIRED
                              number of columns in the processor grid
  --nporder ENUM:value in {row->0,column->1} OR {0,1} REQUIRED
                              row/column major of the processor grid
  --n INT:POSITIVE ... REQUIRED
                              N of the N-by-N matrix
  --nb INT:POSITIVE ... REQUIRED
                              NB: the blocking constant
  --tolerance FLOAT:POSITIVE [1e-12]
                              tolerance of the HPL harness
  --test-loop INT:POSITIVE [1]
                              number of test loops to run
  --preset-gemm-kernel INT:{0,80} [0]
                              type of preset gemm kernel to use: 0 (none) or 80 (SM80)
  --u-panel-chunk-nbs INT:POSITIVE [8]
                              U panel chunk size given in unit of NBs
  --call-dgemv-with-multiple-threads INT:NONNEGATIVE [0]
                              number of rows each host thread works on if calling dgemv with multiple threads: 0 indicates using only one thread to call dgemv
  --prioritize-trsm INT:NUMBER [0]
                              whether GEMMs wait for U TRSMs
  --prioritize-factorization INT:NUMBER [0]
                              whether GEMMs wait for factorizations
  --use-separate-stream-for-gemm INT:NUMBER [1]
                              whether using a separate stream for GEMMs
  --use-mpi-panel-broadcast INT:NUMBER [1]
                              whether using MPI for panel broadcasts: if not NCCL will be used
  --sloppy-type UINT:{1,2} [2]
                              size of the sloppy type: 1 (FP8) or 2 (FP16)
  --Anq-device INT:NONNEGATIVE [0]
                              number of columns of the FP64 matrix that are placed on the device
  --cuda-host-register-step INT:POSITIVE [2048]
                              number of columns of the FP64 matrix that are cudaHostRegister'd at a time
   --mpi-use-mpi INT:POSITIVE [0]
                              fall back to use MPI_Bcast
  --monitor-gpu INT:NUMBER [0]
                              whether monitoring GPUs during the run
  --monitor-gpu-interval FLOAT:POSITIVE [1]
                              time interval with which GPUs are monitored [seconds]
  --monitor-gpu-clock-warning UINT:NONNEGATIVE [0]
                              GPU clock below which warning is given [MHz]
  --monitor-gpu-power-warning UINT:NONNEGATIVE [0]
                              GPU power above which warning is given [W]
  --monitor-gpu-temp-warning UINT:NONNEGATIVE [0]
                              GPU temperature above which warning is given [C]
  --monitor-gpu-pcie-width-warning UINT:NONNEGATIVE [0]
                              PCIe width below which warning is given
  --monitor-gpu-pcie-gen-warning UINT:NONNEGATIVE [0]
                              PCIe gen below which warning is given
```
