Add traceme for ExecutorState::Process.

PiperOrigin-RevId: 274040387
This commit is contained in:
A. Unique TensorFlower 2019-10-10 14:32:21 -07:00 committed by TensorFlower Gardener
parent 845b6f7221
commit 76723be42c
4 changed files with 22 additions and 13 deletions
tensorflow
core/common_runtime
python

View File

@ -648,7 +648,7 @@ TEST_F(DirectSessionMinusAXTest, RunSimpleNetworkWithOpts) {
// Prepares RunOptions and RunMetadata
RunOptions run_options;
run_options.set_trace_level(RunOptions::FULL_TRACE);
run_options.set_trace_level(RunOptions::SOFTWARE_TRACE);
RunMetadata run_metadata;
EXPECT_EQ(run_metadata.step_stats().dev_stats_size(), 0);
@ -679,7 +679,7 @@ TEST_F(DirectSessionMinusAXTest, RunSimpleNetworkWithOpts_Callable) {
CallableOptions callable_options =
MakeCallableOptions({}, {y_ + ":0"}, {y_neg_});
callable_options.mutable_run_options()->set_trace_level(
RunOptions::FULL_TRACE);
RunOptions::SOFTWARE_TRACE);
TF_ASSERT_OK(session->MakeCallable(callable_options, &handle));
RunMetadata run_metadata;

View File

@ -1667,6 +1667,15 @@ bool MightTrace(const NodeItem& item,
}
void ExecutorState::Process(TaggedNode tagged_node, int64 scheduled_nsec) {
profiler::TraceMe activity(
[&] {
int64 id = step_id_;
if (step_container_ && step_container_->step_id()) {
id = step_container_->step_id();
}
return absl::StrCat("ExecutorState::Process#id=", id, "#");
},
2);
WithContext wc(context_);
TaggedNodeSeq ready;
TaggedNodeReadyQueue inline_ready;

View File

@ -393,7 +393,7 @@ class SessionTest(test_util.TensorFlowTestCase):
res = sess.run([[], tuple(), {}])
self.assertTrue(isinstance(res, list))
self.assertEquals(3, len(res))
self.assertEqual(3, len(res))
self.assertTrue(isinstance(res[0], list))
self.assertEqual(0, len(res[0]))
self.assertTrue(isinstance(res[1], tuple))
@ -403,7 +403,7 @@ class SessionTest(test_util.TensorFlowTestCase):
res = sess.run([[], tuple(), {}, a])
self.assertTrue(isinstance(res, list))
self.assertEquals(4, len(res))
self.assertEqual(4, len(res))
self.assertTrue(isinstance(res[0], list))
self.assertEqual(0, len(res[0]))
self.assertTrue(isinstance(res[1], tuple))
@ -1231,13 +1231,13 @@ class SessionTest(test_util.TensorFlowTestCase):
versions.GRAPH_DEF_VERSION_MIN_CONSUMER),
sess.graph_def)
c = constant_op.constant(5.0, name='c')
self.assertEquals(len(sess.graph_def.node), 1)
self.assertEqual(len(sess.graph_def.node), 1)
d = constant_op.constant(6.0, name='d')
self.assertEquals(len(sess.graph_def.node), 2)
self.assertEqual(len(sess.graph_def.node), 2)
self.assertAllEqual(c.eval(), 5.0)
self.assertAllEqual(d.eval(), 6.0)
e = constant_op.constant(7.0, name='e')
self.assertEquals(len(sess.graph_def.node), 3)
self.assertEqual(len(sess.graph_def.node), 3)
self.assertAllEqual(e.eval(), 7.0)
def testUseAfterClose(self):
@ -1666,7 +1666,7 @@ class SessionTest(test_util.TensorFlowTestCase):
def testPerStepTrace(self):
run_options = config_pb2.RunOptions(
trace_level=config_pb2.RunOptions.FULL_TRACE)
trace_level=config_pb2.RunOptions.SOFTWARE_TRACE)
run_metadata = config_pb2.RunMetadata()
with ops.device('/cpu:0'):
@ -1683,11 +1683,11 @@ class SessionTest(test_util.TensorFlowTestCase):
run_metadata=run_metadata)
self.assertTrue(run_metadata.HasField('step_stats'))
self.assertEquals(len(run_metadata.step_stats.dev_stats), 1)
self.assertEqual(len(run_metadata.step_stats.dev_stats), 1)
def testRunOptionsRunMetadata(self):
run_options = config_pb2.RunOptions(
trace_level=config_pb2.RunOptions.FULL_TRACE)
trace_level=config_pb2.RunOptions.SOFTWARE_TRACE)
run_metadata = config_pb2.RunMetadata()
with ops.device('/cpu:0'):
@ -1708,7 +1708,7 @@ class SessionTest(test_util.TensorFlowTestCase):
run_metadata=run_metadata)
self.assertTrue(run_metadata.HasField('step_stats'))
self.assertEquals(len(run_metadata.step_stats.dev_stats), 1)
self.assertEqual(len(run_metadata.step_stats.dev_stats), 1)
def testFeedShapeCompatibility(self):
with session.Session() as sess:

View File

@ -79,7 +79,7 @@ def _run_model():
opts['output'] = 'none'
_ = sess.run(y,
options=config_pb2.RunOptions(
trace_level=config_pb2.RunOptions.FULL_TRACE),
trace_level=config_pb2.RunOptions.SOFTWARE_TRACE),
run_metadata=run_metadata)
tfprof_node = model_analyzer.profile(
sess.graph,
@ -101,7 +101,7 @@ def _run_loop_model():
run_meta = config_pb2.RunMetadata()
_ = sess.run(x,
options=config_pb2.RunOptions(
trace_level=config_pb2.RunOptions.FULL_TRACE),
trace_level=config_pb2.RunOptions.SOFTWARE_TRACE),
run_metadata=run_meta)
opts = builder.time_and_memory()