Firefox 3 Performance Gets a Boost
jason writes "Mozilla has been working hard at making Firefox 3 faster than its predecessor, and it looks like they might be succeeding. They've recently added some significant JavaScript performance improvements that beat out all of the competition, including Opera 9.5 Beta. And it comes out to be about ten times faster than Internet Explorer 7! Things are really starting to fall into place for Firefox 3 Beta 4 which should be available in the next week or two."
Hopefully it can best Safari's Javascript performance. Firefox is pitifully slow compared to WebCore's javascript core.
One of the ways I usually demonstrate to people the advantage of Firefox 2 over IE7 is to show them the difference in time it takes to open multiple tabs. With Firefox, they open as fast as I can hit CTRL-T, but with IE it takes about a second for each one.
I stole this sig from a more creative user.
Ten times faster than IE in doing what? IE typically ends the race freezing up or crashing. Does that mean firefox is going to get to that point faster? I hope not.
The first thing that comes to mind when these massive improvements are being made is that the codebase is poor to begin with. However, all the other browsers seem just as bad. I realize html renders are very complex pieces of software, but why does it seem like they're all flakey? Is it HTMLs fault? Why do we even still use html? While proposed jokingly before, why not use something like PDF or flash for a fully graphical web? While it would make writing crawlers and accessibility harder, I think that is something that could be worked on, by providing an open standard for the files that can be parsed easier than html.
Waffles rock.
It still doesn't run on my computer and Firefox 2.latest_stable_release works fine. What's up with that? It just crashes immedietly upon opening.
To be honest, I hate it. WTF have they done with my handy URL bar? It used to be a place where I could type "slas" and get the slashdot URL come up. Even worse for "news", as it "handily suggests" all the pages in my history that have "slas" or "news" in my history.
Heads up for all those trying Firefox 3 is Oldbar. I suggest you get it if you don't like the new 'innovations' by Mozilla Corp.
The Safari team recently introduced some native javascript functions, which showed very impressive speed. It looks like the next release Safari will be up there as well (if not even faster still).
I'm off to download the latest Firefox to see how the two compare (on both Windows and OS X platforms).
The Mothership
So does this mean that NoScript users such as myself have already been browsing at this speed, if not faster?
I've been very happy with the performance of Firefox 3 beta 3 already, and added JavaScript performance is certainly nice. This will mean I'll try to use my VIA EPIA as desktop again, it's 1.2 GHz processor slowed down the internet experience just enough to make it the lesser option.
Now to restore flash again, it's still dysfunctional, and it is starting to get on my nerves. Sites that require flash are annoying, but not annoying enough that I never want to visit them again. Oh well, we'll have to wait for the official version I guess.
Firefox 3 is going to include support for the new Java SE 6 runtime environment.
This is a new implementation of the Java Plug-In that features increased reliability, ability to specify large heap sizes, ability to select a specific JRE version to execute a particular applet, and support for signed applets on Windows Vista.
The New Plug-in is designed to work with: - Internet Explorer 6 and 7 on Windows XP and Windows Vista - Firefox 3 on Windows XP, Windows Vista, Solaris and Linux
Personally, I've been wanting to use the Firefox 3 beta for some time, primarily because of the performance and speed boosts over Firefox 2, but my favourite add-ons still aren't compatible.Note: The new Plug-in does not work with Firefox 2, and no support is planned for this browser with the New Plug-in.
http://gemal.dk/blog/2008/02/24/firefox_3_gets_a_new_java_plugin/?from=rss-category/here
The Mothership
in this thread
The Mothership
Silly question perhaps, but is optimized to use SSE, SSE2, SSE3, or any other instruction sets?
Life is not for the lazy.
Yes, they have been working hard on fixing memory leaks for years. On the other hand, Firefox will likely always have some memory leaks, as all browsers certainly do. I don't know of any massive leaks that will cause users to have to restart Firefox 3 regularly due to memory issues. If anyone can list a set of steps to reproduce such a problem, or cause Firefox 3 to use significantly more memory than other browsers, please do so, and the problem can be reported and fixed.
What a fool believes, he sees, no wise man has the power to reason away.
Safari 3.1 is supposed to be really fast as well. How do they stack up?
It wasn't so much a memory leak issue as it was memory fragmentation.
Microsoft's biggest mistake was thinking people wouldn't write complicated apps in Javascript. They supported it, in their usual half broken style, but it created the only widely deployed cross-platform system for running code that Microsoft has ever implemented. Now, with Firefox 3 running so fast javascript might become THE platform. It's hilarious because Javascript started out as such a kludgy platform and now it is becoming a serious contender if only because it's the only cross-platform thing Microsoft ever supported.
it'd be nice if they got they damn bookmarks to work
"I disapprove of what you say, but I will defend to the death your right to say it." - Evelyn Beatrice Hall, re Voltaire
Speed is great, speed is fine. I like speed. But how doing something about the fact that Firefox was that 550 megabytes of memory with only about 10 windows / tabs open? And I don't want to hear any nonsense about caching. Sorry, but I have NOT downloaded 550 megabytes of data today, and even if I had, I don't want it ALL cached.
This has to be the #1 complaint about Firefox -- that it's such a memory pig. Is the design so brain damaged that it just can't be fixed? Or do the developers just not care?
Yeah, my computer has a lot of memory, but I'd like to devote that to VMWare, Photoshop, video editing, etc. Not a browser!
Sometimes it's best to just let stupid people be stupid.
What would be really nice would be a way within Firefox to mute particular tabs or particular flash objects. I have no idea why this hasn't been implemented yet, but until everyone who uses flash starts coding in mute buttons it would be very handy.
I wonder when they're going to fix the "looks-like-ass-on-a-mac" issue
...caching the width of the space character across font variants so SmoothText will render text properly.
No, recently the developers have found that few leaks are left, so that to reduce memory usage further they had to change their focus to reducing fragmentation. Originally, the problem was leaks, it's just that once the worst ones were fixed fragmentation became responsible for a larger fraction of the memory usage. This a continuation of people trying to find one single cause of high memory use. As I and others have been saying for years, there is no one cause. There is no "the memory leak" or "the memory issue", just as there is no "the crash problem" or "the security problem".
What a fool believes, he sees, no wise man has the power to reason away.
Ok parent shouldn't have been modded offtopic, as the linked article does compare different browsers, but anyway...
The benchmark is linked from here, nightly builds of Safari are available here, and a build of Firefox with this enabled is available here.
The Mothership
Well someone had to, so I ran the numbers for OS X. All of the below were on OS X 10.5.2 running on a MacBook:
I guess if you're a Safari or Firefox person you can look forward to some really fast Javascript performance either way.
JavaScript is being used so much around the web now that it needs to be a focus for browser makers. It doesn't matter how fast you get the content to your user, if you use a lot of JS your site could appear to be slow and non-responsive.
A better option would be to stop using so much damn javascript. If you need code run, run it on your server TYVM. I don't trust you enough to run your code on my machine, and if I have to, I'll just find another site.
What the internet desperately needs is an application transfer protocol completely distinct from HTML. Then we could support the few applications that need to be run client side (yes, like mapping) and get all this damn code out of my hypertext.
Give me Classic Slashdot or give me death!
JSON, code decompression, and traversing XML are things that a browser does with JavaScript, some more often than others. Even in those cases, I wouldn't be surprised if browsers had parsers that 'helped' the common browser JavaScript tasks with faster native-library interfaces instead of purely native JavaScript interpretation.
Why is the parent comment marked as troll? It was reported a few weeks ago that the next version of Safari, 3.1, would see major JavaScript performance gains due to the latest WebKit builds. This article uses the beta Windows 3.0 version to compare to.
"Sufferin' succotash."
and does a single tcp socket's stalling not cause the whole damn thing to seize up?
What the internet desperately needs is an application transfer protocol completely distinct from HTML.
We already have a perfectly good one. It's called HTTP. While the acronym may be misleading, it has nothing to do with HTML. In fact, no protocols (that I know of) have anything implicit to do with HTML.
I agree that we should be getting the damn code out of your hypertext, but that doesn't necessitate a new protocol.
Freezing the flash until the tab had focus might save a few CPU cycles too.
Apocalypse Cancelled, Sorry, No Ticket Refunds
The fact that every tab I open (and later close) seems to grab a chunk of memory and never release it (until all copies of FF are closed completely) is my biggest gripe.
For instance, at work I'm limited to 1gb of memory, but often need many tabs open. Over time, FF begins to suck up almost all of my memory. There seems to be an upper limit, but I would consider it a basic element of any multi-tab program if it were to, say, free up the resources used by a tab after that tab was closed.
Beyond that I have no significant issues with Firefox, and prefer to to IE. Admittedly, lately, the primary reason for that has been the same one for why I prefer Windows to other OS's - I'm simply used to it now. That, and I feel a little safer with things like NoScript and other FF-only tools.
Do not confuse "Freedom of Choice" with "Free Will".
Mozilla should be a serious player in (offline) web app development platform.
Why no body use it?
Why people are excited with AIR? Why not Mozilla?
Just to give you the alternate perspective- I love the idea of Opera, and use the kick-ass mini (and mobile) versions every day. But on my desktop, it just seems so foreign. It's like a swiss army knife, with inbuilt functionality poking out every which way, and (in my head) obstructing the work I've got planned- It doesn't feel like it's mine.
I realise that it mostly is amazing, and I'm not satisfied with Firefox by any means, but Opera just feels alien; a bit like when you start messing about with WINE after a long period of not needing to.
I realise that seems woolly as fuck, but I guess Opera is sufficiently advanced that such intangible and abstract criticisms become the only valid ones.
"Be light, stinging, insolent and melancholy"
Or does a single tab still cause the entire browser to freeze up?
___
If you think big enough, you'll never have to do it.
Luckily many pages don't need Javascript or at least not a lot of JS to render.
What I find more important are the lockups I get because of limitations to multi-threading in FF, at least under Linux. There are situations where one window locking up means all windows lock up. There are situations where some initial connection to a host being stuck means all of the browser locks up. One can only guess, because FF does not indicate what the problem is -- but more frequently than is funny, I have FF get unresponsive, not re-painting windows anymore and just eating up CPU and memory without reacting until I kill it.
This sucks and this doesn't seem to have changed in FF 3.
So instead of snorting Slashdot, I can inject it into my veins?
I always see these benchmarks and wonder "why does this matter?". The only time I ever see Javascript run too slow or tax my CPU is when it's buggy and then it'll probably throw up all sorts of warnings anyway. This is on any browser I've used and any system.
What matters to me is the imperfect implementation of Flash (it's not really their responsibility but it is their problem) which often eats up 100% CPU from random flash objects or causes firefox to freeze. Another annoyance is Firefox being frankly poor at displaying large HTML files (when you go on websites with insanely large lists for instance). Where as IE and Opera display these as the page is downloaded. Firefox, for me, freezes, much like notepad will when you open a 2meg+ file . Sometimes it'll recover and display the page after a minute or so, sometimes I have to ctrl+alt+delete.
And even after all these comments, FF3 has still wrecked my browsing experience. I thought I could run both versions, but no, the beta seems to overwrite the decent version of Firefox. If it doesn't, then I still have to go through a lot of crap to uninstall and etc. Screw this. Screw Mozilla. I'm wondering who they were listening to when they implemented this.
I had these problems with Firefox 2 exactly running the default Ubuntu version. I downloaded the firefox 3 beta 3 from the website and it is so much better it is unbelievable.
- Where as before FF2 would use around 500 meg it now only uses around 50 meg
- Flash no longer crashes the browser
- Javascript no longer crashes the browser
- Those long pauses as it is doing something that stalls the browsers operation are gone.
I couldn't believe the difference.
I've seen similar complaints, but have never been able to reproduce any such problem. I can open and close tabs all day, and Firefox does not suck up all my memory, or even a significant portion of it. I can't even run it long enough to come close to sucking up all of my memory (it would take several weeks of use every day without ever closing it). Could you explain how the rest of us could see the problem? If you do, we could report it and the problem could be fixed.
What a fool believes, he sees, no wise man has the power to reason away.
There is no "the memory leak" or "the memory issue", just as there is no "the crash problem" or "the security problem"
Once upon a time there was this OS named Windows Millennium Edition, also known as "the" in your examples above.
As a programmer who uses a high-level, garbage-collected language with an optimizing native compiler, I would say "the memory leak" and "the crash problem" and "the security problem" are all symptoms of using C/C++ to write a gigantic network-facing program with an embedded interpreter.
I realize that it's easier to find C/C++ compilers and C/C++ programmers, but popularity aside, this has always looked like a recipe for disaster.
I have a Pentium M 1.86Ghz running Gutsy and I got 6867 with last night's nightly. Full benchmark results:
Benchmark Results
So as I understand it, this "awesomebar" learns from my browsing activities to determine which site I want to visit.
But what about the Clear Private Data option? If I delete my browsing history, will the awesomebar also forget that those sites were ever visited, or even exist?
I've seen similar complaints, but have never been able to reproduce any such problem. I can open and close tabs all day, and Firefox does not suck up all my memory, or even a significant portion of it. I can't even run it long enough to come close to sucking up all of my memory (it would take several weeks of use every day without ever closing it). Could you explain how the rest of us could see the problem? If you do, we could report it and the problem could be fixed.
I've seen the same behavior in every point release of FF 2.x that I've used, on both Linux and Windows. Surf for days at a time, opening large numbers of tabs, and the RAM usage grows to ridiculous proportions ( virtual image size > 1GB, resident image size ~= 1GB), and closing tabs (and even windows) does not release any memory back to the OS. Consistently the only thing that would release the memory was to kill the process.
Why this is so hard to reproduce, I can't fathom, as it happens very, very consistently for me, and has for ages.
// TODO: Insert Cool Sig
Firefox is actually using FreeBSD's new malloc (jemalloc; PDF) internally, instead of the default OS allocater on all platforms. It's quite fast and has less fragmentation than other implementations.
That's pure BS. Even high-level languages have these problems. No one has had buffer overruns on PHP served pages, but how many have been hacked? Even they crash sometimes.
... ad infinitum is still not freed. I'd almost say manual reference counting is better because at least it forces you to think about how to cleanly delete your data structures.
And finally GARBAGE COLLECTION IS NO REMEMDY FOR MEMORY ISSUES. People are claiming this all the time, so I'll repeat garbage collection is no remedy for memory issues. People claim that garbage collected languages can't leak memory, and while I admit that this is true, this guarantee is practically worthless. The definition of a memory leak is a section of memory that is no longer referenced, but has not yet been freed. Garbage collection addresses this directly by freeing memory that is no longer referenced. And you say "that's great! All our memory problems are solved!", but instead we have "object lifetime" issues. You have references to this and that in your program and the problem is you still have to carefully plan when objects should disappear, and check to ensure that you have no references to that object anywhere in any of your active data structures. If you do, everything that is referenced by that object or referenced by a reference from that object or
Furthermore, garbage collection does NOTHING about memory fragmentation. Memory fragmentation occurs because all the objects you want to allocate are different sizes. Even though when first allocated you could compact them all together, after freeing a couple and and allocating some more, you can end up a ton of memory wasted between the different objects that somehow got spaced out. What you want to allocate a 64 byte structure, too bad the largest space we have left is 62, guess we have to brk another page to put it on. Strings are particularly notorious for fragmentation (which is why Firefox already uses pooling to combat the problem). Until 'everything is a handle' replaces the modern 'everything is a pointer' in modern languages and the runtime defragments memory while the program is running (at a scandalous cost in performance), memory fragmentation will be another problem to consider.
The fact is there is no easy solution to any of these problems. You can't say `use language X, it has feature Y' and you won't have that problem. These problems are hard, but at least there is some benefit -- it justifies making that much more than minimum wage.
Yes, it's like that. However, I find that it's *horribly* slow, and I wanted an option to turn it back to just scale text. If they can't get it right (read: fast) there's no point, because it now makes a useful feature - making small text bigger - near useless because it slows everything *way* down. I don't think it's "zooming" so much as "resizing". Can't quite explain the difference, but I think there's a distinction to be made there.
creation science book
I've also known other people to complain about it - while others have no idea what they're talking about. You have to love sporadic issues.
I'm pretty sure it has to be a combination of minor flaws in Firefox (as not every program I run has this issue), Windows XP (with memory handling far better than previous versions, but still not exactly the gold standard of memory management), and all the myriad changes to my system's configuration over time.
It does it on both my work computer and my home computer. Then again, they're both XP Pro machines. They're very different in terms of hardware, which tentatively rules out a specific hardware config. The memory on my home machine is double that of my work machine, but the highpoint seems to be about the same - so I doubt it has much to do with total system memory. What sites I hit seems to have no relevance. The only other common factor I can think of is that I run NoScript on both - though if I remember right the problem predated my use of that (I first noticed it a while back, and had actually hoped 2 would fix it).
The main issue seems to be that a specific amount of memory is eaten up when you open a site in a tab - but closing that tab often doesn't clear up the space. I just now closed every tab except Slashdot - and it went from 157mb (when I had 14 tabs open) to a minuscule 153mb. From experience, waiting for it to dump cache is ineffective. If I close the program, the memory clears itself just fine - but only if there is no other Firefox window open. I'm guessing that multiple Firefox app windows share a footprint.
Then again, saying "all" of my memory was an exaggeration. I've rarely seen it hold on to much more than 150mb after closing all but one window, though if I go on for very long without at least shutting down firefox, that minimum can creep up - and on a few occasions really has taken more memory than I actually have on my machine (virtual cache trash time). It's also probably not a noticeable problem unless you're a heavy multitasker (in which case that footprint becomes painfully obvious).
I've noticed it doesn't happen on my fiance's Vista machine, or on any 2003 Server boxes I've run it on. It may be a problem that only occurs on XP, or it just doesn't like the way I smell.
However, if you are able to reproduce it, you'll see it happen whenever more than one tab has been opened. Opening one tab, then clearing it, seems to work - but once a second tab opens, clearing the original tab clears it's footprint, but any tab opened after that exhibits the problem.
Do not confuse "Freedom of Choice" with "Free Will".
If you can find a set of steps that can reliably reproduce a problem with Firefox not releasing memory when closing tabs, go ahead and file a bug report. I've gone through the memory leak bug reports on Windows recently, and haven't run across any bug report that is similar to what you describe. You should test with Firefox 3 beta 3 or a later build, as Firefox 3 has over 13000 bug fixes in it, including over 100 memory leak fixes.
What a fool believes, he sees, no wise man has the power to reason away.
I think instead of multi-threaded, the developers should seriously consider a multi-process model. The front end skin could broker back end processes and provide a display buffer. This would provide free page isolation. If a plug-in goes haywire, bizerk or whatever the kids says these days, the front end can just kill off the process and continue humming along.
-rd
I have a Toshiba Libretto 110CT. This thing is unbelievably portable--but it is from 1998, so it has only a Pentium-MMX/233 and 64MB RAM, and I'm running it with W2K. Even with these piddly specs, browsing using FF 2.0.0.12 is acceptable--except when it comes to Javascript. GMail "newer version" borders on useless due to GMail's excessive JS usage (a simple mouseover triggers a shitload of events), and FF 2 keeps the CPU pegged at 100% for as long as 30 seconds while using GMail! So, I have high hopes that FF 3's JS performance will make such sites usable even on this little PC...
Why do I bring this up? While a Libretto is an extreme example, the EeePC's specs aren't significantly better than a Libretto's--despite being 10 years newer... The CPU is only ~4x faster, it has 512MB RAM (much better)--but the screen & storage are the same! So, JS performance improvements are definitely needed in FF...
Windows 3.1x calc: 3.11 - 3.10 = 0.00
I have found JavaScript performance depends immensely on what it was written for.
For instance Gmail in FireFox is really fast, almost as if it weren't a web application.
However, Gmail in Opera is a lot slower.
Possibly due to how FireFox caches and similar, but either way, theend result is that Google Apps is a lot faster on FireFox.
This is my footer. There are many like it, but this one is mine.
On the other hand, Firefox will likely always have some memory leaks, as all browsers certainly do.
As a software developer, that belief is, frankly, completely BS. Memory leaks are a result of poor design, or poor debugging. Regardless, they are *not* the inevitable product of complex software, nor are they (or bugs in general) something to be simply tolerated.
No, sorry, neither I nor any Firefox developer has ever claimed that Firefox has no memory leaks. Certainly there are extensions with very serious memory leaks. Firefox has some leaks, too, but they are far more subtle than claimed. In most of the memory leak bug reports I've seen recently, you need a special debug build to determine that any memory at all is leaking. If you're seeing Firefox leak lots of memory, please do tell us how to reproduce the problem (it shouldn't be hard at all if the problem is as serious and widespread as you claim), and then developers can fix the problem. I'm asking because I'd like to help get the problem fixed, if there is in fact a problem. Don't you?
What a fool believes, he sees, no wise man has the power to reason away.
I agree bugs are not something to be simply tolerated. On the other hand, experience has shown me that all browsers do crash on occasion. Experience has shown me that all browsers have security vulnerabilities. These are not something to be simply be tolerated, but nonetheless, all browsers have those problems. They are a result of poor design or poor debugging, but whatever, all browsers have those problems. Likewise, in my experience all browsers have memory leaks. They should not be tolerated, but all browsers do have them. If you're going to wait for any browser to have no memory leaks, or never crash, or have no security vulnerabilities found in it, you're going to have to wait for a long, long time.
What a fool believes, he sees, no wise man has the power to reason away.
Sorry, but testing something on your machine like that isn't useful. Why? Because you did nothing to control and make sure there wasn't a confounding factor. I just tried it on my machine, and both opened very quickly, no delay that I could see. So it isn't the kind of thing you are going to get consistent results on.
For example one thing it could depend on is what the browser does when it opens a tab. FF brought up a blank page, IE brought up a "You've opened a new tab," deal. Might that take longer on a slower system? I dunno, but that is the kind of thing you have to control for. Another would be Windows caching and paging. If you use Firefox all the time, and have had it open and running for a while, good chance that Windows has it all loaded in RAM, and probably has parts of the program you aren't necessairily using cached. However if you don't use IE it needs to load. What's more, since parts of IE are system components, they may be the kind of thing that are loaded, but haven't been used in a long time, and thus written out to the page file. Even if you've plenty of RAM, Windows will page unused stuff unless you tell it not to (I don't know how it makes the determination precisely).
Now I'm not saying that this is what accounts for what is happening, just giving possible reasons and showing examples of the kind of things that need to be looked at and controlled for, especially in such a short test dealing with small timescales.
You found FF faster, another guy found IE faster, I find no difference. All we can really infer from this is that neither one is necessairily faster at opening tabs. There is at least one other thing that makes a difference. Until the confounding factor(s) are located and controlled for, you can't say which one is faster at opening tabs.
who acts as the trusted introducer between the site operator and the public
You're looking at this wrong. A password is the way by which a party is authenticated. It's like one half of a key exchange.
Trust is not required at that point, only auth. This distinction has been mathematically established by the cryptographic community. It is possible to transmit auth while transmitting absolutely no other information.
I digress, though.
All three just happen to have an element of pubkey in them. All three of the methods require that you establish trust ahead of time. That's not really hard to do. E-mail the pubkeys with PGP. It's really hard to do a man-in-the-middle attack on that.
Mod me down and I will become more powerful than you can possibly imagine!
Not only that but the GPL doesn't constrain any author. It only constrains people who wish to distribute the author's code.
If I put one line of GPL code into Bunnies, all of Bunnies would have to be GPL.
If you put one line of Bunnies code into you project you can use whatever license you want except the GPL since the GPL is a direct contradiction to what my license supports.
Work Safe Porn
You may not like it but AJAXing a command to the server is a lot more efficient than POSTing the exact same command and forcing you to wait for the entire page to reload.
It saves both of us a lot of bandwidth.
Work Safe Porn
They're making it even faster? FF3b1 was already scary fast... hehe, this is exciting! :)
Except that Mozilla relies on HTML, CSS, XUL and JavaScript for it's whole user interface, for it's extension system, ...
So, even with NoScript which stops the webside JS, there is still tons of JS to execute...
Yes, but do they have lasers?
If it follows previous versions, it's really fast until add-ons essential to making the browser usable are installed, then it will bog down to IE levels.
How can this be insightful? It's stupid and insane, and makes no sense.
I don't want programs that tries to think for me, but I want it to present options if possible. Autocomplete a URL is like tab-completion in the shell. This is useful and consistent.
Trying to present a selection of things in a mozilla-programmer-logic order will almost never be what the people want.
Stop telling people that their argument is invalid by being a straw man, damn it!
While my first instinct is to agree with you, I think the future involves systems that will learn what we want.
These early learning systems will piss us off, and I think the majority of hard-core geeks will turn them off, but they will get better with time. Given a few generations, they will ultimately be quite good and a much better way of doing things.
They will eventually solve issues, like when I jump on your machine and it behaves significantly different to mine, but just give it time.
Patience, Grasshopper. Patience.
This is how M$ should do things.
It's the latest version? Then it should run faster than its predecessors. IE7 (as Windows) it's so slow compared to previous versions.
They only place layers of s*** without cleaning and optimizing code.
They rely on the latest generation of CPUs to run all that junk and produce "satisfying" products.
One day, they will wake up and realize they got to clean their "backyard" (code) in order to have the same garden as the neighborhood (competition).
If I have understood correctly, http://www.mozilla.org/projects/tamarin/ and related projects will be a big win for JavaScript performance.
Wow, Internet Explorer is already in version, eh... 5040.
Swedish plasma phys. PhD student; MSc EE; knows maths, programming, electronics; finance interest; seeks opportunities
Just open Pandora in a tab & leave it there for a week. I have to close the browser at least every 3-4 days & reboot the computer every other week or so because it's running @ 90% physical & 80% cache memory.
This week, I had a new problem where, with 5% cpu usage, my system was running @ a load of 4 & started increasing by .2 for every tab I opened. Closing all the instances & killing the processes didn't help, but the only thing affecting the load was opening & closing tabs. A reboot later & everything is back to normal.
For example, on my computer (933 MHz Pentium III - not really the bleeding edge anymore, but IMHO should be more than enough for browsing the web), the new Slashdot discussion system works quite slow during the page loading, especially if there are many comments. Don't get me wrong, I think that the new system is great: no more getting lost in the discussion threads, or stumbling across the same comments over and over again. But even with this discussion - with a bit over 400 comments - I got the warning that a script on this site is making the browser unresponsive, blah blah.
So yes, this would affect at least my daily browsing. And with the fixed memory leaks and other performance improvements, I'm really waiting for the stable version, and I'm thinking of giving those beta releases a try, too.
We got full page zoom in Firefox 3.
Firefox: fulfilling your fantasies.
Yep, we actually contracted Jason Evans to help us massage JEmalloc into the shape that we needed. He's a nice guy.
Opera fanboy here (hey, we just love to creep out of the woodwork) just piping up with the usual "you do know Opera's interface is pretty configurable, right?" comment. I was a bit weirded out with Operas interface (although when I started using it I'd only been using computers for about 3 months and had barely gotten to grips with IE, so learning another interface was slightly easier), but I can sympathise that the default opera interface is a bit odd to strangers, and they could make things like exposing the hidden panels easier (right-click a toolbar, customise, toolbars tab, tick show hidden toolbars when customising).
As it is, my opera setup resembles neither IE, FF, Safari or Opera because I've found out the way I like the interface arranged and have done so accordingly. FF or IE don't give me nearly as much flexibility where it counts as Opera does, especially the woefully static IE7.
Moderation Total: -1 Troll, +3 Goat
Can it cope with that shitty DICE ad that shoots my CPU usage up to 100% and no doubt drain the hell out of my battery life?
Slashdot: Seriously, PLEASE give HALF A SHIT about the quality of your site, and pull that fucking ad, it's pissing me off and it's been in rotation for MONTHS!
And if someone reading this works at DICE, please shoot your Flash developer immediately.
I don't block ads generally (being in an company that benefits from web advertising), but I've never been SO tempted before to block an ad server.
Comment of the year
With IE6 I can launch a new browser in a different process, and so I can kill stuff and free up memory without affecting other sessions.
I can't seem to do this with FF2 - everything ends up in the same process. Closing tabs and windows often doesn't reduce the memory footprint at all - you have to kill everything.
If Firefox can't get memory management right at least let make windows/tabs run in separate processes so that we can kill instances we don't care about, rather than keep ending up in a "all 1GB or nothing" situation.
It's quite ridiculous when an entire Windows XP vmware virtual machine running IE6 uses less memory than a FF2 instance running on the host.
Sure I sometimes still need to close IE6 browser windows when I run out of mem on the XP VM, but point is - the other IE6 sessions remain unaffected.
The problem is that it typically turns out to be a large number of small, dull tasks, with low reward for the developer (who has all the features he cares about ...). Polish takes a lot of work and attention to detail. These are hard tasks that get done in commercial software because it makes the difference in sales.
"Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
The restriction for GPL and like licensing is for "the code included with these tutorials." In other words MY code.
In other words you can take my code and relicense it as a closed source commercial product for all I care but you can't turn it into viral code that forces all code that touches it to be a certain license.
Learn to read.
Work Safe Porn
In fact most people think Javscript is bad because they have to use it inside browsers which tend to ignore the specification (OK, the one with 75% market share). In most cases Javascript is not the reason for frustration but the lack of DOM-compliant behaviour of the browsers (Ok, the one with 75% market share).
You may read some articles about Javascript, which indeed has some cool features. And with Adobes open sourced VM (Tamarin) it has a rather fast implementation too.
The Next Big Language
ECMAScript: The Switzerland of development environments?
JavaScript Speed Tests
-- "As a human being I claim the right to be widely inconsistent", John Peel
Aren't processes more useful for server apps? Like when each process gets a certain amount of connections (ie apache), so that if one is brought down the whole service isn't knocked out. But each process is pretty much independent, is doing essentially the same thing, and as such don't share memory or communicate (yes I know about IPC, but it's not quite the same thing).
:-) ).
I don't think this would work with an app such as firefox. If you had a separate process for each tab, think of the insane memory requirements; as they are independent of each other and do not share memory. And how would you make extensions work across multiple tabs?
Now, if you have each process be a different thing (ie one 'process' for extensions, one for each tab, one for the GUI elements, etc) all communicating and being dependent on each other - than what you have are threads, not processes. At least by the definition I've most come across.
Please correct me if I'm not groking it right (like I need to ask around these parts
I will be impressed by Firefox 3 if it doesn't crash every time it hits some JavaScript-laden site, or has simply been running too long with poor memory management, or has too many extensions operating.
Granted, Firefox 2 IS pretty stable compared to earlier versions - but not as stable as it should be.
I still don't understand why most desktop apps are reasonably stable, but everything that touches a network is utterly unstable. I mean, I know that the vagaries of network data means you get data coming in that could be any kind of binary crap, that the issue of managing state is a problem, that Web servers are constantly sending crap data and screwing up, etc. But still, the least stable apps are always network apps. This has been true since back in the BBS days and it hasn't gotten much better.
Richard Steven Hack - This sig is TOO GODDAMN SHORT TO DO ANYTHING USEFUL WITH! MORONS!
Regarding memory consumption, most OSs have reasonable copy on write [http://en.wikipedia.org/wiki/Copy-on-write] memory management for both code and data segments. So if you fork a process, only the data blocks that are updated with new information consume additional memory blocks. New data blocks are essentially different web pages or java script which would occupy additional memory anyway. There is a little overhead to manage the pointers and slightly less efficient memory block usage due to the possibility of half empty tails for each process but I think it would be a reasonable trade-off for web page isolation especially when you factor in the instability of plug-ins.
When you think about the amount of interprocess communication that would be necessary between the independent "forked" browsers and the main skin it should be fairly minimal. Most tabs operate independent of each other. Occasionally a web app launches and references interaction on a pop-up pages, but even that amount of communication should be minimal. The heaviest data path would be for the actual web page. With more OSs moving to GL based environments even this could be minimized. A browser process could display to a GL plane and pass the plane ID to the managing skin. All the managing skin has to do at that point to tell the window manager to incorporate the active plane ID and let it do all the heavy lifting.
Threading is much more essential for applications that require significant inter-thread communication or the ability to launch and reap hundreds of threads for many sub tasks. The problem with threads is a bad thread can still take down the entire application.
There is nothing worse than having one bad web app take away all the other work you have opened at that time. This is exactly why I had to move to Firefox as opposed to Mozilla or Seamonkey. With these web browsers a bad web app can also take down your email and any web pages you happen to be editing.
Hope this helps.
-rd
What a fool believes, he sees, no wise man has the power to reason away.