mirror of
https://github.com/saymrwulf/onnxruntime.git
synced 2026-05-17 21:10:43 +00:00
### Description
Run clang-format in CI. Formatted all c/c++, objective-c/c++ files.
Excluded
```
'onnxruntime/core/mlas/**',
'onnxruntime/contrib_ops/cuda/bert/tensorrt_fused_multihead_attention/**',
```
because they contain assembly or is data heavy
### Motivation and Context
Coding style consistency
68 lines
2.4 KiB
C++
68 lines
2.4 KiB
C++
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|
// Licensed under the MIT License.
|
|
|
|
#pragma once
|
|
|
|
#include <string>
|
|
#include <vector>
|
|
#include <unordered_map>
|
|
|
|
#include "core/common/status.h"
|
|
#include "core/common/common.h"
|
|
|
|
struct _LUID;
|
|
using LUID = _LUID;
|
|
|
|
namespace onnxruntime {
|
|
|
|
/**
|
|
* Configuration information for a session.
|
|
* An interface used by the onnxruntime implementation to
|
|
* access operating system functionality for telemetry
|
|
*
|
|
* look at env.h and the Env objection which is the activation factory
|
|
* for telemetry instances
|
|
*
|
|
* All Telemetry implementations are safe for concurrent access from
|
|
* multiple threads without any external synchronization.
|
|
*/
|
|
class Telemetry {
|
|
public:
|
|
// don't create these, use Env::GetTelemetryProvider() instead
|
|
// this constructor is made public so that other platform Env providers can
|
|
// use this base class as a "stub" implementation
|
|
Telemetry() = default;
|
|
virtual ~Telemetry() = default;
|
|
|
|
virtual void EnableTelemetryEvents() const;
|
|
virtual void DisableTelemetryEvents() const;
|
|
virtual void SetLanguageProjection(uint32_t projection) const;
|
|
|
|
virtual void LogProcessInfo() const;
|
|
|
|
virtual void LogSessionCreationStart() const;
|
|
|
|
virtual void LogEvaluationStop() const;
|
|
|
|
virtual void LogEvaluationStart() const;
|
|
|
|
virtual void LogSessionCreation(uint32_t session_id, int64_t ir_version, const std::string& model_producer_name,
|
|
const std::string& model_producer_version, const std::string& model_domain,
|
|
const std::unordered_map<std::string, int>& domain_to_version_map,
|
|
const std::string& model_graph_name,
|
|
const std::unordered_map<std::string, std::string>& model_metadata,
|
|
const std::string& loadedFrom, const std::vector<std::string>& execution_provider_ids,
|
|
bool use_fp16) const;
|
|
|
|
virtual void LogRuntimeError(uint32_t session_id, const common::Status& status, const char* file,
|
|
const char* function, uint32_t line) const;
|
|
|
|
virtual void LogRuntimePerf(uint32_t session_id, uint32_t total_runs_since_last, int64_t total_run_duration_since_last) const;
|
|
|
|
virtual void LogExecutionProviderEvent(LUID* adapterLuid) const;
|
|
|
|
private:
|
|
ORT_DISALLOW_COPY_ASSIGNMENT_AND_MOVE(Telemetry);
|
|
};
|
|
|
|
} // namespace onnxruntime
|