Right now, Grooveshark is slow. There’s no getting around it; pages take a while to start loading, and then take a while to render. We are in the middle of overhauling the backend which should make a huge difference in the time it takes for a page to start loading, but we PHP/SQL devs can’t do much about render times.
Fortunately, crossover Javascript/PHP developer Chanel has been up to the task and has made major improvements to page rendering times. I can’t even begin to explain why the site can be slow to render, but I know that much of it is Javascript related, and it has to do with the number of elements on the page. But even with Chanel’s genius tricks making the site render 4-5x faster, it still feels sluggish to me.
Well, it happens that the front-end is under an overhaul as well, but I recently discovered something else that makes the site much more pleasant to use: Firefox 3.0b4. One of the improvements listed in the release notes was faster Javascript execution. They certainly weren’t kidding! It makes it hard to go back to using Firefox 2.
So far I have not been terribly impressed with the much-touted memory management improvements. Firefox still uses an amazing amount of memory, 122MB (+104MB of virtual memory) with my Grooveshark library page, Chanel’s blog and this wordpress edit window open. The good news is that Firefox seems to be much more aggressive about wiping out unneeded memory usage, but the bad news is that sometimes Firefox seems to hang while it’s frantically deallocating memory (i.e. when closing a tab).
All in all it’s shaping up to be a nice improvement over Firefox 2, and if they can polish up the memory management to give a consistently smooth user experience, it’s going to be an unbeatable browser.
chanel
March 22, 2008 at 12:59 pm
Just wait Jay, I have more tricks up my sleeves.
I just tried out Firefox 3.0 Beta 4 and I too was blown away. Too bad I can’t permanently switch because I have to keep Firefox2 for testing, but I will definitely make Firefox 3 my permanent browser
Katy
March 23, 2008 at 10:25 pm
I’m curious to know what changes they’ve made to speed it up so much. As awesome as Tamarin is going to be, it’s not going to be integrated into SpiderMonkey until Firefox 4.
I don’t know for sure how accurate this is, but I’ve read that SpiderMonkey is also used for some portions of Firefox’s user interface in addition to javascript execution, and since SpiderMonkey is single-threaded, if it’s blocked by some script execution on a website, it can block Firefox’s interface too. That would definitely lead to a feeling of slowness, and the reverse would be true too – if Firefox’s interface is taking up the thread, all the scripts in all the tabs you have open are just waiting.
Maybe Firefox 3 no longer shares a thread between the chrome and your actual websites.
Jay
March 23, 2008 at 10:58 pm
I think you are right Katy, because whenever it seems like JS is what is slowing down the render, the entire browser is unusable. I can’t switch to another tab while I wait or anything like that.
I don’t know if that’s still true in FF 3 because I haven’t found a site that slows it down enough to try!
jbcarey
April 28, 2009 at 7:52 am
I still use Google Chrome for Grooveshark… I ‘only’ use chrome for grooveshark… basically chrome is my music player :D
Jay
April 30, 2009 at 9:07 pm
I should note that this post is so old it no longer applies. What Grooveshark was when this was relevant no longer exists!
That said I do like Chrome, but until I can easily add an adblock extension to it, I’m sticking with Firefox. :P