Currently profile writer for Chrome tracing, md table and snpe does not show a model with multiple subgraphs (executors).
We also need to profile when an app runs multiple sessions at the same time.
Let's ~make ChromeTracing handle~ profile cases with multiple subgraphs and multiple sessions.
Draft: #4903
Sample screen with the following model:
y=neg(0)
while less ( y, 100 )
y = add (y, 10)
z = cos(y)
You can see 3 subgraphs: primary, while_condition, while_body
subgraphnegcoscomparisonadd
zoom in:

I hope we have a subgraph index rather than the object's pointer address, later on. I guess there is no way to get the subgraph index info for now.
Putting the exact subgraph index seems not easy
Graph objectMaybe what we need is to _distinguish_ subgraphs in human readable way?
For now we could use something like Subgraph A, Subgraph B, etc.
Maybe what we need is to distinguish subgraphs in human readable way?
FYI, Subgraphs in tflite and circle has human readable text name.
Now shape info was added.
When is this necessary?

All merged.
I'd like to leave how I have tested:
m.log)m.log, m.log.table.md m.log.chrome.jsontests/scripts/models/cache/mobilenet_v1_0.25_128_float_2017_11_08/mobilenet_v1_0.25_128.tflite$ TRACE_FILEPATH=../mobilenet.log OP_SEQ_MAX_NODE=1 ./Product/out/bin/nnpackage_run --nnpackage ../mobilenet_v1_0.25_128
OP_SEQ_MAX_NODE=5$ TRACE_FILEPATH=../mobilenet.log OP_SEQ_MAX_NODE=5 ./Product/out/bin/nnpackage_run --nnpackage ../mobilenet_v1_0.25_128
(5) as postfix$ TRACE_FILEPATH=../OneOp_While_github_4783.log OP_SEQ_MAX_NODE=1 ./Product/out/unittest_standalone/nnfw_api_gtest --gtest_filter=*.OneOp_While_github_4783
$ TRACE_FILEPATH=../two_sessions_run_simple_While_model.log OP_SEQ_MAX_NODE=1 ./Product/out/unittest_standalone/nnfw_api_gtest --gtest_filter=ValidationTestTwoSessionsCreated.two_sessions_run_simple_While_model
Most helpful comment
Now shape info was added.
When is this necessary?