|
timemory 3.3.0
Modular C++ Toolkit for Performance Analysis and Logging. Profiling API and Tools for C, C++, CUDA, Fortran, and Python. The C++ template API is essentially a framework to creating tools: it is designed to provide a unifying interface for recording various performance measurements alongside data logging and interfaces to other tools.
|
Classes | |
| struct | kernel_logger |
Typedefs | |
| using | memory_tracker = tim::component::data_tracker< int64_t, tim::project::kokkosp > |
| using | kokkos_bundle = tim::component::user_kokkosp_bundle |
| using | logger_t = tim::component_bundle_t< project::kokkosp, kokkosp::kernel_logger * > |
| template<typename... Tail> | |
| using | profiler_t = tim::component_bundle_t< project::kokkosp, kokkosp::memory_tracker, Tail... > |
| template<typename... Tail> | |
| using | profiler_section_t = std::tuple< std::string, profiler_t< Tail... > > |
| template<typename... Tail> | |
| using | profiler_alloc_t = tim::auto_tuple< kokkosp::memory_tracker, Tail... > |
| template<typename... Tail> | |
| using | profiler_stack_t = std::vector< profiler_t< Tail... > > |
| template<typename... Tail> | |
| using | profiler_memory_map_t = std::unordered_map< string_view_t, std::unordered_map< string_view_t, profiler_t< Tail... > > > |
| template<typename... Tail> | |
| using | profiler_index_map_t = std::unordered_map< uint64_t, profiler_t< Tail... > > |
| template<typename... Tail> | |
| using | profiler_section_map_t = std::unordered_map< uint64_t, profiler_section_t< Tail... > > |
Enumerations | |
| enum | Space { SPACE_HOST , SPACE_CUDA } |
| enum | { NSPACES = 2 } |
Functions | |
| Space | get_space (const SpaceHandle &handle) |
| const char * | get_space_name (int space) |
| uint64_t | get_unique_id () |
| std::mutex & | get_cleanup_mutex () |
| auto & | get_cleanup () |
| template<typename Tp > | |
| Tp & | get_tl_static () |
| template<typename Tp > | |
| Tp & | get_static () |
| void | cleanup () |
| template<typename... Tail> | |
| profiler_index_map_t< Tail... > & | get_profiler_index_map () |
| template<typename... Tail> | |
| profiler_section_map_t< Tail... > & | get_profiler_section_map () |
| template<typename... Tail> | |
| profiler_memory_map_t< Tail... > & | get_profiler_memory_map () |
| template<typename... Tail> | |
| auto & | get_profiler_memory_map (SpaceHandle _space) |
| template<typename... Tail> | |
| profiler_stack_t< Tail... > & | get_profiler_stack () |
| template<typename... Tail> | |
| void | create_profiler (const std::string &pname, uint64_t kernid) |
| template<typename... Tail> | |
| void | destroy_profiler (uint64_t kernid) |
| template<typename... Tail> | |
| void | start_profiler (uint64_t kernid) |
| template<typename... Tail> | |
| void | stop_profiler (uint64_t kernid) |
| using tim::kokkosp::kokkos_bundle = typedef tim::component::user_kokkosp_bundle |
Definition at line 242 of file kokkosp.hpp.
| using tim::kokkosp::logger_t = typedef tim::component_bundle_t<project::kokkosp, kokkosp::kernel_logger*> |
Definition at line 244 of file kokkosp.hpp.
| using tim::kokkosp::memory_tracker = typedef tim::component::data_tracker<int64_t, tim::project::kokkosp> |
Definition at line 241 of file kokkosp.hpp.
| using tim::kokkosp::profiler_alloc_t = typedef tim::auto_tuple<kokkosp::memory_tracker, Tail...> |
Definition at line 254 of file kokkosp.hpp.
| using tim::kokkosp::profiler_index_map_t = typedef std::unordered_map<uint64_t, profiler_t<Tail...> > |
Definition at line 266 of file kokkosp.hpp.
| using tim::kokkosp::profiler_memory_map_t = typedef std::unordered_map<string_view_t, std::unordered_map<string_view_t, profiler_t<Tail...> >> |
Definition at line 261 of file kokkosp.hpp.
| using tim::kokkosp::profiler_section_map_t = typedef std::unordered_map<uint64_t, profiler_section_t<Tail...> > |
Definition at line 269 of file kokkosp.hpp.
| using tim::kokkosp::profiler_section_t = typedef std::tuple<std::string, profiler_t<Tail...> > |
Definition at line 251 of file kokkosp.hpp.
| using tim::kokkosp::profiler_stack_t = typedef std::vector<profiler_t<Tail...> > |
Definition at line 258 of file kokkosp.hpp.
| using tim::kokkosp::profiler_t = typedef tim::component_bundle_t<project::kokkosp, kokkosp::memory_tracker, Tail...> |
Definition at line 247 of file kokkosp.hpp.
| anonymous enum |
| Enumerator | |
|---|---|
| NSPACES | |
Definition at line 85 of file kokkosp.hpp.
| enum tim::kokkosp::Space |
|
inline |
Definition at line 187 of file kokkosp.hpp.
References get_cleanup(), and get_cleanup_mutex().
Referenced by kokkosp_finalize_library().
|
inline |
Definition at line 320 of file kokkosp.hpp.
References get_profiler_index_map().
|
inline |
Definition at line 329 of file kokkosp.hpp.
References get_profiler_index_map().
|
inline |
Definition at line 139 of file kokkosp.hpp.
Referenced by cleanup(), get_static(), and get_tl_static().
|
inline |
Definition at line 130 of file kokkosp.hpp.
Referenced by cleanup(), get_static(), and get_tl_static().
|
inline |
Definition at line 275 of file kokkosp.hpp.
References get_tl_static().
Referenced by create_profiler(), destroy_profiler(), start_profiler(), and stop_profiler().
|
inline |
Definition at line 293 of file kokkosp.hpp.
References get_tl_static().
Referenced by get_profiler_memory_map().
|
inline |
Definition at line 302 of file kokkosp.hpp.
References get_profiler_memory_map().
|
inline |
Definition at line 284 of file kokkosp.hpp.
References get_tl_static().
|
inline |
Definition at line 311 of file kokkosp.hpp.
References get_tl_static().
|
inline |
|
inline |
|
inline |
Definition at line 169 of file kokkosp.hpp.
References tim::consume_parameters(), get_cleanup(), and get_cleanup_mutex().
|
inline |
Definition at line 149 of file kokkosp.hpp.
References tim::consume_parameters(), get_cleanup(), and get_cleanup_mutex().
Referenced by get_profiler_index_map(), get_profiler_memory_map(), get_profiler_section_map(), and get_profiler_stack().
|
inline |
Definition at line 121 of file kokkosp.hpp.
Referenced by kokkosp_begin_fence(), kokkosp_begin_parallel_for(), kokkosp_begin_parallel_reduce(), kokkosp_begin_parallel_scan(), and kokkosp_create_profile_section().
|
inline |
Definition at line 340 of file kokkosp.hpp.
References tim::at(), and get_profiler_index_map().
|
inline |