SSLClientSocketImpl::DoHandshakeLoop takes 4ms on IO thread on nexus 4 |
|
Issue descriptionI captured this trace on a nexus 4 from a trunk build (Oct 24, ~M56). I did a build that should more or less match official build configs, since I was looking at perf issues too. It shows SSLClientSocketImpl::DoHandshakeLoop taking 4+ms, and a few of them can run at once, locking up the IO thread for a long time. And that's cpu time, not wall clock time. Is that expected? If so, maybe it be moved off the IO thread which is critical to be lively to avoid janks
,
Oct 24 2016
It should not be moved off-thread without much much more investigation. We've had it off-thread before on CrOS and Linux due to NSS limitations and it was a huge mess (and caused performance problems). We should find out where that 4ms is coming from and go from there. What site were you connecting to?
,
Oct 24 2016
(Private key operations are actually already off-thread but that's because, as Ryan mentioned, smartcards involve hardward access and blocking RPCs and whatnot.)
,
Oct 24 2016
I was using android webview and doing a search with the google search app. So probably google.com? Here's a trace from chrome_public_apk, doing a google search. The DoHandshakeLoop events happen near around 5s in. I had to clear the cache first though, since additional searches didn't seem to trigger this. From the trace, I don't think there's any blocking behavior. A few of them finished without being descheduled.
,
Oct 25 2016
Can you provide full details about your Chrome configuration? The "Did a trunk build" may be a sign that this is a local issue (For context, we once lost a week of debugging BoringSSL+Chrome interactions, only to realize the developer reporting the perf traces was using a custom allocator in their build, and it was the allocator responsible for the perf issues)
,
Oct 25 2016
I just got home. I'll try an archived release build tomorrow, which might be easier than trying to reporduce my local build.
,
Oct 25 2016
Same thing with the archived release build from last night 56.0.2900.3. The ssl events happen around 5.7s |
|
►
Sign in to add a comment |
|
Comment 1 by rsleevi@chromium.org
, Oct 24 2016