onnxruntime
50f07e27 - [QNN-EP] Enable Optrace from QNN into QNN EP (#25987)

Commit
60 days ago
[QNN-EP] Enable Optrace from QNN into QNN EP (#25987) ### Description - Add optrace profiling level - Add profiling to compose graph - Add new qnn system profile serializer class - Add API versioning safeguards - Use current behavior for QNN API < 2.29 - Use QNN System Profile API for QNN API >= 2.29 - Check for log file at end of profiling unit test - Ensure system libs are loaded when profiling is enabled ### Motivation and Context Adds optrace level profiling for debugging purposes. Utilizes new QNN System Profile API to generate a binary log file compatible with qnn-profile-viewer executable for all profiling levels when QNN API is >= 2.29 (i.e. QAIRT 2.39 or later). Current behavior will still persist regardless of QNN API version (i.e. a .csv file will still be generated). The binary log file naming will be based on the existing profiling_file_path EP option. The value of profiling_file_path is expected to be .csv as before, and the binary log name will remove ".csv" and append "_qnn.log". For example, if profiling_file_path is set to "foo.csv", then both "foo.csv" and "foo_qnn.log" will be generated. With optrace enablement, qnn-profile-viewer can then be used to generate and view chrometraces with a user-friendly UI. For more details, see: https://docs.qualcomm.com/bundle/publicresource/topics/80-63442-50/htp_backend.html#qnn-htp-optrace-profiling https://docs.qualcomm.com/bundle/publicresource/topics/80-63442-50/htp_backend.html#qnn-htp-analysis-summary-qhas- --------- Co-authored-by: Calvin Nguyen <calvnguy@qti.qualcomm.com>
Author
Parents
Loading