diff --git a/doc/sphinx/build.rst b/doc/sphinx/build.rst index 5c8d34e1..2c70f8e4 100644 --- a/doc/sphinx/build.rst +++ b/doc/sphinx/build.rst @@ -144,116 +144,127 @@ Feature and build option overview The following table shows the features, recipes, and services that are enabled with the given Caliper and spack build options. -+----------------+---------------+---------------------------+--------------------+ -| CMake option | Spack option | Enabled features/recipes | Enabled services | -+================+===============+===========================+====================+ -| WITH_ADIAK | +adiak | Import adiak metadata in | adiak_import, | -| | | most config recipes | adiak_export | -+----------------+---------------+---------------------------+--------------------+ -| WITH_MPI | +mpi | - mpi-report recipe | mpi, mpireport | -| | | - profile.mpi, | | -| | | mpi.message.count, | | -| | | mpi.message.size | | -| | | recipe options | | -| | | - Cross-process | | -| | | aggregation | | -+----------------+---------------+---------------------------+--------------------+ -| WITH_PAPI | +papi | - topdown.all, | papi, topdown | -| | | topdown.toplevel, | | -| | | topdown-counters.* | | -| | | recipe options for some | | -| | | x86 systems | | -| | | - PAPI counter collection | | -+----------------+---------------+---------------------------+--------------------+ -| WITH_LIBDW | +libdw | - source.module, | symbollookup | -| | | source.function, | | -| | | source.location | | -| | | recipe options | | -| | | - Symbol name lookup | | -+----------------+---------------+---------------------------+--------------------+ -| WITH_LIBPFM | +libpfm | PerfEvent counter | libpfm | -| | | collection and precise | | -| | | event sampling | | -+----------------+---------------+---------------------------+--------------------+ -| WITH_LIBUNWIND | +libunwind | - callpath option for | callpath | -| | | sample-report and | | -| | | event-trace recipes | | -| | | (requires libdw) | | -| | | - Call stack unwinding | | -+----------------+---------------+---------------------------+--------------------+ -| WITH_SAMPLER | +sampler | - sample-report, | sampler | -| | | hatchet-sample-profile | | -| | | recipes | | -| | | - sampling option for | | -| | | event-trace recipe | | -| | | - Linux sampling support | | -+----------------+---------------+---------------------------+--------------------+ -| WITH_CUPTI | +cuda | - cuda-activity-report | cupti, cuptitrace | -| | | cuda-activity-profile | | -| | | recipes | | -| | | - profile.cuda, | | -| | | cuda.gputime, | | -| | | cuda.memcpy recipe | | -| | | options | | -| | | - CUDA API profiling | | -| | | - CUDA activity tracing | | -+----------------+ +---------------------------+--------------------+ -| WITH_NVTX | | - nvtx recipe | nvtx | -| | | - Caliper-to-NVTX region | | -| | | forwarding | | -+----------------+---------------+---------------------------+--------------------+ -| WITH_ROCTRACER | +rocm | - rocm-activity-report, | roctracer | -| | | rocm-activity-profile | | -| | | recipes | | -| | | - profile.hip | | -| | | rocm.gputime, | | -| | | rocm.memcpy recipe | | -| | | options | | -| | | - ROCm/HIP API profiling | | -| | | - ROCm activity tracing | | -+----------------+ +---------------------------+--------------------+ -| WITH_ROCTX | | - roctx recipe | roctx | -| | | - Caliper-to-ROCTX region | | -| | | forwarding | | -+----------------+---------------+---------------------------+--------------------+ -| WITH_OMPT | not available | - openmp-report recipe | ompt | -| | yet | - openmp.times, | | -| | | openmp.threads, | | -| | | openmp.efficiency | | -| | | recipe options | | -| | | - OpenMP tools interface | | -| | | support (CPU only, no | | -| | | target offload) | | -+----------------+---------------+---------------------------+--------------------+ -| WITH_GOTCHA | +gotcha | - io.bytes.*, | io, pthread, | -| | | io.*.bandwidth, | sysalloc | -| | | mem.highwatermark, | | -| | | main_thread_only | | -| | | recipe options | | -| | | - Use Gotcha for MPI | | -| | | MPI function wrapping | | -| | | instead of PMPI | | -+----------------+---------------+---------------------------+--------------------+ -| WITH_UMPIRE | not available | umpire.totals, | umpire | -| | yet | umpire.allocators options | | -+----------------+---------------+---------------------------+--------------------+ -| WITH_VARIORUM | +variorum | Read variorum counters | variorum | -+----------------+---------------+---------------------------+--------------------+ -| WITH_PCP | not available | - mem.*.bandwidth, | pcp, pcp.memory | -| | yet | mem.*.bytes recipe | | -| | | options on some LLNL | | -| | | LC systems | | -| | | - Read Performance | | -| | | CoPilot counters | | -+----------------+---------------+---------------------------+--------------------+ -| WITH_VTUNE | not available | Intel ITT API annotation | vtune | -| | yet | forwarding | | -+----------------+---------------+---------------------------+--------------------+ -| WITH_CRAYPAT | not available | HPE CrayPAT API | craypat | -| | yet | annotation forwarding | | -+----------------+---------------+---------------------------+--------------------+ -| WITH_KOKKOS | +kokkos | Enable Kokkos tool API | kokkostime, | -| | | bindings | kokkoslookup | -+----------------+---------------+---------------------------+--------------------+ -| WITH_FORTRAN | +fortran | Enable Fortran API | | -+----------------+---------------+---------------------------+--------------------+ ++----------------------+---------------+---------------+---------------------------+--------------------+ +| CMake option | Default value | Spack option | Enabled features/recipes | Enabled services | ++======================+===============+===============+===========================+====================+ +| WITH_ADIAK | False | +adiak | Import adiak metadata in | adiak_import, | +| | | | most config recipes | adiak_export | ++----------------------+---------------+---------------+---------------------------+--------------------+ +| WITH_MPI | False | +mpi | - mpi-report recipe | mpi, mpireport | +| | | | - profile.mpi, | | +| | | | mpi.message.count, | | +| | | | mpi.message.size | | +| | | | recipe options | | +| | | | - Cross-process | | +| | | | aggregation | | ++----------------------+---------------+---------------+---------------------------+--------------------+ +| WITH_PAPI | False | +papi | - topdown.all, | papi, topdown | +| | | | topdown.toplevel, | | +| | | | topdown-counters.* | | +| | | | recipe options for some | | +| | | | x86 systems | | +| | | | - PAPI counter collection | | ++----------------------+---------------+---------------+---------------------------+--------------------+ +| WITH_PAPI_RDPMC | True | not available | Topdown calculations | | +| | | yet | based on different | | +| | | | approaches to reading | | +| | | | counters in PAPI | | ++----------------------+---------------+---------------+---------------------------+--------------------+ +| WITH_LIBDW | False | +libdw | - source.module, | symbollookup | +| | | | source.function, | | +| | | | source.location | | +| | | | recipe options | | +| | | | - Symbol name lookup | | ++----------------------+---------------+---------------+---------------------------+--------------------+ +| WITH_LIBPFM | False | +libpfm | PerfEvent counter | libpfm | +| | | | collection and precise | | +| | | | event sampling | | ++----------------------+---------------+---------------+---------------------------+--------------------+ +| WITH_LIBUNWIND | False | +libunwind | - callpath option for | callpath | +| | | | sample-report and | | +| | | | event-trace recipes | | +| | | | (requires libdw) | | +| | | | - Call stack unwinding | | ++----------------------+---------------+---------------+---------------------------+--------------------+ +| WITH_SAMPLER | False | +sampler | - sample-report, | sampler | +| | | | hatchet-sample-profile | | +| | | | recipes | | +| | | | - sampling option for | | +| | | | event-trace recipe | | +| | | | - Linux sampling support | | ++----------------------+---------------+---------------+---------------------------+--------------------+ +| WITH_CUPTI | False | +cuda | - cuda-activity-report | cupti, cuptitrace | +| | | | cuda-activity-profile | | +| | | | recipes | | +| | | | - profile.cuda, | | +| | | | cuda.gputime, | | +| | | | cuda.memcpy recipe | | +| | | | options | | +| | | | - CUDA API profiling | | +| | | | - CUDA activity tracing | | ++----------------------+---------------+ +---------------------------+--------------------+ +| WITH_NVTX | False | | - nvtx recipe | nvtx | +| | | | - Caliper-to-NVTX region | | +| | | | forwarding | | ++----------------------+---------------+---------------+---------------------------+--------------------+ +| WITH_ROCTRACER | False | +rocm | - rocm-activity-report, | roctracer | +| | | | rocm-activity-profile | | +| | | | recipes | | +| | | | - profile.hip | | +| | | | rocm.gputime, | | +| | | | rocm.memcpy recipe | | +| | | | options | | +| | | | - ROCm/HIP API profiling | | +| | | | - ROCm activity tracing | | ++----------------------+---------------+ +---------------------------+--------------------+ +| WITH_ROCTX | False | | - roctx recipe | roctx | +| | | | - Caliper-to-ROCTX region | | +| | | | forwarding | | ++----------------------+---------------+---------------+---------------------------+--------------------+ +| WITH_OMPT | False | not available | - openmp-report recipe | ompt | +| | | yet | - openmp.times, | | +| | | | openmp.threads, | | +| | | | openmp.efficiency | | +| | | | recipe options | | +| | | | - OpenMP tools interface | | +| | | | support (CPU only, no | | +| | | | target offload) | | ++----------------------+---------------+---------------+---------------------------+--------------------+ +| WITH_GOTCHA | True on | +gotcha | - io.bytes.*, | io, pthread, | +| | Linux; | | io.*.bandwidth, | sysalloc | +| | False | | mem.highwatermark, | | +| | otherwise | | main_thread_only | | +| | | | recipe options | | +| | | | - Use Gotcha for MPI | | +| | | | MPI function wrapping | | +| | | | instead of PMPI | | ++----------------------+---------------+---------------+---------------------------+--------------------+ +| WITH_UMPIRE | False | not available | umpire.totals, | umpire | +| | | yet | umpire.allocators options | | ++----------------------+---------------+---------------+---------------------------+--------------------+ +| WITH_VARIORUM | False | +variorum | Read variorum counters | variorum | ++----------------------+---------------+---------------+---------------------------+--------------------+ +| WITH_PCP | False | not available | - mem.*.bandwidth, | pcp, pcp.memory | +| | | yet | mem.*.bytes recipe | | +| | | | options on some LLNL | | +| | | | LC systems | | +| | | | - Read Performance | | +| | | | CoPilot counters | | ++----------------------+---------------+---------------+---------------------------+--------------------+ +| WITH_VTUNE | False | not available | Intel ITT API annotation | vtune | +| | | yet | forwarding | | ++----------------------+---------------+---------------+---------------------------+--------------------+ +| WITH_CRAYPAT | False | not available | HPE CrayPAT API | craypat | +| | | yet | annotation forwarding | | ++----------------------+---------------+---------------+---------------------------+--------------------+ +| WITH_KOKKOS | True | +kokkos | Enable Kokkos tool API | kokkostime, | +| | | | bindings | kokkoslookup | ++----------------------+---------------+---------------+---------------------------+--------------------+ +| WITH_FORTRAN | False | +fortran | Enable Fortran API | | ++----------------------+---------------+---------------+---------------------------+--------------------+ +| WITH_PYTHON_BINDINGS | False | not available | Enable Python API | | +| | | yet | | | ++----------------------+---------------+---------------+---------------------------+--------------------+ +| WITH_ARCH | No default | not available | Enable microarchitecture- | | +| | | yet | specific features | | ++----------------------+---------------+---------------+---------------------------+--------------------+