Testing the bandwidth of a fast connection takes a lot of CPU in the Socket Thread
Categories
(Core :: Networking, defect, P2)
Tracking
()
People
(Reporter: florian, Unassigned)
References
(Blocks 1 open bug)
Details
(Keywords: perf, power, Whiteboard: [necko-triaged])
See this profile https://share.firefox.dev/2TWvRaQ of testing a fiber connection with https://www.speedtest.net/ (the test results in Nightly were 900Mbps download, 450Mbps upload)
The Socket thread in the parent process uses almost 100% of a CPU core for most of the duration of the test. There's also significant CPU use in the parent process in the main thread, and IPC I/O Parent thread, and in the content process the main thread, IPC I/O Child and Socket thread have significant activity.
I wonder if the test results might be CPU bound, as running the same test on Safari gives higher results (930Mbps download, 600Mbps upload).
Comment 1•4 years ago
|
||
Florian, you are on MacOS right? Isn't it just the same as bug 1709175?
Reporter | ||
Comment 2•4 years ago
|
||
(In reply to Henrik Skupin (:whimboo) [⌚️UTC+1] from comment #1)
Florian, you are on MacOS right?
Yes.
Isn't it just the same as bug 1709175?
No. The profiles in bug 1709175 show mostly polling in the Socket process.
The profile here shows that polling overhead + a lot of SSL code when reading / writing encrypted data + IPC things. It's likely that this bug could turn into a meta bug once actionable pieces have been figured out.
Comment 3•4 years ago
|
||
Dragana is making some progress with bug 1382886. Most likely this bug shares the same root cause.
Comment 4•3 years ago
|
||
Florian, can you please re-test now that bug 1382886 has been fixed?
Reporter | ||
Comment 5•3 years ago
|
||
Here's a profile captured on a build from today's mozilla-central: https://share.firefox.dev/3zFSjnD
My comment about it would be word for word what I wrote in comment 0.
Reporter | ||
Comment 6•3 years ago
|
||
Here is a profile of the same test on Linux: https://share.firefox.dev/2XWx83V The main difference from the profile in comment 5 is that poll
seems to use little CPU on Linux.
Comment 7•3 years ago
|
||
I think this is a different bug, probably not a bug on our side. I will take a look into this.
Comment 8•3 years ago
|
||
(In reply to Florian Quèze [:florian] from comment #2)
No. The profiles in bug 1709175 show mostly polling in the Socket process.
The profile here shows that polling overhead + a lot of SSL code when reading / writing encrypted data + IPC things. It's likely that this bug could turn into a meta bug once actionable pieces have been figured out.
(In reply to Florian Quèze [:florian] from comment #6)
Here is a profile of the same test on Linux: https://share.firefox.dev/2XWx83V The main difference from the profile in comment 5 is that
poll
seems to use little CPU on Linux.
So probably related to bug 1709175 then?
Reporter | ||
Comment 9•3 years ago
|
||
(In reply to Henrik Skupin (:whimboo) [⌚️UTC+1] from comment #8)
(In reply to Florian Quèze [:florian] from comment #6)
Here is a profile of the same test on Linux: https://share.firefox.dev/2XWx83V The main difference from the profile in comment 5 is that
poll
seems to use little CPU on Linux.So probably related to bug 1709175 then?
I was just saying that I don't see bug 1709175 on Linux.
Reporter | ||
Comment 10•3 years ago
|
||
Similar profile on Windows: https://share.firefox.dev/3ERjkIm
Description
•