How to profile WebRTC performance? Get the function run time and generate call graph

89 views
Skip to first unread message

陳宣甫

unread,
Sep 13, 2022, 10:30:53 PM9/13/22
to discuss-webrtc
Dear all,
Call graph can be dynamic or static.
How to get functions run time and generate call graph from WebRTC Native C++ example peerconnection?
I use tceetree to get the static call graph from WebRTC project.
filename:webrtc_src_with_filename.svg

I try callgrind part of Valgrind to get the dynamic call graph.
When running peerconnection_client get Fatal error.
the peerconnection example drop and not show webcam screen.
command: $ valgrind --tool=callgrind ./peerconnection_client

error:
# Fatal error in: ../../system_wrappers/source/denormal_disabler.cc, line 82
# last system error: 1
# Check failed: !DenormalsEnabled(ReadStatusWord())

Could someone help me please?
Best regard and thanks.

webrtc_src_with_filename.svg

V I

unread,
Sep 13, 2022, 11:19:48 PM9/13/22
to discuss...@googlegroups.com
It looks like a crash. Why don't you use gdb on the core dump to see the call stack? ulimit -c unlimited / [maybe disable apport] / run peerconnection_client / gdb peerconnection_client core.12345 / bt full

--

---
You received this message because you are subscribed to the Google Groups "discuss-webrtc" group.
To unsubscribe from this group and stop receiving emails from it, send an email to discuss-webrt...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/discuss-webrtc/51d9be17-dcbc-4cdb-a984-4904d71d7999n%40googlegroups.com.

陳宣甫

unread,
Sep 14, 2022, 11:18:01 PM9/14/22
to discuss-webrtc
Thank for reply.

Is it  the commnad like the following ?
$ gdb valgrind --tool=callgrind ./peerconnection_client 

use gdb command to debug?
like next, backtrace(bt), next(n) to know to crash reason?

Best regard and thanks.

witaly...@gmail.com 在 2022年9月14日 星期三上午11:19:48 [UTC+8] 的信中寫道:
Reply all
Reply to author
Forward
0 new messages