File tree Expand file tree Collapse file tree 3 files changed +21
-3
lines changed Expand file tree Collapse file tree 3 files changed +21
-3
lines changed Original file line number Diff line number Diff line change 8
8
9
9
#pragma once
10
10
11
+ #include < executorch/runtime/core/event_tracer.h>
12
+
11
13
namespace torch {
12
14
namespace executor {
13
15
@@ -16,7 +18,23 @@ namespace executor {
16
18
* The current plan is to add temp allocator and event tracer (for profiling) as
17
19
* part of the runtime context.
18
20
*/
19
- class BackendExecutionContext final {};
21
+ class BackendExecutionContext final {
22
+ public:
23
+ BackendExecutionContext (EventTracer* event_tracer = nullptr )
24
+ : event_tracer_(event_tracer) {}
25
+
26
+ /* *
27
+ * Returns a pointer to an instance of EventTracer to do profiling/debugging
28
+ * logging inside the delegate backend. Users will need access to this pointer
29
+ * to use any of the event tracer APIs.
30
+ */
31
+ EventTracer* event_tracer () {
32
+ return event_tracer_;
33
+ }
34
+
35
+ private:
36
+ EventTracer* event_tracer_ = nullptr ;
37
+ };
20
38
21
39
} // namespace executor
22
40
} // namespace torch
Original file line number Diff line number Diff line change @@ -952,7 +952,7 @@ Error Method::execute_instruction() {
952
952
delegate_idx,
953
953
n_delegate_,
954
954
step_state_.instr_idx );
955
- BackendExecutionContext backend_execution_context;
955
+ BackendExecutionContext backend_execution_context (event_tracer_) ;
956
956
Error err = delegates_[delegate_idx].Execute (
957
957
backend_execution_context,
958
958
chain.argument_lists_ [step_state_.instr_idx ].data ());
Original file line number Diff line number Diff line change @@ -65,7 +65,7 @@ class KernelRuntimeContext {
65
65
// TODO(T147221312): Add a way to resize a tensor.
66
66
67
67
private:
68
- EventTracer* event_tracer_;
68
+ EventTracer* event_tracer_ = nullptr ;
69
69
Error failure_state_ = Error::Ok;
70
70
};
71
71
You can’t perform that action at this time.
0 commit comments