64-Bit Chrome for Windows
googlesystem.blogspot.com
googlesystem.blogspot.com
TL;DR: This version improves on speed (processor optimizations related), security (windows features only available in 64-bit) and stability (they don't say why, could be related to windows itself).
I wonder how many of those crashes are due to running out of memory, because it otherwise seems quite odd that the 32-bit version would "crash more", unless they (accidentally?) fixed some bugs in the porting process.
Realistically, this means a browser that can use more than ~3GB of RAM, and that has its advantages and disadvantages.
http://en.wikipedia.org/wiki/Address_space_layout_randomizat...
Is there a potential initial performance impact for a system with lots of RAM and long lived processes? I imagine for general dekstop use its negligible.
http://bgr.com/2014/03/28/apple-android-app-stability/
As you can see, Google has managed to cut the "crash rate" of KitKat to less than half of Gingerbread and iOS 7.1, even if the crash rate for those is pretty low, too.
Crash rates for software are measured in frequency per total number of hours deployed. 0.9% to 2.5% of the time would translate into 'unusable'.
And the Android crash rates there are also unsupported.
Imagine if 2.5% of all bridges would collapse due to engineering errors and then they'd improve it by a factor of two and hail that as immense progress...
Only software is not like bridges, and crashes happen and do not bring the end of the world.
Imaging having a new fangled machine, called a telephone, in 1930, only 1 in 10 (10%) calls where dropped mid-call. And then they managed to improve it to 2%.
That's not totally unlike how it was back then (heck, the analog telephone network was like that even in the eighties in some countries I know). And yet nobody thought of the phone network as "unusable" (compared to what? some non-existing non-crashing one?), and nobody blamed engineering in general.
Same for the early decades of the fax, same for the early dial-up internet, etc etc.
There's a joke about woodpeckers and software engineering that's a long time favorite of mine. I think that the attention to quality of the product is still vastly behind what we expect as normal from other branches of industry.
If a CPU contains a bug all the software guys are screaming blue murder, how was it possible that this several billion part highly timing sensitive design contained a bug that escaped detection during QA. And yet, as software guys we routinely wave off any bugs as though bugs are simply a fact of life and you'd better get used to them (and to the subsequent crashes).
All I'm saying is that there is something wrong about that picture, not that I have the solution, merely that it feels as though we should do better and should strive to do better. Much better.
The phone is a good example, if only because it's one of the few areas where reliability is top of the requirements list rather than for instance execution speed. That's why it should be no surprise that Erlang has a telecommunications background. It even factors in broken hardware to some extent.
Not exactly 100% relevant or on topic but interesting reading:
Yes, but my point was it took half a century or more for the phone network to have the reliability we enjoy today.
(Not to mention how the mobile phone network STILL sucks donkeys balls in large parts of the states, including in highly populated urban areas).
Even if it took half a century for the reliability to be 'right up there' what excuse do we have for sofware then? We're getting quite close to that half century.
For one, software is an ever-changing thing (new requirements, updates, changes to the OS and libraries etc). Something like a telephone network can basically be deployed and then just maintained.
Second, the complexity of our software stack in a modern OS is many times bigger than the phone network's. And it also plays together, with any random program the user might want to install.
Third, what the software can do now, is amazingly different (and more powerful) than what it did in 1950. E.g real time multiple video/audio stream manipulation with filters, and face recognition and what have you (and that's just on one app -- we're also running 20 others at the same time) -- compared to doing some simple business/math calculations.
Whereas the phone network still basically does the same thing: transfers data from one point to another and routes calls. It's an extremely more narrow field.
A better analogy would be bridge designers coming up with a design that required half as much maintenance or half as much material cost to achieve the same factor of safety, or which doubled the expected lifetime of the bridge for the same lifetime cost. Those would be significant improvements in the design, even though eventually the bridge will still have to be replaced (either all at once or piecemeal over its life).
As Justin was saying, most Chrome crashes are due to malware (and Firefox sees similar numbers I believe). Broadly speaking, bridges do not get malware.
(not counting the new 520 bridge, which is not assembled into a bridge shape yet)
That is not always the right assumption to make but for a browser I would say it is a reasonable one.
"crash rates for the the renderer process (i.e. web content process) are almost half that of 32-bit Chrome"
That sort of implied (to me) that this was a measure of instability of Chrome, not of the surroundings.
That's not to say that some portion of crashes in Chrome are not caused by our own bugs that slipped through our various QA and testing processes. Certainly, those do exist, but in terms of crash rates they are dwarfed by the causes I listed previously.
http://blogs.msdn.com/b/oldnewthing/archive/2005/04/12/40756...
I worked on software for a hardware system sold by my company. We were able to detect when a supplier changed memory suppliers because of the increased number of 'impossible' crashes.
Do you know why they had a 64-bit Chrome for Linux since 2009? Why wouldnt they want to switch for Windows/Mac sooner. I bet the user base is greater.
2. The process will sooner run out of addresses in the 3GB space rather than actual memory. After running for a while a process may end up with objects allocated all over the address space, so that there isn't enough contiguous address space free for new allocations, even though there's still plenty of free memory in small chunks between live objects.
Flash, Java, Silverlight, and so on all have 64-bit variants which work, but there's just no way to get the Google Talk and Hangouts plugin to work on those builds of Firefox.
Seeing the title gave me a bit of hope until I thought "No, of course, Google just bundles the plugin anyways... not like they'll publish a download link for a 64-bit build". I wouldn't even care if you had to click through several "Other system / Select custom download" links, if only it were available at all.
I feel like we have a chicken-egg problem. Firefox isn't offering 64-bit prominently because plugins have terrible support for it, and plugins don't support it because it doesn't exist yet... But, unlike Firefox, plugins can offer 64-bit compatible versions without angering a large number of users. Really, the ball should be in their court, Google included, to provide the options.
"The main contributions of this work are: ... using x86 segments for ... reduced overhead."
Why couldn't you take the chromium source (and dependencies) and compile them for x64 months ago?
IIRC most issues revolve around plugins and performance (notably V8), possibly not directly because of type sizes but similar low level stuff that hampers JS-to-the-metal optimisations.
Still waiting on OSX though.
[0]: https://code.google.com/p/chromium/issues/detail?id=8606
[1]: https://code.google.com/p/chromium/issues/detail?id=18323
https://www.google.com/chrome/browser/index.html?extra=devch...
Linux is a very usable OS today. Windows, comparatively, is a much less usable OS. USB drivers that need 3 minutes to set up every time I plug my mouse in a different port. More issues with sound than there are with Pulseaudio. And, yes, this is a huge peeve of mine: Only a tiny fraction of windows software is ever ported to 64 bit. WTF?
Almost all linux software is readily available on 64 bit, as 64 bit; this includes Chrome/Chromium from the very, very early days. So now, a major web browser was released as 64 bit on Windows. Congratulations. Maybe 2014 will be the year of the Windows desktop.
I wouldn't call it much less usable, depends on what you're used to I guess.. Actively using both, each for their own task, I find them on par with each other. But I don't expect Windows too give me a super easy to setup server with a mighty commandline, and I don't expect Linux to give me a super smooth Desktop UI that can be used as a digital audio/video workstation, for instance. Cause they both suck at those tasks equally as it's far from their target experience. And I also don't have the WTF feeling you have as I never had the problems you talk about: three minutes? Really? More issues than Pulseaudio? Almost sounds like you try to run Windows 7 on an old pentium with crap drivers :P
Speaking of that, when I swapped out my old motherboard for a new one, Windows refused to boot, giving me a bluescreen every time. I googled around and found that this was, in fact, a very common issue and the only solution is a full reinstall. Woah.
More issues than Pulseaudio, yes. In fact, I have zero issues with Pulseaudio and plenty of issues with Windows. Not like stuttering, but devices not being recognized and a terribly confusing UI when it comes to, for example, switching sound playback devices (getting sound to work on my TV has been an awful experience).
Every time I have to boot into it it's an awful, awful experience. Here is just ONE reason why: https://superuser.com/questions/33142/ctrlbackspace-inserts-...
So yes, it's user's fault, but the point is that in this particular instance Linux is more user friendly compared to Windows. The user needs more knowledge and expertise to do the same operation with a Windows machine compared to a Linux machine.
If you take the disks out of a Dell and stuff them in an HP machine with the same chipset, Linux gives you no guarantee the Ethernet ports will be the same order on startup.
It's just different and you see the differences as misfeatures.
Systemd does.
b) it can't assume heuristics like that if the vendor changes so no it can't. This was based on a complete data transplant.
This is a solved problem and systemd is coming to debian as well.
Most likely you didn't set up the SATA controller on the same mode (AHCI vs RAID vs IDE legacy).
Sounds like most of your issues mostly relate to just not knowing how to do certain things in Windows. Which that's basically the same reason people have issues with Linux.
It's fine to be comfortable in Linux, that's actually a great thing, but Windows is incredibly capable and usually easier to use for more advanced things. The basic UIs are similar enough to not be a big deal.
With Linux server setup, if I haven't done something in a while - I must go and hunt down the information on what files I need to configure and commands that I need to run. Sometimes it takes hours of reading. With Windows I can usually take a look at the standard management interface provided with the server software and just figure it out or be guided through it.
I think you're being a little bit unfair. (My personal preferences are not flowing into this assessment: I am a Linux enthusiast and in the past two years have only ever used Windows to play video games.)
Pretty much none is ported to 64bits, including software that is available on Linux 64 bits since ever.
What about energy friendly scheduling and hardware resource management with application level APIs like Mac OS X and Windows do?
I was using windows from 1995-2005 and I still didn't know half the things it could do. If you're interested in getting this working (which I doubt since you sound like you'd much rather whine about it) you can read how to do it here: https://wiki.archlinux.org/index.php/Laptop_Mode_Tools
I was surprised after I installed Windows 8 (64 pro or business or whatever it's called), and found Firefox and Chrome to both be 32bit, haven't checked Internet Explorer yet. Now I'm not sure if it even that is even an issue or not? It bugged me anyway.
I've been running a 64bit Linux OS for years now, and the most irritating thing about it was Flash plugin support. Some people deem an OS that can't play iPlayer or some such, as unusable. Anyway flash support is reasonable for me under Chrome these days (didn't Adobe say they'd abandon 64bit support on Linux?)
The missus has Windows 8 on her lappy, and both Chrome and Firefox frequently crap out, she has just gotten used to it.
No, Adobe abandoned NPAPI Flash, the one used by Firefox. Flash on Chrome uses PPAPI, which is still officially supported (my guess is that it's maintained/developed mostly by the Chrome guys, but it's just a guess).
Must be my bad luck then, I had yet another instance of pulseaudio inspired madness a few weeks ago on a brand new install of Ubuntu.
On OS X, I spend a significant amount of time in the command line but the occasional times I need a GUI, Linux just isn't usable. Most graphical programs lack even the most basic functionality or consideration for user experience. Linux is great for headless environments but it's awful when I occasionally need a GUI.
It's funny because iCal is like the shittiest calendar out there. Use Outlook or even Google Calendar.
Let's say you want to do something simple like... find out if your team members are busy before sending a meeting. Oh, in Outlook I just click the Invite tab and find a time, but in iCal they've simplified it so all I have to do is email the entire team to ask if the time is acceptable and then hope nobody re-books during the time it takes to pick a time. "Insanely inefficient!"
Or let's say I want to manage multiple calendars, one with read, one with write access... wait, Mac users (and I'm one of them) don't do businessy things... hipsters don't have jobs!
Want a bonus? If your Mac crashes repeatedly due to kernel panic and you take it in to the "geniuses" at the istore... they tell you to uninstall all 3rd party software. Seriously that's their solution here. "Oh I see you're running 3rd party software, you need to uninstall this." I was at a loss for words. It wasn't, "Hey Office causes some issues..." it was, "You're running 3rd party software," said with a serious sneer. That guy needs to join the ranks of the unemployed. Mac used to be really great, now they just have good hardware.
But no, Outlook has hands down the best calendar tools out there. No question. Everything else is a poor copy.
>That guy needs to join the ranks of the unemployed.
I've never dealt with the Apple "Geniuses" but I know a lot of people have and didn't like it at all. To be honest, the only time I've had kernel panics were caused by Little Snitch (now fixed). After an update about a year ago, I've never had one since. For me, OS X is extremely reliable.
That's a standard task for business calendering, not personal calendering. It also has little to do with the front-end software and much more to do with back-end support. Calender.app supports Free/Busy and business scheduling if you're on a server that supports it like Exchange.
> Or let's say I want to manage multiple calendars, one with read, one with write access...
You can use Calender.app just fine?
You should at least have up-to-date information if you're going to shit on others choices. It hasn't been "iCal" in 2-3 years, which is a good indicator that your information is very out of date.
> Seriously that's their solution here. "Oh I see you're running 3rd party software, you need to uninstall this."
Dell will tell you the same thing. OEMs support their initial configuration. If it KPs in that configuration, they will support it. Likewise, if your Dell bluescreens with the OEM image, they will support that too.
If it's caused by a 3rd party kernel extension in OS X or a bad driver in Windows, they won't support that. No OEM would.