OT: on the responsiveness of old computers vs new ones
- Alarm Siren
- Posts: 363
- Joined: 25 Oct 2016
Re: OT: on the responsiveness of old computers vs new ones
I think the basic idea with multi-process is that if one process/tab crashes, it won't take the whole browser with it. It'd be pretty awful to have some stupid javascript/flash heavy advert in one tab crash the browser and take that long forum post you were about to submit with it!
Want to design a PCB for your project? I strongly recommend KiCad. Its free, its multiplatform, and its easy to learn!
Also, I maintain KiCad libraries of Retro Computing and Arduino components you might find useful.
Also, I maintain KiCad libraries of Retro Computing and Arduino components you might find useful.
-
DerTrueForce
- Posts: 483
- Joined: 04 Jun 2016
- Location: Australia
Re: OT: on the responsiveness of old computers vs new ones
True. I see the reasoning there, but I would have thought it was possible to have a thread crash without totalling the entire process.
- GARTHWILSON
- Forum Moderator
- Posts: 8773
- Joined: 30 Aug 2002
- Location: Southern California
- Contact:
Re: OT: on the responsiveness of old computers vs new ones
The rare times Firefox has crashed on me, the whole thing went, not just one tab.
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?
Re: OT: on the responsiveness of old computers vs new ones
RalfK wrote:
Two poblems: Windows is not a real multitasking environment, and Firefox became horrible especially everything with Javascript.
cbmeeks wrote:
I know *exactly* why this happens. Well, not exactly but I know who's causing it. It's the networking stack. I literally have 20+ years of experience with this. Let me explain...
BigEd wrote:
Two other things: virtual memory means you may be paging to hard drive, and large memory spaces mean your application might be garbage collecting for a time.
commodorejohn wrote:
These are big ones as far as those 15-second delays go. What drives me crazy is how the entire system can grind to a halt if one application needs to swap. I've seen this on Windows, Mac, and *nix - run a browser with a bunch of tabs chewing up a couple GB, and the whole computer, from the UI layer down to other applications, starts to judder or just stops until the hard-disk light goes off. So much for multitasking!
Also, the modern Mac OS, has practically given up on swap. With SSD backed systems, what the Mac will do (with cooperating applications), when its memory pressured, is simply kill the application, but leave the window on the screen. When you activate the window, the Mac silently reloads the application and, ideally, you're just where you left off. This tech is lifted from iOS which does this all the time.
iOS is as much magic trick as it is anything else. But the plan is sound. On iOS it is cheaper (notably in terms of energy) to leave applications open than it is close out unused ones. The OS will simply kill things off when they're exhausted. iOS doesn't "swap" per se, it's easier to delegate that problem to the app developers who need to take in to account the idea of a "fast restart". It's not just that the OS can do this, recall the user can simply click the home button, at any time, and go back to the main menu. This is a perfect example of where the app should shut down, and save the current work, waiting to be recovered later. It may be killed right there, it may not.
Also, of course, on the Mac, the OS will leverage the virtual memory system to compress memory on the fly. This is a pre-stage state of an idle app, any memory pages just kind of quiet can be compressed transparently by the OS. So, Mac OS is actively moving away from swap.
DerTrueForce wrote:
I have trouble understanding why internet browsers eat such horrendous amounts of memory. And I think the multi-process model is partly a way to obfuscate how much memory/CPU time things are using. I'm pretty sure there's no real need to go multi-process. Multi-thread will probably cut it plenty fine.
The multiprocess model is partly to keep bad pages from nuking the entire browser. A thread model can't save a process necessarily from a process level fault. But it's more designed to better sand box the pages with an eye toward security and cross tab exploits as much as anything.
Re: OT: on the responsiveness of old computers vs new ones
Indeed, we should these days be as worried about compromise of our systems as about the inconvenience of a crash. One sure way to lose performance is to have someone else in control of what runs on your machine.
As we're already in an OT thread, and talking about bloat, Things That Turbo Pascal is Smaller Than might be of interest:
Compressing unused pages is a nice trick. As is failing fast. My RAM-challenged ChromeBook used to die thrashing every week or so, and now it works much better, by killing processes instead. See crash-only software.
My MacBook is pretty reliable, but I did fork-bomb myself a couple of weeks ago with an ill-advised
As we're already in an OT thread, and talking about bloat, Things That Turbo Pascal is Smaller Than might be of interest:
Quote:
The entire Turbo Pascal 3.02 executable--the compiler and IDE--was 39,731 bytes.
My MacBook is pretty reliable, but I did fork-bomb myself a couple of weeks ago with an ill-advised
Code: Select all
make -j
- GARTHWILSON
- Forum Moderator
- Posts: 8773
- Joined: 30 Aug 2002
- Location: Southern California
- Contact:
Re: OT: on the responsiveness of old computers vs new ones
BigEd wrote:
As we're already in an OT thread,
not particularly, as there are at least a couple of private threads going on regarding making a 65-based PC. Yeah, I know, we've had several of these in forum topics over the last 15 years, and nothing ever became of them; but advancing programmable logic technology, the increasing expertise on this forum, and other factors, may eventually make it happen. Your topic, Ed, is precisely one of the motivators.
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?
-
DerTrueForce
- Posts: 483
- Joined: 04 Jun 2016
- Location: Australia
Re: OT: on the responsiveness of old computers vs new ones
GARTHWILSON wrote:
... there are at least a couple of private threads going on regarding making a 65-based PC.
Re: OT: on the responsiveness of old computers vs new ones
Alarm Siren wrote:
I think the basic idea with multi-process is that if one process/tab crashes, it won't take the whole browser with it. It'd be pretty awful to have some stupid javascript/flash heavy advert in one tab crash the browser and take that long forum post you were about to submit with it!
DerTrueForce wrote:
True. I see the reasoning there, but I would have thought it was possible to have a thread crash without totalling the entire process.
Re: OT: on the responsiveness of old computers vs new ones
whartung wrote:
RalfK wrote:
Two poblems: Windows is not a real multitasking environment, and Firefox became horrible especially everything with Javascript.
Let's look at the modern Firefox and Windows: my FF 45(esr) ran well, but my actual FF 52(esr) sometimes blocks my Windows for 10 or 15sec. If Windows would have implemented real multitasking other tasks would continue. But they are now(!) blocked. Means: this is no real multitasking.
Regards, Ralf
- Alarm Siren
- Posts: 363
- Joined: 25 Oct 2016
Re: OT: on the responsiveness of old computers vs new ones
GARTHWILSON wrote:
The rare times Firefox has crashed on me, the whole thing went, not just one tab.
Want to design a PCB for your project? I strongly recommend KiCad. Its free, its multiplatform, and its easy to learn!
Also, I maintain KiCad libraries of Retro Computing and Arduino components you might find useful.
Also, I maintain KiCad libraries of Retro Computing and Arduino components you might find useful.
-
White Flame
- Posts: 704
- Joined: 24 Jul 2012
Re: OT: on the responsiveness of old computers vs new ones
[edit: whoops, didn't see there was a 2nd page already!
and there's no post deletion on this board]
I'm not sure which is the biggest culprit of memory usage, but fonts at many different sizes, bitmap caches for scrolling and compositing, full intermediate layout details being cached for shorter delta changes instead of complete recalculation, all would seem to be able to grow really big. And that's of course not counting the massive javascript libraries & frameworks that people love piling on.
Another standard line around threads vs processes is that processes work as sandboxes, so if some page is breached it won't have access to others' memory space. But that's kind of moot, because if your running executable is compromised, they have full access to your user permissions in your system anyway.
I'm not sure which is the biggest culprit of memory usage, but fonts at many different sizes, bitmap caches for scrolling and compositing, full intermediate layout details being cached for shorter delta changes instead of complete recalculation, all would seem to be able to grow really big. And that's of course not counting the massive javascript libraries & frameworks that people love piling on.
Another standard line around threads vs processes is that processes work as sandboxes, so if some page is breached it won't have access to others' memory space. But that's kind of moot, because if your running executable is compromised, they have full access to your user permissions in your system anyway.
Re: OT: on the responsiveness of old computers vs new ones
RalfK wrote:
whartung wrote:
RalfK wrote:
Two poblems: Windows is not a real multitasking environment, and Firefox became horrible especially everything with Javascript.
I suspect a big reason for Window's failings are down to the vast amounts of third party code hanging around in the (already massive) core kernel. No matter how good your memory management, task scheduling, IO scheduling, network stacks etc, if you have crummy code in the kernel then it is jeopardised.
Quote:
Let's look at the modern Firefox and Windows: my FF 45(esr) ran well, but my actual FF 52(esr) sometimes blocks my Windows for 10 or 15sec. If Windows would have implemented real multitasking other tasks would continue. But they are now(!) blocked. Means: this is no real multitasking.
8 bit fun and games: https://www.aslak.net/
Re: OT: on the responsiveness of old computers vs new ones
Aslak3 wrote:
I suspect a big reason for Window's failings are down to the vast amounts of third party code hanging around in the (already massive) core kernel. No matter how good your memory management, task scheduling, IO scheduling, network stacks etc, if you have crummy code in the kernel then it is jeopardised.
Cat; the other white meat.
Re: OT: on the responsiveness of old computers vs new ones
Also remember that even the best multi-tasking OS (not that I think Windows is really one) will have *some* internal kernel lock or resource which can in some circumstances slow down the system, or even block it.
- commodorejohn
- Posts: 299
- Joined: 21 Jan 2016
- Location: Placerville, CA
- Contact:
Re: OT: on the responsiveness of old computers vs new ones
Yeah, sure, but is it really too much to ask that one process swapping to/from disk not bring the entire system to its knees?