Skip to content

Commit 1db2f33

Browse files
Gasoonjiafacebook-github-bot
authored andcommitted
removed unnecessary datasink checks (#9211)
Summary: This diff removes unnecessary datasink checks in etdump to avoid false alarm when user dumping debug data. Differential Revision: D71081481
1 parent b8c3ee9 commit 1db2f33

File tree

2 files changed

+19
-21
lines changed

2 files changed

+19
-21
lines changed

devtools/etdump/etdump_flatcc.cpp

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -351,10 +351,6 @@ void ETDumpGen::log_intermediate_output_delegate_helper(
351351
(name == nullptr) ^ (delegate_debug_index == -1),
352352
"Only name or delegate_debug_index can be valid. Check DelegateMappingBuilder documentation for more details.");
353353

354-
ET_CHECK_MSG(
355-
data_sink_,
356-
"Must pre-set data sink before logging evalue with set_data_sink() or set_debug_buffer()\n");
357-
358354
check_ready_to_add_events();
359355
int64_t string_id = name != nullptr ? create_string_entry(name) : -1;
360356

@@ -515,8 +511,6 @@ void ETDumpGen::set_data_sink(DataSinkBase* data_sink) {
515511
}
516512

517513
void ETDumpGen::log_evalue(const EValue& evalue, LoggedEValueType evalue_type) {
518-
ET_CHECK_MSG(data_sink_, "Must set data sink before logging evalue\n");
519-
520514
check_ready_to_add_events();
521515

522516
etdump_DebugEvent_start(builder_);
@@ -650,7 +644,8 @@ long ETDumpGen::write_tensor_or_raise_error(Tensor tensor) {
650644
return static_cast<size_t>(-1);
651645
}
652646

653-
ET_CHECK_MSG(data_sink_, "Must set data sink before writing data");
647+
ET_CHECK_MSG(
648+
data_sink_, "Must set data sink before writing tensor-like data");
654649
Result<size_t> ret =
655650
data_sink_->write(tensor.const_data_ptr(), tensor.nbytes());
656651
ET_CHECK_MSG(

devtools/etdump/tests/etdump_test.cpp

Lines changed: 17 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -179,7 +179,7 @@ TEST_F(ProfilerETDumpTest, DebugEvent) {
179179
for (size_t i = 0; i < 2; i++) {
180180
for (size_t j = 0; j < 2; j++) {
181181
TensorFactory<ScalarType::Float> tf;
182-
EValue evalue(tf.ones({3, 2}));
182+
EValue evalue_tensor(tf.ones({3, 2}));
183183

184184
etdump_gen[i]->create_event_block("test_block");
185185

@@ -188,18 +188,6 @@ TEST_F(ProfilerETDumpTest, DebugEvent) {
188188

189189
auto buffer_data_sink = BufferDataSink::create(ptr, 2048);
190190

191-
// using span to record debug data
192-
if (j == 0) {
193-
etdump_gen[i]->set_debug_buffer(buffer);
194-
}
195-
// using data sink to record debug data
196-
else {
197-
etdump_gen[i]->set_data_sink(&buffer_data_sink.get());
198-
}
199-
200-
etdump_gen[i]->log_evalue(evalue);
201-
etdump_gen[i]->log_evalue(evalue, LoggedEValueType::kProgramOutput);
202-
203191
EValue evalue_int((int64_t)5);
204192
etdump_gen[i]->log_evalue(evalue_int);
205193

@@ -211,6 +199,21 @@ TEST_F(ProfilerETDumpTest, DebugEvent) {
211199

212200
etdump_gen[i]->log_evalue(evalue_bool);
213201

202+
// using span to record debug data
203+
if (j == 0) {
204+
ET_EXPECT_DEATH(
205+
etdump_gen[i]->log_evalue(evalue_tensor),
206+
"Must set data sink before writing tensor-like data");
207+
etdump_gen[i]->set_debug_buffer(buffer);
208+
}
209+
// using data sink to record debug data
210+
else {
211+
etdump_gen[i]->set_data_sink(&buffer_data_sink.get());
212+
}
213+
etdump_gen[i]->log_evalue(evalue_tensor);
214+
etdump_gen[i]->log_evalue(
215+
evalue_tensor, LoggedEValueType::kProgramOutput);
216+
214217
free(ptr);
215218
}
216219
}
@@ -487,7 +490,7 @@ TEST_F(ProfilerETDumpTest, LogDelegateIntermediateOutput) {
487490
"test_event_tensor",
488491
static_cast<torch::executor::DebugHandle>(-1),
489492
tf.ones({3, 2})),
490-
"Must pre-set data sink before logging evalue with set_data_sink");
493+
"Must set data sink before writing tensor-like data");
491494
etdump_gen[i]->set_debug_buffer(buffer);
492495
}
493496
// using data sink to record debug data

0 commit comments

Comments
 (0)