Discussions about the development and maturation of the platform code (UXP).
Warning: may contain highly-technical topics.
Moderators: trava90, athenian200
-
Basilisk-Dev
- Astronaut

- Posts: 596
- Joined: 2022-03-23, 16:41
- Location: Chamber of Secrets
Post
by Basilisk-Dev » 2026-04-02, 11:47
jobbautista9 wrote: ↑2026-04-02, 02:31
I think it's more
GlobalHelperThreadState::maxParseThreads, specifically the return below a comment block (which seems to be the warning that Basilisk-Dev mentioned).
maxUnpausedIonCompilationThreads is related to Ion which is part of JIT.
That is it. I had the line number there when I pasted my link but I guess phpBB didn't like that.
UCyborg wrote: ↑2026-04-01, 20:51
Is there a build flag for JITless build you put in .mozconfig?
No, I'm currently using a LoongArch system for my desktop and an Apple Silicon Mac for my laptop. Neither of those two CPU architectures has JIT support so the browser always runs without a JIT.
-
UCyborg
- Keeps coming back

- Posts: 885
- Joined: 2019-01-10, 09:37
- Location: Slovenia
Post
by UCyborg » 2026-04-02, 17:51
OK, so don't need to turn off JIT (x64 Windows machine), just WASM, which I don't need often. Looks good so far, just didn't have much time to really evaluate. I'd almost say it's quite noticeable (I made it return cpuCount), but I'm not sure if memory recalls slower responsiveness in this one particular client-rendered web app at work from the browser running for a while and getting slower with runtime or was it like this from fresh start.
-
jobbautista9
- Board Warrior

- Posts: 1184
- Joined: 2020-11-03, 06:47
- Location: Philippines
Post
by jobbautista9 » 2026-04-03, 03:51
Perhaps we can make a pref for what number GlobalHelperThreadState::maxParseThreads returns (with the default -1 being cpuCount)? Maybe guard against the pref for enabling WebAssembly too.
-
Moonchild
- Project founder

- Posts: 39119
- Joined: 2011-08-28, 17:27
- Location: Sweden
Post
by Moonchild » 2026-04-03, 07:07
As an aside, to demonstrate the issues with e10s, current release cycle Firefox security bugs that I just went through had 45 of the bugs I looked at directly related to e10s. In just this month.
That's not counting issues that are less obviously prima facie caused by the e10s architecture of Firefox. Keep in mind how long ago this was introduced in Firefox, and we're still constantly having security issues in it every single month. It was supposed to be a "more secure" way of handling web content, remember? Because web content would be limited to its own less-trusted processes. Turns out it's suffering from exactly what I said, in that the messaging protocol itself is vulnerable to attack in ways a single-process browser would never have exposure to.
"There is no point in arguing with an idiot, because then you're both idiots." - Anonymous
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite
-
ownedbywuigi
- Fanatic

- Posts: 138
- Joined: 2026-03-09, 21:48
- Location: United Kingdom
Post
by ownedbywuigi » 2026-04-03, 07:48
Moonchild wrote: ↑2026-04-03, 07:07
current release cycle Firefox security bugs that I just went through had 45 of the bugs I looked at directly related to e10s. In just this month.
Does Chromium or other engine’s multiprocessing implementations suffer from the same issue, or is it JUST Firefox which is dealing with these countless bugs?
Windows Server 2022, i9 9900K, 32GB DDR4, GTX 970, Dactyloidae 13.2-pre1
OS X Monterey, 2013 Mac Pro, Xeon e5-1650v2, 2x FirePro D500, 64GB DDR3, Dactyloidae 13.1
-
Moonchild
- Project founder

- Posts: 39119
- Joined: 2011-08-28, 17:27
- Location: Sweden
Post
by Moonchild » 2026-04-03, 08:55
Chromium suffers from the same.
"There is no point in arguing with an idiot, because then you're both idiots." - Anonymous
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite
-
Martok
- Contributing developer

- Posts: 9
- Joined: 2019-08-29, 00:46
Post
by Martok » 2026-04-04, 20:16
It's a bit off topic here, but if something is to be done against the freezes and virtual memory leaks, that time would be better spent on the garbage collector.
I've tried investigating this multiple times over the years, but the furthest I've gotten so far is that at some point the trace graph becomes complicated enough that the incremental GC does not get anything done before some action will upgrade the collection to a full GC anyway. And since it is a stop-the-world collector... well, it stops the world. What I'm less clear on is why even when collection finally finishes, the compacting doesn't really work at all (simple test: open youtube, wait a bit, close the tab, compare about:memory to virtual size). That makes me think major fragmentation on the jemalloc side of things, which then wouldn't be great for new allocations.
"For more information please reread."
-
ownedbywuigi
- Fanatic

- Posts: 138
- Joined: 2026-03-09, 21:48
- Location: United Kingdom
Post
by ownedbywuigi » 2026-04-04, 22:38
Martok wrote: ↑2026-04-04, 20:16
It's a bit off topic here, but if something is to be done against the freezes and virtual memory leaks, that time would be better spent on the garbage collector.
Noted, will try to spend some time optimizing that in either Dactyloidae 13.1-pre3 or 13.2 for up-streaming.
Windows Server 2022, i9 9900K, 32GB DDR4, GTX 970, Dactyloidae 13.2-pre1
OS X Monterey, 2013 Mac Pro, Xeon e5-1650v2, 2x FirePro D500, 64GB DDR3, Dactyloidae 13.1
-
UCyborg
- Keeps coming back

- Posts: 885
- Joined: 2019-01-10, 09:37
- Location: Slovenia
Post
by UCyborg » 2026-04-15, 16:50
TBH, PM still feels rather slow and laggy with my regular usage with maxParseThreads set to cpuCount.
-
Basilisk-Dev
- Astronaut

- Posts: 596
- Joined: 2022-03-23, 16:41
- Location: Chamber of Secrets
Post
by Basilisk-Dev » 2026-04-16, 16:41
UCyborg wrote: ↑2026-04-15, 16:50
TBH, PM still feels rather slow and laggy with my regular usage with maxParseThreads set to cpuCount.
It's substantially faster for me on non-JIT builds. I'll need to test an x86 machine later.
-
UCyborg
- Keeps coming back

- Posts: 885
- Joined: 2019-01-10, 09:37
- Location: Slovenia
Post
by UCyborg » 2026-04-17, 03:20
It's just that things get slower the longer the browser is used. I cannot avoid this to get things done in real life.
-
Basilisk-Dev
- Astronaut

- Posts: 596
- Joined: 2022-03-23, 16:41
- Location: Chamber of Secrets
Post
by Basilisk-Dev » 2026-04-17, 14:47
UCyborg wrote: ↑2026-04-17, 03:20
It's just that things get slower the longer the browser is used. I cannot avoid this to get things done in real life.
Are you saying it's getting slower with the helper threads adjusted or just in general with or without that patch? The reason I ask is that I am backporting a few Mozilla changes to improve performance including this one, and don't want to submit a PR if it's slowing people down.
-
UCyborg
- Keeps coming back

- Posts: 885
- Joined: 2019-01-10, 09:37
- Location: Slovenia
Post
by UCyborg » 2026-04-17, 16:12
In general. I don't think the patch by itself is bad, it just seems to be a small part in the bigger picture.