871abdcee84b187dcc00a257e7239858576c46dd
2 Incheckningar
| Upphovsman | SHA1 | Meddelande | Datum | |
|---|---|---|---|---|
|
|
55f2dabbb3 |
Generalized updates (#174)
- include/rocprofiler/agent.h
- move rocprofiler_dim3_t
- include/rocprofiler/buffer_tracing.h
- size fields
- update kernel dispatch record
- include/rocprofiler/callback_tracing.h
- remove rocprofiler_callback_tracing_code_object_unload_data_t
- remove rocprofiler_callback_tracing_code_object_register_host_kernel_symbol_data_t
- include/rocprofiler/fwd.h
- added ROCPROFILER_STATUS_ERROR_CONTEXT_CONFLICT
- remove ROCPROFILER_CALLBACK_TRACING_CODE_OBJECT_UNLOAD
- remove ROCPROFILER_CALLBACK_TRACING_CODE_OBJECT_DEVICE_KERNEL_SYMBOL_UNREGISTER
- add rocprofiler_kernel_id_t typedef
- add rocprofiler_dim3_t (moved from agent.h)
- lib/common/synchronized.hpp
- rlock/wlock return decltype(auto)
- separate prototype from definition
- lib/common/utility.{hpp,cpp}
- timestamp functions replicating HSA implementation(s)
- init_public_api_struct for setting size field and ensuring certain type traits
- simplified static_cleanup_wrapper
- separate prototype from definition in active_capacity_gate
- lib/rocprofiler/agent.cpp
- tweak get_rocprofiler_agent impl
- lib/rocprofiler/buffer.cpp
- fix buffer message log level
- lib/rocprofiler/context.cpp
- use new paradigm for getting active contexts
- lib/rocprofiler/internal_threading.hpp
- update to simplified static_cleanup_wrapper implementation
- lib/rocprofiler/registration.cpp
- fix deactivating contexts
- lib/rocprofiler/rocprofiler.cpp
- status string for context conflict
- lib/rocprofiler/context/context.*
- correlation_id struct
- new get_active_contexts paradigm
- lib/rocprofiler/counters/core.*
- rocprofiler_packet union
- tweak start/stop context to accept pointer instead of handle
- lib/rocprofiler/counters/dimensions.cpp
- update to new get_rocp_agent() return type
- lib/rocprofiler/hsa/hsa.*
- update to new get_active_contexts paradigm
- update to new correlation id implementation
- guard against hsa.def.cpp direct compilation
- lib/rocprofiler/hsa/queue_controller.*
- update to change in get_rocp_agent return type
- consistent aliases
- lookup function for getting queue pointer from hsa queue id
- lib/rocprofiler/hsa/queue.*
- rocprofiler_packet
- extend queue_info_session_t
- lib/rocprofiler/tests/registration.cpp
- improve diagnostic on perf check for rocprofiler_lib.callback_registration_lambda_with_result
|
||
|
|
63775f241a |
Evaluation portion for metrics (#123)
* EvaluateAST and validation of RawAST * Adding MetricDimension class and concepts * set_dimensions() and improved ValidateRawAST() * source formatting (clang-format v11) (#124) Co-authored-by: bwelton <bwelton@users.noreply.github.com> * Addressing 1st round of review comments * Modified the parser production rules to support the right syntax for REDUCE and SELECT derived metric expressions * changes to raw_ast.hpp and fmt::format() * Parser tests updated to support corrected REDUCE and SELECT syntax * changes to EvaluateAST::set_dimensions() and other dimension related code changes * Added a test for EvaluateAST::evaluate() to test basic arithmetic on EvaluateAST * Format source code (via clang-format v11) on sauverma/evaluate-ast (#146) * source formatting (clang-format v11) * Add dimension information to counter record Restructures counter records to have the following design: rocprofiler_record_id_t which is an int64_t that encodes both the counter id and dimension information for the record. The first 16 bits are reserved for the counter id while the last 48 are split among the dimensions specified in rocprofiler_dimension_t (currently 8 bits per dimension). Each of the 8 bits for the dimension stores the dimension value for that dimension for this record (i.e. a value of 8 on dimension XCC would denote XCC[8] for the counter). The split among the dimensions will automatically adjust as dimensions are added or removed. The record also contains a union of {int64_t hw_counter, double derived_counter} to specify the value of the record at rocprofiler_record_id_t. int64_t denotes a physical hardware counter that has integer types while the double is used for derived counters (which type this counters values are needs to be queried separately). * Integration of new id type + other fixes --------- Co-authored-by: sauverma93 <sauverma93@users.noreply.github.com> Co-authored-by: Benjamin Welton <bewelton@amd.com> * Fixed sissues with reduce() implementation and added a test for reduce() * Updated parser syntax for reduce() and updated the parser test. Disabled the test for select() * Build warning fixes * Modifications to support fetching xcc/etc info from agent * Initial plumbing working for single counters, cleanup+tests still needed * Remove string comparison from reduce ops * source formatting (clang-format v11) (#163) Co-authored-by: bwelton <bwelton@users.noreply.github.com> * cmake formatting (cmake-format) (#164) Co-authored-by: bwelton <bwelton@users.noreply.github.com> * source formatting (clang-format v11) (#171) Co-authored-by: bwelton <bwelton@users.noreply.github.com> * Merged with master * source formatting (clang-format v11) (#172) Co-authored-by: bwelton <bwelton@users.noreply.github.com> * source formatting (clang-format v11) (#173) Co-authored-by: bwelton <bwelton@users.noreply.github.com> * Test fix --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: bwelton <bwelton@users.noreply.github.com> Co-authored-by: sauverma93 <sauverma93@users.noreply.github.com> Co-authored-by: Benjamin Welton <bewelton@amd.com> |