Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Documentation Request] #17646

Open
ookkeeeee opened this issue Sep 21, 2023 · 3 comments
Open

[Documentation Request] #17646

ookkeeeee opened this issue Sep 21, 2023 · 3 comments
Labels
stale issues that have not been addressed in a while; categorized by a bot

Comments

@ookkeeeee
Copy link

ookkeeeee commented Sep 21, 2023

[Enter feedback here]

Hello. I am a student who is learning the process of profiling a model through onnx runtime.
I received the result as a json format file through the method, but I can't interpret it

In particular, there was no information that could be obtained even if Googling was performed on the lower label of "thread_scheduling_stats". I'd appreciate it if you could explain this in detail.

Below is the result of the profiling I received.

[ {"cat" : "Session","pid" :21716,"tid" :7292,"dur" :3623,"ts" :27,"ph" : "X","name" :"model_loading_uri","args" : {}}, {"cat" : "Session","pid" :21716,"tid" :7292,"dur" :4422,"ts" :3690,"ph" : "X","name" :"session_initialization","args" : {}}, {"cat" : "Node","pid" :21716,"tid" :7292,"dur" :2,"ts" :9484,"ph" : "X","name" :"/Conv_fence_before","args" : {"op_name" : "Conv"}}, {"cat" : "Node","pid" :21716,"tid" :7292,"dur" :1299,"ts" :9489,"ph" : "X","name" :"/Conv_kernel_time","args" : {"parameter_size" : "20040","provider" : "CPUExecutionProvider","op_name" : "Conv","input_type_shape" : [{"float":[10,100,100]},{"float":[10,100,5]},{"float":[10]}],"node_index" : "0","output_type_shape" : [{"float":[10,10,98]}],"activation_size" : "400000","output_size" : "39200","thread_scheduling_stats" : {"main_thread": {"thread_pool_name": "session-1-intra-op", "thread_id": "7292", "block_size": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "core": 51, "Distribution": 16, "DistributionEnqueue": 0, "Run": 385, "Wait": 753, "WaitRevoke": 6}, "sub_threads": {"27448": {"num_run": 10, "core": 3},"24384": {"num_run": 10, "core": 5},"4984": {"num_run": 10, "core": 7},"25304": {"num_run": 4, "core": 8},"5896": {"num_run": 3, "core": 11},"17356": {"num_run": 10, "core": 12},"18088": {"num_run": 0, "core": -1},"17400": {"num_run": 0, "core": -1},"0": {"num_run": 0, "core": -1},"26228": {"num_run": 0, "core": -1},"12916": {"num_run": 0, "core": -1},"0": {"num_run": 0, "core": -1},"22788": {"num_run": 0, "core": -1},"20256": {"num_run": 0, "core": -1},"4804": {"num_run": 0, "core": -1},"25112": {"num_run": 0, "core": -1},"4944": {"num_run": 0, "core": -1},"22036": {"num_run": 0, "core": -1},"4908": {"num_run": 0, "core": -1},"2136": {"num_run": 0, "core": -1},"9520": {"num_run": 0, "core": -1},"19552": {"num_run": 0, "core": -1},"12744": {"num_run": 0, "core": -1},"4832": {"num_run": 0, "core": -1},"0": {"num_run": 0, "core": -1}}}}}, {"cat" : "Node","pid" :21716,"tid" :7292,"dur" :0,"ts" :10799,"ph" : "X","name" :"/Conv_fence_after","args" : {"op_name" : "Conv"}}, {"cat" : "Session","pid" :21716,"tid" :7292,"dur" :1329,"ts" :9478,"ph" : "X","name" :"SequentialExecutor::Execute","args" : {}}, {"cat" : "Session","pid" :21716,"tid" :7292,"dur" :1379,"ts" :9435,"ph" : "X","name" :"model_run","args" : {}} ]

This is the result of profiling the process of inputting data into one layer of conv1d and forwarding it.

thank you for read.

Document Details

@mszhanyi
Copy link
Contributor

  1. save the json to one file, for example, aa.json.
  2. open chrome, input chrome://traceing in the address bar and load the aa.json
    https://www.chromium.org/developers/how-tos/trace-event-profiling-tool/
  3. Use a oneline json parser to read the json snippet. http://json.parser.online.fr/

@ookkeeeee
Copy link
Author

Thank you for your reply.

Thanks to your reply, I got some hint on the profiling result.

But what I ultimately want to know is what labels under "thread_scheduling_stats" clearly mean, such as "block_size," "core," "Distribution" and "DistributionEnqueue."

Thank you again for your answer and I hope you have a good day.

@github-actions
Copy link
Contributor

This issue has been automatically marked as stale due to inactivity and will be closed in 7 days if no further activity occurs. If further support is needed, please provide an update and/or more details.

@github-actions github-actions bot added the stale issues that have not been addressed in a while; categorized by a bot label Oct 29, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
stale issues that have not been addressed in a while; categorized by a bot
Projects
None yet
Development

No branches or pull requests

2 participants