Skip to content

Commit 60c868b

Browse files
committed
Start profiling deligate
1 parent 593f198 commit 60c868b

File tree

7 files changed

+14
-12
lines changed

7 files changed

+14
-12
lines changed

devtools/etdump/etdump_flatcc.cpp

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -230,11 +230,12 @@ EventTracerEntry ETDumpGen::start_profiling(
230230

231231
// TODO: Update all occurrences of the ProfileEvent calls once the
232232
// EventTracerEntry struct is updated.
233-
EventTracerEntry ETDumpGen::start_profiling_delegate(
233+
Result<EventTracerEntry> ETDumpGen::start_profiling_delegate(
234234
const char* name,
235235
DelegateDebugIntId delegate_debug_index) {
236-
ET_CHECK_MSG(
236+
ET_CHECK_OR_RETURN_ERROR(
237237
(name == nullptr) ^ (delegate_debug_index == kUnsetDelegateDebugIntId),
238+
InvalidArgument,
238239
"Only name or delegate_debug_index can be valid. Check DelegateMappingBuilder documentation for more details.");
239240
check_ready_to_add_events();
240241
EventTracerEntry prof_entry;
@@ -247,7 +248,7 @@ EventTracerEntry ETDumpGen::start_profiling_delegate(
247248
? create_string_entry(name)
248249
: delegate_debug_index;
249250
prof_entry.start_time = et_pal_current_ticks();
250-
return prof_entry;
251+
return Result<EventTracerEntry>(prof_entry);
251252
}
252253

253254
void ETDumpGen::end_profiling_delegate(

devtools/etdump/etdump_flatcc.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ class ETDumpGen : public ::executorch::runtime::EventTracer {
8383
::executorch::runtime::DebugHandle debug_handle = 0) override;
8484
virtual void end_profiling(
8585
::executorch::runtime::EventTracerEntry prof_entry) override;
86-
virtual ::executorch::runtime::EventTracerEntry start_profiling_delegate(
86+
virtual Result<::executorch::runtime::EventTracerEntry> start_profiling_delegate(
8787
const char* name,
8888
DelegateDebugIntId delegate_debug_index) override;
8989
virtual void end_profiling_delegate(

devtools/etdump/tests/etdump_test.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -821,7 +821,7 @@ TEST_F(ProfilerETDumpTest, LogDelegateEvents) {
821821
etdump_gen[i]->log_profiling_delegate(
822822
nullptr, 278, 1, 2, metadata, strlen(metadata) + 1);
823823
EventTracerEntry entry = etdump_gen[i]->start_profiling_delegate(
824-
"test_event", kUnsetDelegateDebugIntId);
824+
"test_event", kUnsetDelegateDebugIntId).get();
825825
EXPECT_NE(entry.delegate_event_id_type, DelegateDebugIdType::kNone);
826826
// Event 2
827827
etdump_gen[i]->end_profiling_delegate(

docs/source/delegate-debugging.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ To log events in real-time (for example, explicitly denoting the profiling start
8989
To start an `EventTracerEntry` using `event_tracer_start_profiling_delegate`, the **Delegate Debug Identifier** (provided AOT to the `debug_handle_map`) is passed as either the name or `delegate_debug_id` argument depending on the **Delegate Debug Identifier** type (str and int respectively)
9090

9191
```c++
92-
EventTracerEntry event_tracer_start_profiling_delegate(
92+
Result<EventTracerEntry> event_tracer_start_profiling_delegate(
9393
EventTracer* event_tracer,
9494
const char* name,
9595
DebugHandle delegate_debug_id)

runtime/core/event_tracer.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -217,7 +217,7 @@ class EventTracer {
217217
* based names are used by this delegate to identify ops executed in the
218218
* backend then kUnsetDebugHandle should be passed in here.
219219
*/
220-
virtual EventTracerEntry start_profiling_delegate(
220+
virtual Result<EventTracerEntry> start_profiling_delegate(
221221
const char* name,
222222
DelegateDebugIntId delegate_debug_index) = 0;
223223

runtime/core/event_tracer_hooks_delegate.h

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,8 +46,9 @@ namespace runtime {
4646
* @param[in] delegate_debug_id The id of the delegate event. If string
4747
* based names are used by this delegate to identify ops executed in the
4848
* backend then kUnsetDebugHandle should be passed in here.
49+
4950
*/
50-
inline EventTracerEntry event_tracer_start_profiling_delegate(
51+
inline Result<EventTracerEntry> event_tracer_start_profiling_delegate(
5152
EventTracer* event_tracer,
5253
const char* name,
5354
DebugHandle delegate_debug_id) {
@@ -60,7 +61,7 @@ inline EventTracerEntry event_tracer_start_profiling_delegate(
6061
(void)delegate_debug_id;
6162
#endif
6263
// There is no active tracer; this value will be ignored.
63-
return EventTracerEntry();
64+
return Result<EventTracerEntry>(EventTracerEntry());
6465
}
6566

6667
/**

runtime/core/test/event_tracer_test.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -74,12 +74,12 @@ class DummyEventTracer : public EventTracer {
7474
return 0;
7575
}
7676

77-
EventTracerEntry start_profiling_delegate(
77+
Result<EventTracerEntry> start_profiling_delegate(
7878
const char* name,
7979
DelegateDebugIntId delegate_debug_id) override {
8080
(void)name;
8181
(void)delegate_debug_id;
82-
return EventTracerEntry();
82+
return Result<EventTracerEntry>(EventTracerEntry());
8383
}
8484

8585
void end_profiling_delegate(
@@ -236,7 +236,7 @@ TEST(TestEventTracer, SimpleEventTracerTest) {
236236
*/
237237
void RunSimpleTracerTestDelegate(EventTracer* event_tracer) {
238238
EventTracerEntry event_tracer_entry = event_tracer_start_profiling_delegate(
239-
event_tracer, "test_event", kUnsetDelegateDebugIntId);
239+
event_tracer, "test_event", kUnsetDelegateDebugIntId).get();
240240
event_tracer_end_profiling_delegate(
241241
event_tracer, event_tracer_entry, nullptr);
242242
event_tracer_start_profiling_delegate(event_tracer, nullptr, 1);

0 commit comments

Comments
 (0)