Auditor that uses NVTX to annotate ranges and incidents for profiling with NVIDIA tools.
More...
|
| StatusCode | initialize () override |
| | Initialize the auditor and register for all available incidents if the Incident service exists.
|
| StatusCode | finalize () override |
| | Finalize the auditor, releasing the NVTX domain.
|
| void | handle (const Incident &incident) override |
| | Handle an incident by annotating it with an NVTX marker.
|
| std::string | make_key (std::string const &event, std::string const &caller, EventContext const &ctx) const |
| | Helper to create an identifier key for storing an associated range in the map.
|
| std::string | make_label (std::string const &event, std::string const &caller) const |
| | Helper to create a label for the audited event.
|
| nvtxRangeId_t | start_range (std::string const &label, EventContext const &ctx) |
| | Start an NVTX range for the audited event.
|
| void | before (std::string const &event, std::string const &caller, EventContext const &ctx) override |
| | Handle 'before' audit for given event by starting an associated NVTX range.
|
| void | after (std::string const &event, std::string const &caller, EventContext const &ctx, StatusCode const &=StatusCode::SUCCESS) override |
| | Handle 'after' audit for given event by ending the associated NVTX range.
|
|
| using | base_class |
| | Typedef to this class.
|
| using | extend_interfaces_base |
| | Typedef to the base of this class.
|
| using | Factory = Gaudi::PluginService::Factory<IAuditor*( const std::string&, ISvcLocator* )> |
| using | PropertyHolderImpl |
| | Typedef used to refer to this class from derived classes, as in.
|
| using | base_class |
| using | ext_iids |
| | take union of the ext_iids of all Interfaces...
|
| void const * | i_cast (const InterfaceID &tid) const override |
| | Implementation of IInterface::i_cast.
|
| StatusCode | queryInterface (const InterfaceID &ti, void **pp) override |
| | Implementation of IInterface::queryInterface.
|
| std::vector< std::string > | getInterfaceNames () const override |
| | Implementation of IInterface::getInterfaceNames.
|
| | Auditor (std::string name, ISvcLocator *svcloc) |
| | Auditor (const Auditor &a)=delete |
| Auditor & | operator= (const Auditor &rhs)=delete |
| StatusCode | sysInitialize () override |
| StatusCode | sysFinalize () override |
| void | before (std::string const &, std::string const &, EventContext const &) override |
| void | after (std::string const &, std::string const &, EventContext const &, StatusCode const &=StatusCode::SUCCESS) override |
| const std::string & | name () const override |
| bool | isEnabled () const override |
| SmartIF< ISvcLocator > & | serviceLocator () const override |
| | The standard service locator.
|
| template<class T = IService> |
| SmartIF< T > | service (std::string_view name, bool createIf=false) const |
| | Access a service by name, creating it if it doesn't already exist.
|
| StatusCode | setProperty (const Gaudi::Details::PropertyBase &p) |
| | Set the property from a property.
|
| StatusCode | setProperty (const std::string &name, const char *v) |
| | Special case for string literals.
|
| StatusCode | setProperty (const std::string &name, const std::string &v) |
| | Special case for std::string.
|
| StatusCode | setProperty (const std::string &name, const TYPE &value) |
| | set the property form the value
|
| | PropertyHolder ()=default |
| Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Details::PropertyBase &prop) |
| | Declare a property.
|
| Gaudi::Details::PropertyBase * | declareRemoteProperty (const std::string &name, IProperty *rsvc, const std::string &rname="") |
| | Declare a remote property.
|
| StatusCode | setPropertyRepr (const std::string &n, const std::string &r) override |
| | set the property from name and value string representation
|
| StatusCode | getProperty (Gaudi::Details::PropertyBase *p) const override |
| | get the property
|
| const std::vector< Gaudi::Details::PropertyBase * > & | getProperties () const override |
| | get all properties
|
| bool | hasProperty (std::string_view name) const override |
| | Return true if we have a property with the given name.
|
| Gaudi::Details::PropertyBase * | property (std::string_view name) const |
| | \fixme property and bindPropertiesTo should be protected
|
| void | bindPropertiesTo (Gaudi::Interfaces::IOptionsSvc &optsSvc) |
| PropertyHolder & | operator= (const PropertyHolder &)=delete |
| virtual | ~CommonMessagingBase ()=default |
| | Virtual destructor.
|
| const SmartIF< IMessageSvc > & | msgSvc () const |
| | The standard message service.
|
| MsgStream & | msgStream () const |
| | Return an uninitialized MsgStream.
|
| MsgStream & | msgStream (const MSG::Level level) const |
| | Predefined configurable message stream for the efficient printouts.
|
| MsgStream & | always () const |
| | shortcut for the method msgStream(MSG::ALWAYS)
|
| MsgStream & | fatal () const |
| | shortcut for the method msgStream(MSG::FATAL)
|
| MsgStream & | err () const |
| | shortcut for the method msgStream(MSG::ERROR)
|
| MsgStream & | error () const |
| | shortcut for the method msgStream(MSG::ERROR)
|
| MsgStream & | warning () const |
| | shortcut for the method msgStream(MSG::WARNING)
|
| MsgStream & | info () const |
| | shortcut for the method msgStream(MSG::INFO)
|
| MsgStream & | debug () const |
| | shortcut for the method msgStream(MSG::DEBUG)
|
| MsgStream & | verbose () const |
| | shortcut for the method msgStream(MSG::VERBOSE)
|
| MsgStream & | msg () const |
| | shortcut for the method msgStream(MSG::INFO)
|
| MSG::Level | msgLevel () const |
| | get the cached level (originally extracted from the embedded MsgStream)
|
| bool | msgLevel (MSG::Level lvl) const |
| | get the output level from the embedded MsgStream
|
| MSG::Level | setUpMessaging () const override final |
| | Set up local caches.
|
| MSG::Level | resetMessaging () |
| | Reinitialize internal states.
|
| void | updateMsgStreamOutputLevel (int level) |
| | Update the output level of the cached MsgStream.
|
Auditor that uses NVTX to annotate ranges and incidents for profiling with NVIDIA tools.
This auditor creates NVTX ranges around audited events and marks incidents with NVTX markers. The ranges and markers are created in a custom "Gaudi" NVTX domain. Ranges and markers related to events are annotated with event number in the payload, colored based on an event number and put in categories based on event slot. Ranges and markers not related to events are put into the default category with no payload and default color.
- Author
- Mateusz Jakub Fila
Definition at line 54 of file NVTXAuditor.cpp.