Slashdot Mirror


Firefox 18 Beta Out With IonMonkey JavaScript Engine

An anonymous reader writes with a quick bite from The Next Web about the latest Firefox beta, this time featuring some under-the-hood improvements: "Mozilla on Monday announced the release of Firefox 18 beta for Windows, Mac, and Linux. You can download it now from Mozilla.org/Firefox/Beta. The biggest addition in this update is significant JavaScript improvements, courtesy of Mozilla's new JavaScript JIT compiler called IonMonkey. The company promises the performance bump should be noticeable whenever Firefox is displaying Web apps, games, and other JavaScript-heavy pages."

182 comments

  1. So it'll actually be respectable on Facebook? by VanessaE · · Score: 0

    Heh, subject says it all.

    Also, first post?

    1. Re:So it'll actually be respectable on Facebook? by zrbyte · · Score: 4, Funny

      aaaand I'll be abel to boot Linux faster!

    2. Re:So it'll actually be respectable on Facebook? by hairyfeet · · Score: 1, Interesting

      Its horrible performance on FB is one of the reasons my customers are using a Chromium variant right now. Does anybody know how it does as far as CPU loading? I have to support a lot of low power systems and since around FF V6 its been completely unusable, especially for watching SD video, but even opening new tabs can cause FF to slam the CPU to 100%.

      Anyway i don't mess with beta software anymore (enough bugs in the releases, thanks ever so) but if anybody has a low power AMD bobcat or Intel Atom I would like to know how this compares to Chrome.

      --
      ACs don't waste your time replying, your posts are never seen by me.
    3. Re:So it'll actually be respectable on Facebook? by Anonymous Coward · · Score: 0

      blah blah blah my customers blah blah blah buy AMD

    4. Re:So it'll actually be respectable on Facebook? by rishistar · · Score: 0

      There will be issues on 64-bit Windows as it seems 64-bit Firefox isn't being supported anymore...
      http://arstechnica.com/information-technology/2012/11/64-bit-firefox-for-windows-should-be-prioritized-not-suspended

      --
      Professor Karmadillo Songs of Science
    5. Re:So it'll actually be respectable on Facebook? by dririan · · Score: 1

      That was about the 64-bit build, running exclusively in 64-bit mode. Running the 32-bit version of Firefox on 64-bit Windows is still fully supported. The big problem with 64-bit Firefox on Windows was that, unlike Linux, plug-in developers (read: Adobe) didn't port their plug-ins to 64-bit, and only released them in 32-bit variants.

    6. Re:So it'll actually be respectable on Facebook? by serviscope_minor · · Score: 3, Informative

      I have to support a lot of low power systems and since around FF V6 its been completely unusable, especially for watching SD video, but even opening new tabs can cause FF to slam the CPU to 100%.

      Well, yes. I have an eee 900 (which is single core). I found firefox and chromium both to be pretty pathetic at playing video. Even in HTML 5. Actually, I'm not sure how they manage to make such a meal of it. It's really terrible. They're basically no better than flash. Perhaps even worse.

      I used to use flashvideoreplacer, but that doesn't work any more. I now use a greasemonkey script which basically replaces youtube videos (perhaps others?) with MPlayer, and it can decode 720p just fine in realtime.

      Firefox can slam the CPU to 100%. Chromium is multiple threaded, so it can slam the CPU to 100% with a load average of 57 making the machine grind completely to a halt.

      Chromium feels a bit snappier in that the UI elements give visual feedback quicker, but it doesn't actually seem to get the pages up faster. I switched back to firefox after a while.

      --
      SJW n. One who posts facts.
    7. Re:So it'll actually be respectable on Facebook? by Anonymous Coward · · Score: 0

      wrong person dipshit.

    8. Re:So it'll actually be respectable on Facebook? by hairyfeet · · Score: 1

      Uhhh...last I checked there is a 64 bit Flash for Windows and it runs just fine...I have it installed in Pale Moon X64 on my hexacore at home.

      But that don't change the fact that since chrome came out and started drinking their milkshake FF has gone downhill with regards to low power devices, as I said i have to support all kinds of systems, from the latest multicores to Atoms and older office machines and FF since V6 has just been terrible on these. SD video is a slideshow, opening new tabs, hell even scrolling bookmarks can cause FF to peg the CPU at 100% and even make the UI unresponsive, that is simply unacceptable.

      So while i hope that they fix it, as I have yet to find a replacement for the FF "download as MP4 or FLV" YouTube plugin which some of my home users love, so far I've tried every new release, as well as several variants like Waterfox and IceDragon and Pale Moon and so far no dice, they ALL peg the CPU, which leads me to believe its a problem with Gecko.

      --
      ACs don't waste your time replying, your posts are never seen by me.
    9. Re:So it'll actually be respectable on Facebook? by Lennie · · Score: 1

      Totally agree on that one, I have the same experience. Well, I never switches to Chrome, but everytime I try it out that the above conclusion is mine too.

      --
      New things are always on the horizon
    10. Re:So it'll actually be respectable on Facebook? by Lennie · · Score: 1

      So which software, or pretty much any software really became more efficient ?

      Yes, many things get optimised in software, but the total "product" usually supports more hardware or software combinations and has more features and thus becomes slightly more bulky when you look at them year over year.

      --
      New things are always on the horizon
    11. Re:So it'll actually be respectable on Facebook? by UltraZelda64 · · Score: 1

      That was about the 64-bit build, running exclusively in 64-bit mode. Running the 32-bit version of Firefox on 64-bit Windows is still fully supported. The big problem with 64-bit Firefox on Windows was that, unlike Linux, plug-in developers (read: Adobe) didn't port their plug-ins to 64-bit, and only released them in 32-bit variants.

      Which means potentially better security in a Windows program version than a Linux version for once, and one less thorn in the side of Windows/Firefox users. But no no no... Mozilla can't just allow that. That would be just too much of a good thing for their users.

    12. Re:So it'll actually be respectable on Facebook? by Billly+Gates · · Score: 1

      I haven't noticed any problems.

      Is it recent? Firefox had these issues when 3.6 and 4.0 were out 1.5 years ago, but not anymore. Benchmarks show Firefox has greatly improved and on my own computer using peacekeeper benchmark had a higherscore for Firefox than Chrome. Perhaps your customers are not having hardware acceleration enabled for some reason in FF? Chrome is enabling more and more of these GPU features on by default. Older intel 910 or 8x is so buggy it is not worth turning it on and then the video is choppy. A good incentive there Hairy to sell a new system ;-)

      I do not have a bobcat or an Atom but my old PhenomII shows both about the same in performance. However, under VMWare Firefox 3.6 on this is a POS. Disk access is slower because it is in a virtualized envrionment but it is just sluggish on my same system.

    13. Re:So it'll actually be respectable on Facebook? by Crosshair84 · · Score: 1

      I have yet to find a replacement for the FF "download as MP4 or FLV" YouTube plugin

      I have found one that works great in Comodo, but I only have it on my home PC. I'll tell you what it is called and where to get it when I get home. It might require a manual install, but other than that it's effectively bulletproof as far as I have found.

    14. Re:So it'll actually be respectable on Facebook? by hairyfeet · · Score: 1

      If it has the single "download" button in YouTube I'd sure appreciate it Crosshair, i have a lot of older customers that like to download little funny videos and send them to their relatives (yes I know they could just send the links, but they don't want to, they want to send the videos, and as the tech its my job to make sure they can do what they want to do with their machine, even if its dumb) and frankly I haven't found anything that is THAT simple, i install it and they just have a big "download" button under the video, hell my mom could figure out how to use that.

      The few I've found were not only a PITA to install but frankly required a bunch of steps to get the video, that isn't gonna cut it with home users, simpler the better is the way to go. So if you know a way i'm all ears, just shoot it in an email to the address in my UID if you don't mind as I'm getting a lot of posts responded to so this one is probably gonna be buried soon. Thanks.

      --
      ACs don't waste your time replying, your posts are never seen by me.
    15. Re:So it'll actually be respectable on Facebook? by dririan · · Score: 3, Interesting

      Yes, apparently they did, but it's still quite recent (and only works on Windows 7). Naturally, it took them years to come out with it after 64-bit Windows came out (yes, I'm counting XP x86_64, it was a 64-bit desktop OS). Whether or not Adobe came out with it now, they're hardly the ONLY plug-in developer. The problem of plug-ins not being ported to 64-bit browsers on Windows is hardly just Adobe's. That being said, I'm not sure why you think Flash is the only plug-in Adobe makes.

      Yes, we get it, you're a person that works on everything, and so you know what you're talking about. That's nice. Some of us have been using Fx just fine (including myself), only we don't complain about it every time it comes up on Slashdot. You're not going to convince me to stop using Slashdot because you named a list of machines you work on and say that Firefox has been awful on every single one. If Fx stops working well on my machines, then I'll switch, but I'm not going to switch just because someone says Fx doesn't work for them.

      If you're talking about HTML5 video then fine, but if you're talking about Flash, why in the hell are you blaming the browser for that? Naturally, on the three computers I regularly use, I have exactly zero of the problems you mention, with both HTML5 and Flash videos. Anecdotes are completely pointless, because everyone can have different experiences. Yours aren't special because you can list a lot of computers.

    16. Re:So it'll actually be respectable on Facebook? by dririan · · Score: 1

      The security bit is nonsense. ASLR and DEP are always opt-in, for both 32-bit and 64-bit, unless (except for DEP) the user changes it to cover all programs. There's nothing else I can find that would cover application security and be different for 32-bit and 64-bit programs.

      Apparently Flash has been ported to 64-bit browsers on Windows, but that's not the only plug-in out there. Why would they maintain a piece of software that no one would use, because they can't do X on it?

      And how would it be one less thorn in the side of Windows Firefox users? I use 32-bit Firefox on 64-bit Windows constantly, and have no problems whatsoever with it.

    17. Re:So it'll actually be respectable on Facebook? by Crosshair84 · · Score: 1

      OK, here it is, Ultimate YouTube Downloader for Chrome.

      http://www.chromeextensions.org/utilities/ultimate-youtube-downloader/

      It requires a manual install, but that is it. You click on the download button and select from the drop-down which quality/format you want and it automatically puts the video title as the file name, after adjusting for characters that can't be in file names of course, and then saves it to wherever you have the browser setup to download files to.

      I don't see how it could be any simpler, other than an option to automatically download one select format/resolution. Hope it works for what you need.

    18. Re:So it'll actually be respectable on Facebook? by hairyfeet · · Score: 1

      Thanks Crosshair, I slapped it on the flash i keep in my wallet so when i come across those customers that just love the FF extension i can just install that one in Dragon instead.

      I personally don't need it as I switched to Jaksta streaming media converter a couple of years back, well worth the money IMHO as it'll download from pretty much any site, even captures streams. But for my customers that live for YouTube downloader I'll have it ready to go, thanks.

      --
      ACs don't waste your time replying, your posts are never seen by me.
    19. Re:So it'll actually be respectable on Facebook? by Crosshair84 · · Score: 1

      You're welcome, I'll check out Jaksta and see what that does. Been plenty of videos I've been unable to download that have disappeared later on, so such a tool could be handy.

    20. Re:So it'll actually be respectable on Facebook? by hairyfeet · · Score: 1

      What you do with Jaksta is launch it and then click on whatever video you want to download and pretty much if you can play it in your browser Jaksta can download it, even stuff that is only supposed to be streamed, be it flash or even WMV.

      I'm pretty sure that Jaksta has a trial of their media recorder so you can give it a spin and see if its for you. I've had it for a couple of years now and so far i have yet to find a video it can't download.

      --
      ACs don't waste your time replying, your posts are never seen by me.
    21. Re:So it'll actually be respectable on Facebook? by UltraZelda64 · · Score: 1

      Whoosh. Apparently you don't get the point. I was slamming Flash, Java and similar plug-ins.

      Here, let me try to spell it out for you: The 64-bit version of Firefox doesn't support insecure plug-ins; therefore, unless you would run NoScript anyway, the 64-bit version of Firefox is more secure. But apparently those shiny insecure features are more important to Mozilla than the security benefits. Get it?

    22. Re:So it'll actually be respectable on Facebook? by dririan · · Score: 1

      If you have to explain a whoosh that much, is it really a whoosh? One generally only says whoosh when it's pretty clear what you're trying to say.

      Also, how does that make sense to say "one less thorn in the side of Windows/Firefox users" when users normally want the plug-ins (or else they wouldn't install them)? Next time, before you say whoosh, try to make your point clear so that someone that isn't you can easily figure out what you're getting at.

    23. Re:So it'll actually be respectable on Facebook? by UltraZelda64 · · Score: 1

      Wow. I didn't know there were such strict guidelines (or any at all) on the use of fucking Internet slang here on Slashdot.

    24. Re:So it'll actually be respectable on Facebook? by dririan · · Score: 1

      There's this thing called "common courtesy" which includes "not criticizing someone for not getting something you didn't make clear in any way at all, and half of which still doesn't make sense." Of course, nothing requires you to be courteous on Slashdot, as you astutely pointed out, but that doesn't mean it's not a good idea.

  2. So far by ArchieBunker · · Score: 2

    None of these improvements feel any faster. Pages still load as quickly as they did a decade ago (provided your connection was fast). Why can't they make anything render faster?

    --
    Only the State obtains its revenue by coercion. - Murray Rothbard
    1. Re:So far by Billly+Gates · · Score: 3, Interesting

      None of these improvements feel any faster. Pages still load as quickly as they did a decade ago (provided your connection was fast). Why can't they make anything render faster?

      Have you used Firefox 3.6 recently? It sucks very badly which is why myself and Hairyfeet been promoting Chrome for 2 years. Run it on a VM and IE 9 is many multitudes a better browser. 10 years ago IE 6 broke all records in javascript performance. Run that today and slashdot and its default MSN homepage will crash within 20 seconds as the javascript interpretter can only run in 20 megs or ram and will crash.

      Old macs at my employer in the breakroom running Safari 1.x from 2006 is simply not even usable as yahoo.com takes 5 minutes to load.

    2. Re:So far by Cinder6 · · Score: 1, Insightful

      I find this an odd comment. I definitely notice pages rendering faster, and I can see this effect simply by changing browsers. Some are genuinely faster than others all around, while others have different rules for when they begin to display content.

      With that said, I'm getting kind of tired of all the Firefox posts. Why do we get a post for seemingly every Firefox release, including betas, and no mention at all of Chrome updates? (Note: I'm not advocating for more "stories" about Chrome.) Maybe everyone's still in the mindset of Firefox getting an update only twice a year (or maybe this site's Firefox usage justifies it). Yeah yeah, I know, "don't read it if you don't like it" and all, but it's still a bit perplexing.

      --
      If you can't convince them, convict them.
    3. Re:So far by epyT-R · · Score: 4, Insightful

      javascript was never meant to do the things it's being used for now, that's why sites are so damned slow now.

    4. Re:So far by epyT-R · · Score: 0

      the same reason you are I guess..genetic luck of the draw..

    5. Re:So far by Jonah+Hex · · Score: 1

      I'm still going through loading my tabs, and initial page load seems slower but of course it could just be my connection acting up. Subjective experience means much to the individual user but I can't tell yet that anything is really faster. *shrug* - HEX

    6. Re:So far by Billly+Gates · · Score: 1

      Ie 6 as much as we hate it defined WEB 2.0 with inventing AJAX. Right now it is a platform whether we like it or not which is why old browsers crash on news websites. It is the framworks that are loaded taking gigs of ram as the browser is the OS.

      Firefox 18 and Chrome can make it run decent. We need a another language in the browser I do agree but with smart phones and applets running we need a platform as they simply use the HTML 5 browser for their UI and do ajax for the logic.

    7. Re:So far by NightHwk1 · · Score: 4, Insightful

      What sites are so damned slow? It's not the Javascript in most cases, it's the asset loading. The tubes are still the bottleneck on the web.

      If anything, Javascript is speeding things up. AJAX content updates without a full page refresh are commonplace now, and there are more and more sites that are mostly client-side, using frameworks like Backbone.

    8. Re:So far by Andy+Prough · · Score: 0

      WTF does FF18 have to do with Welsh pork liver patties? Idiot.

    9. Re:So far by epyT-R · · Score: 1

      Yeah I know, I just don't like it. 95% of the security problems we have start with the scriptable browser. If you want an interactive application that talks to remote data sources, make one and distribute it. It's not like the current stack's attempts at virtualization/abstraction have proven any more secure. It just makes remote access applications slower and take 10x the resources it should.

    10. Re:So far by Anonymous Coward · · Score: 1

      Well duh. We just upgraded to FF 17. FF 3.6 must have been 12 years ago. Of course it's slow today (or even two years ago when FF 15 must have been the norm).

    11. Re:So far by Anonymous Coward · · Score: 0

      which is why myself and Hairyfeet

      I know how you get hairy palms. But how the hell do you get hairy feed? (shudders)

    12. Re:So far by afaik_ianal · · Score: 1

      Licking his palms.

    13. Re:So far by Anonymous Coward · · Score: 1

      Firefox is open about their updates and this is significant - a whole new JIT compiler.

      This is an area that has been sorely needing update, people were complaining about the speed.
      So notifying them that a significant speed bump occurs in the new version is HELPFUL INFORMATION.

      Google manages their updates differently and they do usually get articles when significant milestones are reached.
      If they re-did their JIT compiling and it resulted in a speed boost, you don't think you'd hear about it?
      Maybe the problem is really just a lack of attention paid?

    14. Re:So far by tlhIngan · · Score: 4, Informative

      What sites are so damned slow? It's not the Javascript in most cases, it's the asset loading. The tubes are still the bottleneck on the web.

      If anything, Javascript is speeding things up. AJAX content updates without a full page refresh are commonplace now, and there are more and more sites that are mostly client-side, using frameworks like Backbone.

      Well, let's see. Go to a site like Engadget and make sure your javascript allow settings are set to show the page comments. Now open 24 hour's worth of news postings in tabs. After about halfway through, your browser will start to lag with CPU pegged. It's not loading content off the Internet if your CPU is pegged. But it's just all the instances.

      Or you can replicate it with a busy thread like one of their "post a comment to enter in a draw), where it gets around 200 comments a minute. You'll find the browser noticably slows down as the javascript is constantly running.

      Repeat same with a site like Gizmodo (probably an even worse offender). I can't open more than 10 tabs at a time before the browser locks up for a few minutes at 100% CPU.

      Latest firefox and Chrome. Websites just gobble up the Javascript processing. Those sites are unusable on weaker javascript engines.

    15. Re:So far by Darinbob · · Score: 3, Insightful

      Or we just turn back to clock to the good old days where web sites were about presenting information simply with a simple markup language instead of trying to be a full application.

    16. Re:So far by PNutts · · Score: 0

      Well duh. We just upgraded to FF 17. FF 3.6 must have been 12 years ago. Of course it's slow today (or even two years ago when FF 15 must have been the norm).

      IIRC FF 3.6 was about 9 months ago. Ba-dum.

    17. Re:So far by DNS-and-BIND · · Score: 3, Insightful

      Because all the speed improvements were used by developers not to give the user a better experience, but to develop ever-more-complex pages. "Look, this new browser is 50% faster. Now, we can make a super-complex web page and still get the old speed!" Repeat for every speed increase.

      --
      Shutting down free speech with violence isn't fighting fascism. It IS fascism!
    18. Re:So far by Billly+Gates · · Score: 1

      Shit if you have IE 6 just open it in a VM and the default MSN aka nbcnews.com will freeze within 20 seconds guaranteed! It is the ad network's javascript with "Add this to your facebook when you LIKE IT!" that is designed for more modern browsers.

      IE 6 takes about a full minute to render on my FIOS on a modern system before getting an error message dialog box asking if I want to report this crash to Microsoft.

      I give credit Firefox 3.x and Chrome have upped their gain. Even the the retarded stepchild IE 8 can at least load but IE 9 much more closer to a modern browser with this same script.Google maps is a popular stress test. I wont even bother to load it undre IE 6 hahaha. Under IE 8 it slowly and I mean slowly works if you have patience compared to IE 9, Chrome and Firefox. IE 10 should be out soon which is somewhat modern but just like the CPU wars in our past as soon as a great CPU and ram become available a race to use inquires making your once fast 386 obsolete FAST. Same is true with browsers.

    19. Re:So far by Anonymous Coward · · Score: 0

      Insightfull my ass. Javascript is a generic purpose language now, and has been redesigned, heavily optimized and turned upside down to allow for the things it's being used now.

      This is not the Javascript of your grandfathers, and it's not responsible for the huge page sizes and the low latency and bandwidth of your ISP.

    20. Re:So far by Billly+Gates · · Score: 2

      FF 4 came out in March 2011. I remember the day vividly. That is 18 months old. 12 years ago we were waiting for the all so aweome IE 6 with the correct box model ohh and ahh.

      That might not seem a long time ago to many here but the way the browser wars 2.0 are heating up it is becoming the next IE 6 of FF FAST! A world of difference in just a year and a half if you benchmarked both.

    21. Re:So far by wmac1 · · Score: 4, Informative

      Engadget has heavily linked in components from other websites in the form of inline-frames , advertisement, images, tracking etc. They have also heavily used Javascripts, transparent layers etc. One would think they purposefully applied "worst practices".

      Having either DNT+ or AdBlock (with privacy filters) will stop the commenting system altogether.

    22. Re:So far by wvmarle · · Score: 4, Interesting

      Slashdot is a prime example of a site heavily using javascript.

      Ubuntu 10.04 LTS stuck to Firefox 3.6 for a long time. When loading a /. page, particularly one with many comments, it often gave me the "script is taking too long to complete" warning message. It would eventually complete, but took long. When Ubuntu finally replaced the browser with a newer Firefox, that problem was solved. It now renders reasonably fast.

      And considering I have ads disabled, it is really /. itself that's so demanding.

    23. Re:So far by Anonymous Coward · · Score: 1

      Disabling javascript, except in cases where it's really needed (or useful), can make quite a difference. Most sites work fine and load quicker as a result.

    24. Re:So far by Anonymous Coward · · Score: 0

      It's the Javascript. I routinely use a three year old browser. Many sites freeze the browser for several seconds after each page load and sometimes after every interaction. Many sites don't work right at all. IMHO there must be some "we don't care how long this takes on older browsers, as long as the result is the same as on current browsers" kind of workaround in a major Javascript library which triggers the stall. Old browsers which were the herald of standards compliance just a few years ago are basically unusable on the modern web.

    25. Re:So far by Anonymous Coward · · Score: 0

      Also, for all the talk of optimization, libraries (e.g., jQuery), are -significantly- slower than native JavaScript. Check out jsPerf.com and see for yourself.

    26. Re:So far by Anonymous Coward · · Score: 0

      i'm using firefox 3.5 right now like i always do, slashdot works fine.

    27. Re:So far by serviscope_minor · · Score: 1

      If anything, Javascript is speeding things up. AJAX content updates without a full page refresh are commonplace now,

      Yeah, that was always the idea. And sure, the AJAX reload on full gmail is faster than a full refresh. That's not surprising becahse the code required to run the whole program is quite large. However on really slow connections, the old fallback HTML interface works faster, and gmail automatically switches.

      Of course it means you can have massive pages without insane repeated load times, but small HTML only pages often run faster even if the UI presented is not as good.

      Another good example is theregister. Very simple mostly static pages (works fine with JS disabled) and blindingly fast load times. It makes it very pleasant to read news there.

      --
      SJW n. One who posts facts.
    28. Re:So far by haruchai · · Score: 1

      What are your system specs?
        I've been hearing complaints from various Slashdotters for a while but can't replicate their issues.
      I usually run the PortableApps FF package with TreeStyleTabs and a few other add-ons but it's only with this latest FF17 that it's been at all crashy - I've had a few in the last week when I get above 10 windows & 70 tabs.

      I've routinely exceeded 15-20 windows / 80 - 175 tabs for a couple years with as many as 5 simultaneous http downloads, 3 - 5 YouTube streams, Facebook, Slashdot, etc all at the same time.

      --
      Pain is merely failure leaving the body
    29. Re:So far by Anonymous Coward · · Score: 0

      When Ubuntu finally replaced the browser with a newer Firefox, that problem was solved.

      The problem was solved long before (for those with more than one braincell) when they added the firefox current version ppa to 10.4

    30. Re:So far by Jah-Wren+Ryel · · Score: 1

      Having either DNT+ or AdBlock (with privacy filters) will stop the commenting system altogether.

      Which is soooo ironic. If you are blocking their ads, the only way you can help them is to contribute to the community so that more people without ad-blockers will spend time loading pages with ads. Plus, it is reasonable to assume that people blocking ads are smarter than your average dog on the internet so their comments might be higher calibre than the hoi polloi.

      --
      When information is power, privacy is freedom.
    31. Re:So far by yahwotqa · · Score: 1

      Nope, no javascript on my slashdot. :) Using the older interface also has the benefit of preventing accidental moderation (you still have to click the Moderate button).

    32. Re:So far by LordLimecat · · Score: 1

      Because by and large web developers hate you and see it as their duty to load your CPU as much as they can.

      You want someone to blame, blame the folks who see it as their duty to match JS engine improvements with more crap on the webpage.

    33. Re:So far by drinkypoo · · Score: 1

      Plus, it is reasonable to assume that people blocking ads are smarter than your average dog on the internet so their comments might be higher calibre than the hoi polloi.

      They don't want those people commenting, if they did it would be clear how much smarter and better educated random yokels on the internet are than they are.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    34. Re:So far by gmack · · Score: 1

      Try loading the disk first. I find that FF does very poorly if there is too much disk activity to the point where even the menus lag. On an unloaded system it fantastic but it is the single worst preforming app on my system while the disk is busy. For myself, I mostly fixed the problem by going SSD.

    35. Re:So far by Kamien · · Score: 1

      Version 3.6, released on January 21, 2010
      http://en.wikipedia.org/wiki/History_of_Firefox

    36. Re:So far by ArcadeMan · · Score: 3, Insightful

      It's not really Javascript's fault, it's all the damn know-nothing Web monkeys out there.

      I'm checking the code of one website at the moment, and they're loading all that crap:
      mootools-core.js
      core.js
      caption.js
      jquery-1.6.1.min.js
      jquery.bxSlider.js
      jquery.js (yes, jquery AGAIN along with some checks to see if it's already loaded -WTF)
      script.js

      There's also the following inline javascript functions:
      - something to add caption to images on page load (calls caption.js)
      - something to track page views

      Why do they load all this crap? There's an image-changing mouse-over effect on the Facebook and Twitter icon, and a cross-fade of images on the home page. That's it.

      It's no wonder people think Javascript is crap when it's being used by people who don't even understand the kind of overload they're putting on the browsers.

    37. Re:So far by fatphil · · Score: 1

      > content updates without a full page refresh are commonplace now

      Wait a sec! Didn't we have those in the 90s? They were called "frames".

      --
      Also FatPhil on SoylentNews, id 863
    38. Re:So far by edxwelch · · Score: 1

      Actually, javascript is a big problem for smartphones. Most sites are using about half a dozen javascript libraries. Every function in each library uses memory (even if the web page doesn't call the function). So, that adds up to a lot memory and means that your smart phone browser will eventually crash when it runs out of memory

    39. Re:So far by Lawrence_Bird · · Score: 1

      "Having either DNT+ or AdBlock (with privacy filters) will stop the commenting system altogether." Thats BS. What will stop the comment system is NoScript until you unblock aol and fyre. AdBlock and DNT are not the culprits and I have both on with no Engadget related exceptions.

    40. Re:So far by Anonymous Coward · · Score: 0

      None of these improvements feel any faster. Pages still load as quickly as they did a decade ago (provided your connection was fast). Why can't they make anything render faster?

      Moore's Law: Every 18 months hardware doubles in speed.
      Gates' Law: Every 18 months software speed halves.

    41. Re:So far by KingMotley · · Score: 2

      Not sure what you think the problem with that is actually. Yes, loading jquery a second time is bad and should be removed. It appears that caption.js relies upon mootools, and I'm not sure what core.js is.

      The REAL problem is HTML5/CSS3 committees not getting off their collective asses and finalizing the spec. Then waiting for the browsers to all actually implement it, and then finally waiting for people to upgrade to those browsers. The last part being the most important as many refuse to upgrade even to browsers that (fully) support older standards.

      This causes the need for all these so called frameworks that fill in all the missing pieces and give a standard API for web developers to use. If HTML5/CSS3 were complete, all the browsers implement them, and people upgraded to them, then the vast majority of what these frameworks do is no longer needed. Plug ins like caption.js, and jquery.bxSlider.js would just use the native HTML5/CSS3 instead. I've coded enough javascript that breaks in interesting ways in different browsers that I don't even try anymore. I load jQuery and write to that API instead, and trust that either it works across all the browsers, or it will be fixed faster (and less wasted time on my part) than if I did it myself. Those few times where I catch something, I file a bug with the jQuery team and then see if I can fix it myself or come up with a workaround.

    42. Re:So far by UnknownSoldier · · Score: 1

      > Why do we get a post for seemingly every Firefox release,
      Because at one time FF was the poster boy for open source. It gave what users wanted - an open source, HTML standards compliant, extendable browser.

      Old habits die hard around here.

      Sadly FF has jumped the shark by a) never fixing the memory leaks, b) broke plugins, c) fucked the UI by removing resizable dialogs such as the bookmark menu, etc. Sure it is getting faster, and taking the initiative in supporting the latest HTML5 standards such as WebGL but Mozilla has lost focus on what users want(ed) in a browswer.

      i.e. The "Tools > Task Manager" in Chrome is the perfect _one_ reason to abandon FF and switch to Chrome -- you can see how much memory EVERY tab is using, instead we are stuck with the shitty about:memory and no way to tell the CPU and MEM usage per tab.

    43. Re:So far by UltraZelda64 · · Score: 1

      Luckily, this is where NoScript comes in handy; it can help protect against nearly all 95% of those bad scripts . Unfortunately, with so many sites requiring scripts just to properly load the page, there will undoubtedly be several that you need to enable scripting for if you really want to see their contents. But it still protects against a very large percent of them, and it will speed up your browsing at the same time.

      I do miss the good old days, when a web page really was a web page, and every once in a while there actually would be a little script to allow something small and simple that otherwise wouldn't be possible with plain HTML. Now, sites are virtually nothing *but* scripting, and they feel like bloated pigs just trying to load them. Kind of like certain operating systems...

    44. Re:So far by wmac1 · · Score: 1

      I don't have NoScript on my Firefox. I only have those two. Those two stop the inline frame and the tracking components of fyre.

    45. Re:So far by haruchai · · Score: 1

      Hmm, I have lots of disks of various types attached to my main PCs; I do lots of transfers between them but usually when I'm stepping away.
      I'll have to try some auto-transfers while I'm browsing to see how much impact it has.

      --
      Pain is merely failure leaving the body
    46. Re:So far by Anonymous Coward · · Score: 0

      How about keeping focus on the damn window i'm using.

      Seriously, middle click to open a new tab, if you've opened a new window it will frequently just jump to the other instance. WTF!??! Tried to move to chrome but their flipping addin wonked my excel 2003, so had to remove that POS as well. 20 years, no decent browser yet. Too many bs bells and whistles and not enough common sense (like why did you hide remove downloads automatically after downloading, about:mozilla or whatever the fuck it is IS NOT INTUITIVE).

    47. Re:So far by Anonymous Coward · · Score: 0

      Interesting. With Opera on Ubuntu 10.04 LTS on a 2005 Dell with Pentium M 740, I've never had that lag, never mind the message.

    48. Re:So far by Anonymous Coward · · Score: 0

      Well as long as the corps insistence on using ancient proprietary versions of IE it wont matter what the spec is.

      The big boss of any website will not accept any code that does not achieve 98% of the audience. With that in mind, the CIOs and beancounters can insist on using IE 8 until 2020 when Windows 7 expires as they know webmasters will bend over backwards using javascript hacks that ruin the experience for everyone.

      I do admit the problem is vastly getting better as newer intranet apps written for IE 8 can sometimes work in other browsers unlike IE 6. IE 10 has a standards compliant javascript and not JScript. I hope in a few years it will mean we can retire IE 8 which while much improved over IE 6 is still a thorn in the side of webmasters and the other 88% of web users who know better.

    49. Re:So far by Billly+Gates · · Score: 1

      Firefox 17 is leaps and bounds a better browser than Firefox 3.6. I guess one of the only good things with the new agile development. I have Firefox 3.16.12 for testing websites as many of my future users are going to be corps with lazy IT departments.

      Run what you do above and Firefox 3.6 will start crashing FAST. Hell go to a slashdot most discussed with +500 comments and click 5 - -1 load all comments? Firefox 3.6 will get a "Script non-responsive error message" and if this is a laptop you will hear the fans and feel the heat. Let alone +100 tabs?!

      My point was the web has changed in 10 years and as browsers progressed the user has not noticed besides websites look prettier without those ugly buttons and 4 colors and tables since CSS. 2009 is very recent but any browser from 2009 can't render all of the web well without having issues.

      I do not know what to do with IE and the corporate market anymore as they have change. But the fact is things are moving very very fast and browsers need to be agile hence, that even IE is going on an annual trac if rumors are correct.

    50. Re:So far by Billly+Gates · · Score: 1

      Many of us are webmasters and developers on here. A newer javascript engine or library is good to know.

      It also gives a great reason to approve to upgrade an ancient browser to the boss if you do professional IT. They love obsolete crappy platforms and wont budge unless you give them a business reason and case for those of us who are IT support people.

    51. Re:So far by Billly+Gates · · Score: 1

      > Why do we get a post for seemingly every Firefox release,
      Because at one time FF was the poster boy for open source. It gave what users wanted - an open source, HTML standards compliant, extendable browser.

      Old habits die hard around here.

      Sadly FF has jumped the shark by a) never fixing the memory leaks, b) broke plugins, c) fucked the UI by removing resizable dialogs such as the bookmark menu, etc. Sure it is getting faster, and taking the initiative in supporting the latest HTML5 standards such as WebGL but Mozilla has lost focus on what users want(ed) in a browswer.

      i.e. The "Tools > Task Manager" in Chrome is the perfect _one_ reason to abandon FF and switch to Chrome -- you can see how much memory EVERY tab is using, instead we are stuck with the shitty about:memory and no way to tell the CPU and MEM usage per tab.

      Actually Firefox has one of the lowest memory usages now as of version 13. I submitted that story and started using Firefox after a 1.5 year hiatus. On my own system it is faster than Chrome when benchmarked with peacekeeper. I hated the new development model but Firefox is now leaner and the new api for its plugins wont break each update either.

    52. Re:So far by haruchai · · Score: 1

      I'll give some of the older FF versions a try but my browsing habits have been pretty much the same for years. I used to run FF, Opera, IE and later Chrome all at once to keep up with my compulsive page opening but dropped Opera a couple years ago and only use IE for corporate stuff.

      By the way, only 2600 signatures on your Save IE6 petition?? I would have expected millions. :-)

      --
      Pain is merely failure leaving the body
    53. Re:So far by Lawrence_Bird · · Score: 1

      I would look elsewhere for your problem as I have both Adblock and DNT. I have posted four or five times since the change over to the fugly version a week ago. Any problems I have had are related to script blocking which is noscript related. I have not changed any defaults in AdBlock.

    54. Re:So far by wmac1 · · Score: 1

      You still insist on your own BS. When I disable adblock and DNT+ comments start to work. But even one of them will stop it. I inisited in my first post that I use Adblock WITH privacy filters (i.e. easyprivacy).

    55. Re:So far by KingMotley · · Score: 1

      I am hopeful that it will take a lot less time this time around. It seems the big players (google, yahoo, Facebook, and even MS itself) are doing what they can to move stuff forward.

      We had some push back when we wanted to drop support for IE 7, however, when we explained to the client that our usage for IE 7 was 7% and dropping fast they said that is what they use themselves. Then I told them that they needed to upgrade, and they came back with the standard crsp about company policy blah blah. I then asked what they were going to do in a couple months because google/YouTube, yahoo and Facebook are all dropping support in a month, and they said they would get back to me but we still needed to support it. A week later, I got notified that the company was rolling out win 7 across the board. Apparently the higher ups NEED to watch their kitty videos on YouTube trumps all. Who knew?

    56. Re:So far by Lawrence_Bird · · Score: 1

      No sir, it is you. I just added the 'easyprivacy' filter to ABP, went to engadget and posted a comment in the thread about "Phoenix project reincarnates WebOS as Nexus S app" In fact, I left a message for you timed coincident with this post now.

    57. Re:So far by Anonymous Coward · · Score: 0

      No way. Then you have to make a Windows version, a mac version, a linux version, an android version, and an ios version. That's way too much development for people like me. With HTML5/Javascript, I can make one application and it will run on any device with a reasonably up to date browser.

    58. Re:So far by jonadab · · Score: 1

      You can. There's an extension called NoScript. Page load times are very drastically reduced. In extreme cases, page load time can be reduced by a factor of a thousand or more. In the typical case, it's more like a factor of 20-50. (For some well-designed pages it barely makes any difference at all, but those aren't the pages that are giving you a problem.)

      What is really surprising is how many sites continue to work just fine without all their precious awesome Javascript. It's somewhere in the 95% range. For the others, you do have the option to make an exception (either temporarily or permanently) and allow their scripts to run, if you want. In most cases it's not worth it: you can just find the same content on a different site.

      There are really only two improvements I want to Javascript:

      First, and most important, clicking the stop button should IMMEDIATELY cause all scripts in the tab, as well as all other loading activity (including automatic refresh), to desist, be canceled, and NOT start up again (unless the user takes action specifically to reload the page). In other words, stop should mean stop and I should NOT have to click it over and over again on the same page. The stop button should Actually Work. Right away. At once. Without delay. The first time. Every time. I've wanted this since Navigator 3, IIRC. (Oh, and on a related note, I shouldn't have to put a third toolbar button between stop and reload just to prevent the stop button from turning into the reload button when clicked. Those are completely opposite buttons. They should never change into one another, EVER. Talk about user-hostile. Whoever implemented that conflation should have his commit privileges revoked forever, no matter how many other contributions he's made.)

      Second, I would really like the ability to allow scripts to run for some fixed (but user-configurable) amount of time, and after the designated amount of time they are suspended indefinitely and do not run any more (unless I make an exception for that site). If they complete during the designated amount of time, fine, but they do NOT automatically run again when a time runs out (again, unless I make an exception for that site). This could be an improvement to the NoScript extension. I think I'd set it to about a tenth of a second of CPU time per script up to a maximum of maybe two wallclock seconds per page. That's plenty of time for virtually all *legitimate* scripts and a great many superfluous ones besides, and it would barely have an impact on perf at all (as compared to not running the scripts, which is what I'm doing now).

      --
      Cut that out, or I will ship you to Norilsk in a box.
  3. Still slower than v8 by Anonymous Coward · · Score: 1

    I found it remarkable that the benchmarks only compared to earlier versions of the Firefox JavaScript implementation. A comparison with JavaScriptCore and v8 can be found at http://arewefastyet.com

    1. Re:Still slower than v8 by Fnkmaster · · Score: 2

      But only marginally so. In most benchmarks, it looks to be roughly on par with v8 now. In some, what, 20% slower? I think that's pretty respectable - compare with the situation a year or two ago when Firefox's Javascript engine was several times slower than v8.

    2. Re:Still slower than v8 by Anonymous Coward · · Score: 1

      But only marginally so. In most benchmarks, it looks to be roughly on par with v8 now. In some, what, 20% slower? I think that's pretty respectable - compare with the situation a year or two ago when Firefox's Javascript engine was several times slower than v8.

      So the browser written by Google is 20% better on the benchmark written by Google, but there's only much less difference on other benchmarks?
      Could that difference be related to the fact that the winning browser and the benchmark are written by the same company?
      And note that this doesn't need to be intentional manipulation: It may just be that Google's benchmark is the primary benchmark Google's JavaScript engine optimizations are tested against.

  4. flash still crashes firefox regularly on win 2012 by Anonymous Coward · · Score: 0

    still causing slowdown and frustration regardless of the speed in the javascript engine.

  5. Re:With this frequency, I can't keep up! by Tarmas · · Score: 2

    With Mozilla's frequency of spitting out new and newer versions, I just can't keep up!

    No problem, just turn automatic updates on.

    --
    Signature has left the building.
  6. Déjà Vu by Anonymous Coward · · Score: 0

    Seems like every other browser release advertises massive javascript performance boosts via some new engine.

  7. IonMonkey, JagerMonkey, TraceMonkey, SpiderMonkey by file_reaper · · Score: 5, Interesting

    I haven't kept track with the JIT's that have been in Firefox. I recall the days when TraceMonkey and JagerMonkey were added to boost performance. Could somebody recap or tell why Firefox is abandoning the older versions or redoing them? I'm truly curious as to what they learned, what worked and what didn't work. Are they finding new usage patterns that warrant a new JIT design? Thanks.

  8. JS Speed is the deciding factor in modern webpages by detain · · Score: 5, Insightful

    Its good to see the focus of this release being an attempt to increase javascript speed by leaps and bounds. Modern webpages often use JS that goes way beyond anything people did 10 years ago (Jquery for example) and the complexities of what people do with javascript noticably slow down most webpages considerably.

    --
    http://interserver.net/
  9. We can haz hardware acceleration? by Anonymous Coward · · Score: 0

    Can we get OpenGL based hardware accelerated rendering already?
    Things are really, really, slow, and every single other browser on my system out performs firefox by a factor of 30 MINIMUM.
    It's almost insufferable, scrolling's jerky and interactive graphs, like those on github, update less than once a second (and completely max out a CPU core whilst doing so).

    1. Re:We can haz hardware acceleration? by Anonymous Coward · · Score: 0

      Maybe you should get rid of your 10 year old computer.

  10. Re:JS Speed is the deciding factor in modern webpa by VortexCortex · · Score: 3, Interesting

    Its good to see the focus of this release being an attempt to increase javascript speed by leaps and bounds. Modern webpages often use JS that goes way beyond anything people did 10 years ago (Jquery for example) and the complexities of what people do with javascript noticably slow down most webpages considerably.

    When I first learned to program in BASIC, I used to think that people should try speeding up C and Assembly language -- Make EVERYTHING run faster... Then I learned C and x86 Assembly and I realized, you can't speed up assembly language -- It's a perfectly optimized language, there's nothing under the hood to tweak. You might select a better algorithm, or better use registers, but this isn't changing ASM. C can't really be hugely optimized either, it's pretty close to the metal, but there there are a few things one can do to increase performance in the space of its minimal abstractions; fewer with a mature compiler on mature hardware/platform...

    I always wondered what the deal was with JavaScript too, "Wow, it's getting faster, AGAIN?" Then I created my own languages and compilers and I learned: A sign of a horribly designed language is that the speed of its implementations can be repeatedly increased "by leaps and bounds"...

  11. I can already notice a big improvement .. by dextermanas · · Score: 1

    /. is now a little bit more bearable.

  12. They mean its runs on some macs by thogard · · Score: 1

    It won't run on about 55% of the macs out there.

    1. Re:They mean its runs on some macs by Anonymous Coward · · Score: 0

      why? You can't just post only that...

    2. Re:They mean its runs on some macs by wisty · · Score: 1

      I guess you are referring to the Mac OS X 10.5 requirement, or the need for x86?

      Roughly 10% of Macs run Tiger, or a previous OS. Leopard has ~20%, SL 50%, and the Lions 20% (rough figures). Many of those Leopards are PPC. I'd guess at most 30% of Macs (which are actually in use - not old TAMs or Classics, if there's even a significant number of those) can't run Firefox.

    3. Re:They mean its runs on some macs by Anonymous Coward · · Score: 0

      It won't run on about 55% of the macs out there.

      Go and use Safari and stop whining. You wanted the Apple Experience.

    4. Re:They mean its runs on some macs by thogard · · Score: 1

      Apple has reported that 55% of the people who can run Lion are not running Lion. For most users, there is no reason to upgrade between major versions of OS X and since the change between 10.5.8 and 10.6.3 is about the change between the first 50 patches to service pack 2 for XP, I find it odd that a version isn't built since all it should take is not using xcodes default settings.

  13. Re:With this frequency, I can't keep up! by Anonymous Coward · · Score: 0

    Maybe you're on the wrong release channel.

    Oh, and because that's what the devs enjoy more.

  14. Re:IonMonkey, JagerMonkey, TraceMonkey, SpiderMonk by MSG · · Score: 1

    They aren't being replaced. Each of these codenames is an additional optimization layer. The performance enhancements are cumulative.

  15. Re:IonMonkey, JagerMonkey, TraceMonkey, SpiderMonk by Turnerj · · Score: 5, Informative

    Wikipedia goes into a bit of detail about it but in basic summary...

    TraceMonkey was the first JIT compiler for SpiderMonkey released in Firefox 3.5.

    JagerMonkey is a different design on TraceMonkey which outperforms it in certain circumstances (Some differences between TraceMonkey and JagerMonkey)

    IonMonkey is another attempt at better perfecting the idea of JagerMonkey allowing even greater optimisations under particular circumstances.

    However TraceMonkey, JagerMonkey and IonMonkey are part of SpiderMonkey as JIT compilers, not a replacement of SpiderMonkey itself.

  16. Re:IonMonkey, JagerMonkey, TraceMonkey, SpiderMonk by Anonymous Coward · · Score: 0

    Mozilla had the first JavaScript engine (SpiderMonkey) and the first JavaScript JIT (TraceMonkey), so it's not surprising that they've had more changes. Their development process is also much more transparent than that of other vendors, so their codenames get more visibility.

    Bear in mind that Webkit's JavaScriptCore has had SquirrelFish and SquirrelFish Extreme JITs, Opera has had Futhark and Carakan, and even relative newcomer V8 has had a new Crankshaft JIT added. Mozilla is by no means the odd one out, optimising JavaScript is still a relatively young field and people are still working out the best way to do it.

  17. Re:IonMonkey, JagerMonkey, TraceMonkey, SpiderMonk by Anonymous Coward · · Score: 1

    The big difference with IonMonkey is that it adds an IR (intermediate representation) stage. That allows for much better and more modular optimizations at the cost of making compilation take significantly longer. The idea is that the JägerMonkey JIT has faster start-up time and will be used for not-as-long-running code while IonMonkey will be used to more heavily optimize very long running code.

  18. Re:IonMonkey, JagerMonkey, TraceMonkey, SpiderMonk by Anonymous Coward · · Score: 0

    Because SpiderMonkey had too much JagerMonkey and ran out of IonMonkey so couldn't finish TraceMonkey?

  19. Re:IonMonkey, JagerMonkey, TraceMonkey, SpiderMonk by BZ · · Score: 3, Informative

    That's not quite true.

    TraceMonkey has in fact been removed, and JaegerMonkey may be too once the new baseline JIT being worked on now is done.

  20. Re:JS Speed is the deciding factor in modern webpa by dmomo · · Score: 1

    I'm not so sure that the Javascript (well, EMCA Script) LANGUAGE is the problem. The challenges with respect to rendering speed have more to do with the DOM and the interaction with the browser itself. The DOM is a bulky beast. When javascript listeners are assigned to page elements the code can in turn alter the DOM creating or destroying elements, all of which can trigger javascript functions, any of which can create or destroy more DOM elements. It's a properly tangled mess. Memory management in this environment is no small task.

  21. Re:IonMonkey, JagerMonkey, TraceMonkey, SpiderMonk by BZ · · Score: 5, Informative

    A short summary:

    1) TraceMonkey turned out to have very uneven performance. This was partly because it type-specialized very aggressively, and partly because it didn't deal well with very branchy code due to trace-tree explosion. As a result, when it was good it was really good (for back then), but when it hit a case it didn't handle well it was awful. JaegerMonkey was added as a way to address these shortcomings by having a baseline compiler that handled most cases, reserving tracing for very hot type-specialized codepaths.

    2) As work on JaegerMonkey progressed and as Brian Hackett's type inference system was being put in place, it turned out that JaegerMonkey + type inference could give performance similar to TraceMonkey, with somewhat less complexity than supporting both compilers on top of type inference. So when TI was enabled, TraceMonkey was switched off, and later removed from the tree. But keep in mind that JaegerMonkey was designed to be a baseline JIT: run fast, compile everything, no fancy optimizations.

    3) IonMonkey exists to handle the cases TraceMonkey used to do well. It has a much slower compilation pass than JaegerMonkey, because it does more involved optimizations. So most code gets compiled with JaegerMonkey, and then particularly hot code is compiled with IonMonkey.

    This is a common design for JIT systems, actually: a faster JIT that produces slower code and a slower JIT that produces faster code for the cases where it matters.

    https://blog.mozilla.org/dmandelin/2011/04/22/mozilla-javascript-2011/ has a bit of discussion about some of this.

  22. Re:With this frequency, I can't keep up! by Anonymous Coward · · Score: 0

    No problem, just turn automatic updates on.

    Only works on systems where the user runs as admin / root. You don't do that, do you?

  23. Re:JS Speed is the deciding factor in modern webpa by madsdyd · · Score: 4, Insightful

    I don't understand why this comment got +5. It is pretty misguided.

    The statement:

    > I realized, you can't speed up assembly language -- It's a perfectly optimized language, there's nothing under the hood to tweak

    makes some limited sense in some contexts (one could argue that the microcode supporting the assembler on the CPU is repeatedly optimized), but none in this. The IonMonkey JIT does essentially optimize the assembler code[*], by rearranging it in various ways to make it faster. E.g. it takes stuff like this (in javascript, as I have not written assembler in years):

    for ( var i = 0; i != 10 ; ++ i ) {
        var foo = "bar";
    }

    and changes it to e.g. this:

    for ( var i = 0; i != 10; ++i ) {
    }
    var foo = "bar";

    possibly then this:

    var foo = "bar";

    This is an optimization and it is performed at assembler level (Again: the above is not meant to be read as JavaScript, but assembler).

    The other statement that really sticks out is this:

    > A sign of a horribly designed language is that the speed of its implementations can be repeatedly increased "by leaps and bounds"...

    This simply highlights that the poster really do not understand the goals behind crossplatform languages, such as Java, Dalvik, JavaScript, lisp, ML, Python, Perl, and so on, or the goals for weakly typed languages.

    [*] It works on an abstract representation of the assembler code, but it might as well have been working directly on the assembler, was it not for the fact that this would require it to learn to many assembler variants.

  24. Firefox: software of choice for Casey Anthony by asjk · · Score: 1

    because sometimes law enforcement doesn't know there are other browsers.

  25. Re:JS Speed is the deciding factor in modern webpa by Anonymous Coward · · Score: 0

    Good luck programming web content with C and ASM...

  26. When I just want the data..not the dressing by fred911 · · Score: 1

    lynx renders..

    --
    09 F9 11 02 9D 74 E3 5B - D8 41 56 C5 63 56 88 C0 45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
  27. What's really going to happen: by Let's+All+Be+Chinese · · Score: 1

    The webmonkeys get hold of it. Do everything with it. They're ecstatic! Finally something that runs their javascript nice and fast!

    So they throw more js into their webpages. Drop in a few more libraries, for their convenience. Of course, they're testing the stuff to the dev server that's at least as fast as the production server but sees only a small fraction of the load, and they have gigabit from desktop to server.

    Thus, their websites become that much more crappy for everyone else, for everyone who doesn't have the lastest accellerator, or a nice and fast connection to an overspecced and mostly idle server.

    It's happened before, it's happened again. Feh, if your desktop is old enough (single core, less than 2GHz these days) then between the crashes due to low memory you can actually notice when, say, jquery gets an update: Everything that uses it gets slower.

    This is the state of websites, and as things stand, faster browsers mean slower websites for non-webmonkeys.

  28. Re:JS Speed is the deciding factor in modern webpa by chris.alex.thomas · · Score: 1

    how is it horribly misguided, when you're one example proves his point.

    that you cannot optimise the ASM layer, cause it's already directly on the cpu, but you can optimise the algorithm.

    your example did just that and this optimisation is done FAR FAR above the assembly level.

  29. Re:JS Speed is the deciding factor in modern webpa by madsdyd · · Score: 1

    I invite you to go read http://en.wikipedia.org/wiki/Program_optimization#.22Levels.22_of_optimization

    And perhaps http://en.wikipedia.org/wiki/Tracing_just-in-time_compilation

    As I said: The statement might make limited sense in some contexts, but not in this.

  30. Re:JS Speed is the deciding factor in modern webpa by Anonymous Coward · · Score: 0

    A sign of a horribly designed language is that the speed of its implementations can be repeatedly increased

    The inability to optimize code is the sign of a horrible language, check out the large number of gcc optimization flags. Even then C Optimization hits some problems, pointer aliasing, one step compilation necessary for whole program optimization and close to the metal means more "do it this way" instead "this is what i want" and every developer should know that "this is what i want" gives more freedom to write a good implementation - asm is an extreme of "do it this way", optimization almost impossible. It has been a long time since humans where better at (large scale) low level optimization than compilers.

  31. Breaks on github by petsounds · · Score: 1

    Actually, I shouldn't say that. Firefox started breaking on github around version 17.0. Many of the sub-project pages, e.g. Issues page and the Markdown - Raw viewer, redirect to a "Page did not load in a timely fashion" error page. This happens consistently on every github project. Unless the github team has done something weird on their end, this is another in the lengthy amount of compatibility problems Firefox is beginning to have.

  32. Re:JS Speed is the deciding factor in modern webpa by Anonymous Coward · · Score: 0

    Note that JavaScript is not a compiled, but an interpreted/JIT-compiled language. That is, the execution speed not only includes the execution speed of generated code, as in the case of compiled languages, but also the time of compilation/interpretation. That is, to have a meaningful comparison, you would have to compare to the time it takes to compile and run your C program.

    Of course you could question the very concept of sending source code to the client, instead of sending something compiled to bytecode. But that's a completely different question; it has to do with how JavaScript is deployed, not how the language is defined. In principle it would be no problem to define bytecode for JavaScript, implement it in the browsers, compile the JavaScript to bytecode before putting it on the server, and send the bytecode to the browser. Of course if only one browser vendor did that, it would not be very useful. Even worse, if every browser vendor defined a different bytecode. So such a feature would only make sense if it were standardized.

  33. Re:JS Speed is the deciding factor in modern webpa by Anonymous Coward · · Score: 0

    You have this mostly backwards: being able to increase the speed of implementations is actually a good thing. Consider:
    * x86 assembly implementation *has* increased by leaps and bounds, thanks to Intel and AMD. And that's a very good thing (which isn't only down to process technology).
    * HTML video performance has increased leaps and bounds (mainly by offloading to GPU). Your hand-written x86-assembly video streaming code just won't perform on a mobile device. (I'm not sure your C program's layout code would always outperform webkit's general-purpose engine either, leaving aside the advantages of CSS/HTML over writing everything in C.)
    * Your hand-written C parser probably parses slower than Perl does (you don't have the time to optimise your C code for that one-off sysadmin task).
    * A SQL query stands a pretty good chance of performing better nowadays than writing your own storage implementation in C.

  34. multiple threads? by StripedCow · · Score: 1

    What I liked about the previous mozilla javascript engines was that they supported multithreading. That made them suitable for web-server use. In contrast with, for example Chrome's V8, which is not suitable for server use (unless you are prepared to spawn multiple processes instead of threads, but this is very expensive performance-wise of course).

    So I hope they support multithreading.

    --
    If Pandora's box is destined to be opened, *I* want to be the one to open it.
    1. Re:multiple threads? by BZ · · Score: 1

      Multithreading should work fine as long as you use separate JSRuntimes on separate threads.

    2. Re:multiple threads? by Anonymous Coward · · Score: 0

      Cool!

  35. Re:IonMonkey, JagerMonkey, TraceMonkey, SpiderMonk by dotancohen · · Score: 0

    Thank you for the comparison. Why can't web developers compile the javascript and provide that? I do understand that each runtime (browser) is unique, but why not have something along the lines of:

    <script type="text/javascript" name="fooBar" compiled-for="firefox" src="firefox.js"></script>
    <script type="text/javascript" name="fooBar" compiled-for="chrome" src="chrome.js"></script>
    <script type="text/javascript" name="fooBar">
            fooBar();
    </script>

    Thus the appropriate compiled code is presented to each runtime, and if there is no compiled code available for any particular runtime then the uncompiled code can be used. This is similar to how software is currently made available: binaries for the common platforms and source for the rest.

    Of course I realize that MSN.com will have available only compiled code for IE, thus ostensibly 'killing' Firefox and Chrome performance. In fact, Firefox and Chrome performance will remain as it is, simple IE performance will be improved.

    --
    It is dangerous to be right when the government is wrong.
  36. Re:IonMonkey, JagerMonkey, TraceMonkey, SpiderMonk by dotancohen · · Score: 1

    In retrospect, "text/javascript" for the first two items should be "bin/javascript".

    --
    It is dangerous to be right when the government is wrong.
  37. oh, yet another javascript improvement by allo · · Score: 1

    its not like javascript were the problem of any current browser, but all of them work on improving the js engines instead of taking a break from the x-th js improvement and build a better browser ui. For example mozilla should fix stuff like menubar, favicon, statusbar, ... all the "we need to look like chrome" stuff. hey, if i want something which looks like chrome, i use chrome. If there weren't all the extension fixing this crap, maybe i would be a chrome user for a long time, since firefox gave up its own identity and started to clone chrome.

  38. Re:JS Speed is the deciding factor in modern webpa by serviscope_minor · · Score: 2

    Then I learned C and x86 Assembly and I realized, you can't speed up assembly language -- It's a perfectly optimized language, there's nothing under the hood to tweak.

    Well, not really. You can't optimize perfectly optimized assembly any further, but that's just tautology. You can optimize even quite well written assembly further, especially on modern CPUs with various selections of functional units, variable pipelines, multiple instruction dispatch per cycle, vectorising etc.

    In fact, the days have generally passed where I can write better ASM that what gcc can output from a C/C++/Fortran program, because it has much better knowledge of the CPU internals and is generally better at doing things like register allocation etc.

    In terms of Fortran, C99 and GNU's extensions to C++, it can even be told when pointers don't alias, so one of the final benefits of assembly has vanished. With good SSE scheduling and support from within higher level languages, the other main benefit of assembler has vanished.

    It's now at the point where C++ is generally faster than assembler for all but the best of assembler programs and some very specific cases, for instance where it helps to have direct access to something like the CPU flags.

    One reason is that the optimizers have got really, really good. They can even figure out when you're stepping through a 2D array in the wrong order can re order the loops. They are also excellent at removing redundancy which means you can write simpler code (and therefore write more advanced algorithms much more easily) without worrying about redundancy killing performance.

    The optimizers are amazing and do an awful lot. This is why optimized code is more or less impossible to debug. Once it does passes of inline, partial redundancy emimination, loop unswitching, fusion, strip mining, dead code elimination, constant propagation, alias analysis, loop unrolling, modulo scheduling and register allocation, a given instruction probably doesn't correspond to any one line of code at all, so no stack trace is even possible.

    And as for assembly, things aren't so simple there. Look at the difference between the faster clocking P4 and the much faster performing Ivy Bridge i7. The result of that is essentially that the i7 has an optimizer inside it which runs at 3.3 GHz and performs many of those steps real-time before actually farming out instructions for computation. IPC is all about optimizing assembler as much as possible.

    Then I created my own languages and compilers and I learned: A sign of a horribly designed language is that the speed of its implementations can be repeatedly increased "by leaps and bounds"

    It depends on what you mean "horribly designed". Many languages are designed to be easy for some particular task rather than maximal performance. It's hard to argue that Haskell is poorly designed, but optimization is a very tricky problem and performance has certainly increased greatly as optimization techniques have become well understood.

    Even FORTRAN, which was specifically designed to be optimizable even given the non-existant state of the art at the time (optimizing compilers were essentially invented for FORTRAN) has seen significant improvements in the performance of the compilers.

    C and C++ which were designed to be close to the metal and so not need much optimizing have also got much better with improved optimizers.

    It seems that the key to a high performing language is to allow the user to tell the computer as much as possible about the program's intent, so that things can be proven and optimization can be performed.

    --
    SJW n. One who posts facts.
  39. Re:IonMonkey, JagerMonkey, TraceMonkey, SpiderMonk by Anonymous Coward · · Score: 0

    Web developers asking the browser to run binary code straight from the server surely sounds like a refreshing idea. I wonder if anyone have thought about it before...

  40. Re:IonMonkey, JagerMonkey, TraceMonkey, SpiderMonk by joaosantos · · Score: 1

    I would prefer a more efficient lower level intermediate language, common to every browser that could be targeted by more languages.

  41. Too little, too late by Kergan · · Score: 1

    People don't change browsers much if those I know are any indicator. When they do, it typically is because one or more of three events occurred. The first is when they're actively shown an alternative by a preacher. The next is when they compare a site in different browsers and notice a material difference, eg when designing it. The last is when intense frustration leads them to actively seek alternatives.

    In my (non-representative) sample, FF has been hemorrhaging irate users for several years now. And the list of thinga that irritated them seems unending. So this feels like too little, too late.

    1. Re:Too little, too late by davids-world.com · · Score: 1
      I tried switching from Chrome (using the Canary build), because it kept crashing on me. I had to use Firefox nightly builds, because the standard Firefox looks fuzzy on my Retina display Macbook Pro (high-res Retina display have been out for almost 6 months, IIRC).

      Unfortunately, Firefox turned out to have problems with providing a cursor in the location bar after opening a new window (you had to set it by mouse!), and the privacy mode is broken: it removes all other windows and switches to anonymous browsing globally. Autofill did not work as well as I expected: user names often weren't filled in. Speed was not an issue.

      Enough little issues for me to switch back to Chrome. It's sad that they haven't managed to make FF fully useable. To make anonymous browsing apply to a single window appears to require deeper architectural changes according to the bug thread, which does not bode well for their overall design. Making it per-tab appears to be yet another story, which seems even more strange to me.

  42. You already have it !? by tuppe666 · · Score: 1

    Can we get OpenGL based hardware accelerated rendering already?

    You should already have it :)

    Tools > Preferences > Advanced > General > Browsing: "Use hardware acceleration when available"

    1. Re:You already have it !? by Anonymous Coward · · Score: 0

      It's ticked all right, but it's not active at all.
      I'll just quote this from about:support


      Adapter Description NVIDIA Corporation -- GeForce GTX 460/PCIe/SSE2
      Device ID GeForce GTX 460/PCIe/SSE2
      Driver Version 4.3.0 NVIDIA 310.19\
      GPU Accelerated Windows 0/1 Basic
      Vendor ID NVIDIA Corporation
      WebGL Renderer NVIDIA Corporation -- GeForce GTX 460/PCIe/SSE2

      AzureCanvasBackend cairo
      AzureContentBackend none
      AzureFallbackCanvasBackend none

      And there are variables like "layers.acceleration.force-enabled" available in about:config, but that makes it about 30 times worse.

      And really, I am getting absolutely sick of firefox's performance when everything else, and I mean every other goddamn browser on my system, is faster by a factor of 30-50 times when rendering pages; Opera, Chromium, even KDE's Konqueror, all of them leave firefox in the dust.

    2. Re:You already have it !? by edxwelch · · Score: 1

      Yeah great, that's why Firefox has a black screen half the time.

    3. Re:You already have it !? by Anonymous Coward · · Score: 0

      Report it as a bug. This has never occurred on any of my computers, so there's maybe an issue on your end they need to workaround.

    4. Re:You already have it !? by Anonymous Coward · · Score: 0

      Why write bullshit like "a factor of 30-50 times" when it's obviously not true? Just don't write a metric at all. This isn't IE.

    5. Re:You already have it !? by Anonymous Coward · · Score: 0

      I would have tried this if the channel switcher worked. (Dunno why they removed that).

      Nearly every change to Firefox has either made no difference to me or added bloat I don't need or removed something I wanted.

      If there was an adblock plus for ie10 I would use that.

    6. Re:You already have it !? by Anonymous Coward · · Score: 0

      It's not bullshit, it's true. My intention with writing that was to point out just how fucking ridiculous it is.

      Let's go to github, go to a random project and navigate to the "Network" tab.
      Notice there's a graph there? It's interactive by the way, so click it and move the cursor around.
      Firefox WILL max out your CPU core and that will probably not update until you stop moving the cursor.

      Now, let's try the same with rekonq. THE DIAGRAM WILL MOVE AROUND SMOOTHLY AND BE UPDATED AT LEAST 20 TIMES A SECOND.

      Let's also look at some of Microsoft's "TestDrive" stuff, how about "Let it Snow"? http://ie.microsoft.com/testdrive/Performance/LetItSnow/Default.html

      Firefox: 2 FPS
      rekonq: 25 FPS
      Chromium: 60 FPS (capped out)
      Opera: 6 FPS

      Is it a ridiculous and arbitrary benchmark made to let IE look good? yes it is.
      But does it also demonstrate how ridiculously slow Firefox is when it comes to rendering the goddamn webpage? Fuck yes!

    7. Re:You already have it !? by Anonymous Coward · · Score: 0

      No, because it's a ridiculous shitty benchmark to make IE look good. By that logic, Opera is a shit browser even though it's much faster than IE at many many things. So is Firefox. Misleading yourself won't change this.

    8. Re:You already have it !? by Anonymous Coward · · Score: 0

      The channel switcher? That feature has been in Firefox for years, on stable.

  43. Re:IonMonkey, JagerMonkey, TraceMonkey, SpiderMonk by shipofgold · · Score: 1

    I can't wait to see what kind of malware this type of scheme would produce. I have no proof, but if feels like running a compiled bytecode would be easier to exploit than text based javascript.

  44. Holy Shit kill Java script and burn the blueprints by gelfling · · Score: 1

    For fuck's sake - 5 layers deep of scripts? Six? More? No Script has become nearly useless when I have to turn on 5 or 6 LAYERS of scripts and 45 different scripts just to format a page. And on a good day they slow everything down to level of running it on a 486DX100 machine circa 1996.

  45. Re:IonMonkey, JagerMonkey, TraceMonkey, SpiderMonk by olau · · Score: 1

    Well, it would actually be a step back for usability for web developers. If you haven't tried an interpreted language, you probably don't understand why, but it does actually matter.

    Also, I could be wrong, but I think state-of-the-art Javascript compilers don't actually spit out a binary, instead they sort of grow the program in place. The old separate-compilation idea makes some optimizations much harder compared to a JIT that can actually watch the whole program + libraries run.

    This is especially true for a dynamic library like Javascript because most of the speed up comes from inferring the types, e.g. instead of representing [0, 1, 4] as an array with three objects, it can be allocated as int a[3], and the code can add the ints directly rather than having to unbox operand 1, unbox operand 2, add them, and box the result. Without some kind of help from the programmer, it's really, really hard to infer types automatically - so you basically have to watch the program run to see what types actually occur.

  46. Re:JS Speed is the deciding factor in modern webpa by olau · · Score: 1

    Do you have a source to back that up?

    I'm personally under the impression that most pages are slow because of rendering speed, not because of Javascript execution itself. I see improvements in Javascript compilers mostly as an enabler of future tech, not something that significantly speeds up existing pages.

    Of course, with a couple of big libraries, parsing time is perhaps important.

  47. Re:JS Speed is the deciding factor in modern webpa by Anonymous Coward · · Score: 0

    Good luck programming web content with C and ASM...

    Where's the problem? All you need is an appropriate browser exploit. :-)

  48. Re:JS Speed is the deciding factor in modern webpa by Anonymous Coward · · Score: 0

    You _can_ speed up assembly language. Just as it's possible to write awful code in C/C++ and produce bad assembly from it so too can you just hand-code the same bad assembly yourself.

    When you're hand-tweaking assembly or rolling the fastest code you can possibly go for you usually end up targeting a particular processor. Per example, if I have an algorithm that works on a fairly small amount of data but that data is spread out all over the place then I might compact it to fit efficiently in the Core i7 L1 data cache (so, pack it in around 32KB). Most x86 processors are going to have that cache so in general it's going to be a performance boost. Now if I need a bit more oomph and my data is bigger then I might shoot to get it into L3 and prime the cache to hide more latency. Then you have to worry about instruction-to-instruction latency and making sure you don't stall at any point. Then there's the nuances of the instruction set itself - I seem to remember Carmack making an integer math optimization in Quake to avoid messing around with the FPU state and stalling.

    The advantage of working in higher level languages is that performance is bumpkins for the most part. The big outer loops of your GUI applications may execute a grand total of 100,000 times in the space of an hour which in processor terms is "barely ever". There's just no sense optimizing code like that aggressively since it makes porting your code to a new architecture so much harder. The things that make sense to optimize are the really high bandwidth operations like graphics and sound. A simple loop to copy some data into VRAM might seem like the best way to do things until you realize a BitBlt will get the job done faster so you change out your assembly. Both of these will probably blush when a typical GPU gets involved though but then you end up restructuring large parts of your code to handle image uploads and actually rasterize with parts of the 3D hardware. Again, your assembly is going to change here.

    In general the more expressive the language is then the better the code you're going to get - more compact code runs faster (or at least 'could' run faster). The reason is simple: The less code you write, the more code someone else can handle, and they might handle it better and optimize it themselves if enough people are using it. JIT is the next evolution in this idea because the algorithms can now change wrt to data they are receiving. This is actually an old technique that falls under "Program Specialization". It remains to be seen how successful this becomes though - we don't have good algorithms for determining what a good algorithm should be for all possible data sets. We know some basic no-brainer transforms that are guaranteed to be a win though (like obvious constant folding).

  49. Oh those naughty elves! by crivens · · Score: 1

    ./firefox
    bash: ./firefox: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory

    Linux koala 3.6.6-1.fc16.x86_64 #1 SMP Mon Nov 5 16:56:43 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

  50. Can't be worse than 17 by Anonymous Coward · · Score: 0

    I downloaded FF17 yesterday. It broke a couple of my plugins (naturally) and keeps locking up. I finally removed it and rolled back to FF16. I only used FF for testing code on my own sites, so I'm not overly worried about security patches. A friends and fellow web developer said he ended up re-writing a bunch of his CSS to get it to render properly in FF17 (FF16 worked fine). I am really disappointed with the latest release.

  51. Re:IonMonkey, JagerMonkey, TraceMonkey, SpiderMonk by Ash+Vince · · Score: 1

    Why can't web developers compile the javascript and provide that?

    The whole point of the web and the reason javascript has become what it has is because we can write things now as websites that once would have been native applications that only worked on a single platform. If we had to go to the effort of compiling the web application before shipping it we might as well use something like Java, C or C++ and then ship native applications with all the increased flexibility that provides.

    Instead we now use websites for very complicated applications using AJAX interactions and such that are often hosted on intranets in order to keep latencies low. The main driver to this has been the cross platform support that the modern web provides for the end user. Even stand alone applications that require no interaction with anything outside themselves are often now shipped as web based apps if there are not IP issues to do with protecting the code (most of the time there is an issue with distributing the code which is why Java is so popular).

    The biggest issue though is probably that if a browser vendor suggested an approach like you suggest they would be shooting themselves in the foot as it would increase the workload for each additional browser a web application needed to support far more than at present. If I had to produce a compiled version of the JS libraries for opera then there is no way I could justify that cost to management based on their browser share. It might even be that things like Opera and Firefox started falling off the supported list for many clients since they might be only interested in the corporate space where IE is still dominant. I think I could just about make a case for supporting Safari based for Macs but in other cases I would have to work impossibly hard too justify multiple browsers supported on a single platform when considering the increased costs for each.

    --
    I dont read /. to RTFA, I read /. to offend people in ignorance.
  52. Re:Holy Shit kill Java script and burn the bluepri by g8oz · · Score: 1

    I can not recommend Ghostery enough. More pragmatic than NoScript.

  53. Re:JS Speed is the deciding factor in modern webpa by wed128 · · Score: 1
  54. Re:JS Speed is the deciding factor in modern webpa by Anonymous Coward · · Score: 0

    Never heard of cgi?

  55. Re:IonMonkey, JagerMonkey, TraceMonkey, SpiderMonk by Millennium · · Score: 1

    Thank you for the comparison. Why can't web developers compile the javascript and provide that? I do understand that each runtime (browser) is unique...

    ...and that's the problem. The only way to do this well would be to have some sort of standardized bytecode that browsers could compile to, and there is no such standard at the moment. As long as each browser goes through its own intermediate formats, you'd have to have different builds for different browsers, and nobody would bother to maintain them properly.

  56. Thank God for Chrome by Anonymous Coward · · Score: 0

    I don't have to deal with this disgusting crap anymore.

  57. Re:JS Speed is the deciding factor in modern webpa by ArcadeMan · · Score: 1

    The real problem is jquery itself. People won't even bother learning regular javascript, so jquery is required for all the crap they write.

    And then they can't even be bothered to write their own code using jquery either and they download pre-made code that requires jquery to run, ending up with pre-written code calling jquery calling javascript.

    All that for a fucking mouse-over effect with pre-loading of images that should have been done with CSS and sprites in the first place.

  58. Re:IonMonkey, JagerMonkey, TraceMonkey, SpiderMonk by Anonymous Coward · · Score: 0

    Please stop using the obsolete text/javascript MIME type. The correct MIME type for JavaScript programs is application/ecmascript or application/javascript - see RFC 4329. It's best to not use any type attribute because it is optional in HTML5 and was never needed in practice but if you insist on using optional attributes then please at least use the correct values.

  59. Re:IonMonkey, JagerMonkey, TraceMonkey, SpiderMonk by BZ · · Score: 2

    The problem is that as runtimes evolve the compiled format changes. Furthermore, the end result of the compilation depends on the exact processor being used by the user, and at least in SpiderMonkey on things like the location of the Window object in memory.

    Not only that, but the final compiled version is unsafe machine code, so a browser couldn't trust a web page to provide it anyway.

    So pages wouldn't be able to provide a final compiled version no matter what. They may be able to provide bytecode of some sort, but again the bytecode format browsers use is not fixed (assuming it exists at all; V8 doesn't have a bytecode) and compilation of JS to bytecode would have to be replaced by some sort of bytecode verifier for security reasons, so there may not even be much of a performance win from the switch.

  60. Re:JS Speed is the deciding factor in modern webpa by Anonymous Coward · · Score: 0

    that you cannot optimise the ASM layer
    Not really

    What is better mov eax,0 or xor eax,eax?

    That depends on your CPU. You can swap out instructions that do the exact same thing yet yield you a few extra cycles. Your biggest 'bang for the buck' though is algorithm changes.

    Also as most modern CPUs do they will execute out of order (up to 4 instructions!) to optimize the pipeline. If you know how the optimizer works you can even make it run faster by just changing the order of execution (with the same results, letting the optimizer idle more). They also have branch cache lookups in the CPU. Depending on which cpu you have something like if (x==y) (z = 0;) else (z=1;) could be slow or fast depending on how the branch optimizer looks at things and which instructions it speculatively runs. You can take advantage of that too in your code by just switching the logic around.

    So yes you can 'optimize' the ASM layer. But it requires knowledge that is not worth applying unless you are writing very CPU specific code. However a JIT language could take advantage of it by 'pre-testing' and figuring out what sorts of ASM to emit.

  61. FF18 should also support Mac Retina displays by Nimey · · Score: 1

    That's what I've been reading, anyhow. My sources didn't specify if this would only be on OS X or also on other OSes which you might run on the same hardware.

    --
    Hail Eris, full of mischief...

    E pluribus sanguinem
    1. Re:FF18 should also support Mac Retina displays by Anonymous Coward · · Score: 0

      I don't understand this. Why does any user application need to support a specific, yet standard (normal colors and not 3D), display?

    2. Re:FF18 should also support Mac Retina displays by Nimey · · Score: 1

      Basically so you can get sharper text, IIRC. Without explicit support the OS will 2x scale up what the browser displays instead, which works but is a bit blurry.

      The real trick is going to be extending that to lolcat GIFs (probably impossible unless the source image has tons of resolution) and making sure the page layout doesn't get buggered up (merely extremely difficult).

      --
      Hail Eris, full of mischief...

      E pluribus sanguinem
    3. Re:FF18 should also support Mac Retina displays by JDG1980 · · Score: 1

      The real trick is going to be extending that to lolcat GIFs (probably impossible unless the source image has tons of resolution) and making sure the page layout doesn't get buggered up (merely extremely difficult).

      GIFs and PNGs should probably be pixel-doubled in each direction, because using a scaling algorithm could cause trouble with low-resolution icons and stuff like pixel art. For JPEGs, a good upscaling algorithm like bicubic would probably be fine.

      Page layout shouldn't be an issue. When you're running on a 2880x1800 "retina" display, the page thinks the layout is 1440x900 (and will get those numbers if it queries via JavaScript); the only major difference is that text is more clearly rendered because it gets 4x the number of pixels.

  62. Ion Monkey by Lawrence_Bird · · Score: 1

    I have used ion monkey for quite some time - I was running nightly ion-monkey builds before it was merged into the 'regular' nightly code. The speed up is at best minimal from a user perception except on really heavy js sites. And if anyone from the dev team reads this, there is a dreadful memory leak in the latest 20s.

  63. Re:Holy Shit kill Java script and burn the bluepri by Anonymous Coward · · Score: 0

    Except the company that bought Ghostery is an ad company and is tracking things through the add-on. Just make sure to require disabling GhostRank when you recommend the add-on.

  64. Re:JS Speed is the deciding factor in modern webpa by UnknownSoldier · · Score: 1

    > C can't really be hugely optimized either,

    You've never worked on a C/C++ compiler have you? :-)

    C most definitely can be sped up. Why do you think we even have the "restrict" keyword?
    http://cellperformance.beyond3d.com/articles/2006/05/demystifying-the-restrict-keyword.html

    Function temperature provides hints to the compiler on what code should be inlined.

    The back-end of a compiler has a lot of room for generating optimal code IF it understands the target hardware. i.e. Minimizing register spill is extremely important on x86 with its lack of GP registers, reordering instructions to minimize pipeline stalls, known when/where to issue read/write barriers, etc.

    One of the major features / problems in C is that arrays = pointers. This is a MAJOR headache WRT to optimizations in a C compiler. In a "clean" language without pointers the compiler is able to strongly infer a lot of assertions; once you throw pointers in the mix the potential for optimizations goes right out the window since the compiler is no longer able to "pre-calculate" offsets.

    The lack of strong type inference in C also limits its optimizations.

    The LISP / Haskell guys don't have pointers and as such they force the burden on the compiler to "churn" through the type inference system in order to generate optimal code. This leads to a smaller, cleaner compiler, at the expense of a developer needing tons of RAM and CPU to just get the same level optimization a C compiler can do in half the time.

    At the end of the day it is all about instruction ordering and caching. Keeping track at what time are what variables "live" and where.

  65. Re:IonMonkey, JagerMonkey, TraceMonkey, SpiderMonk by dotancohen · · Score: 1

    Thank you. I'll look into that.

    --
    It is dangerous to be right when the government is wrong.
  66. Re:IonMonkey, JagerMonkey, TraceMonkey, SpiderMonk by dotancohen · · Score: 1

    It looks like you are correct. Thank you! However, there are some details that are not clear, so I posted this question on StackExchange which might interest you:
    http://stackoverflow.com/questions/13591069/why-use-application-javascript-as-opposed-to-text-javascript

    Again, thank you.

    --
    It is dangerous to be right when the government is wrong.
  67. Re:Holy Shit kill Java script and burn the bluepri by Anonymous Coward · · Score: 0

    Layers? What?

  68. Why not add something OTHER than javascript? by Anonymous Coward · · Score: 0

    I mean, the SCRIPT tag does have a LANGUAGE= attribute doesn't it? Sure, there's the old chicken-and-egg argument, but if someone would at least put it out there, perhaps it could have a chance. Why does everyone consider it a foregone conclusion that javascript was, is, and ever-shall-be the language of browsers? Security isn't a valid argument -- there have been a ton of exploits that break out of the javascript sandbox.

    Let's just put in a sandboxed VM with a built-in JIT compiler for C compiled to ARM assembler or something, and be done with it. Script kiddies could scribble over pointers as much as they want, but within the sandbox. Time has shown that the language isn't what gives security, it's the security of the sandbox itself that ensures a safe environment.

  69. Fit hardware by snadrus · · Score: 1

    C makes 1970s assumptions like there will be only 1 thread (no parallelism), no such thing as SSE, and few built-ins (thus requiring a variety of libraries that may make similar errors). Modern technology offers C extensions (OpenMP), better libraries, better compilers which have utilize modern architecture targets. Even Java now auto-parallelizes some code that it once ran linearly. There is enormous potential for non-trivial code to better-fit the hardware.

    --
    Science & open-source build trust from peer review. Learn systems you can trust.
  70. Still can't hit that monkey... by Anonymous Coward · · Score: 0

    Oh, this isn't about advertisements?