Why Apple & Intel & VT will kick ass.
Posted 26 Oct 2005 at 19:59 UTC by grey
So, a while back (August 2003), I wrote in my diary about a paradigm for system innovation that I wanted here. Then in October 2003, Intel announced its codename vanderpool project which got me excited to see it going in at the hardware level, which is where it should be IMNSHO, here.
Well, it's two years later, and Intel (and AMD's) "VT" virtualization technologies will be upon us in Q1/Q2 of 2006. I am so stoked, but it's the Apple + Intel pairing that gets me really excited, here's why:
First off I guess I should rewind for those who didn't read my old articles... and explain what "VT" is. VT is basically the current public name for Intel's Vanderpool and AMD's Pacifica technologies. It's a hardware level virtualization layer for x86/AMD64/emt64 processors. In essence this is like VMWare or VPC at the hardware level. Used in conjunction with Xen or VMware as a hypervisor most likely, you will be able to run several OS's straight from hardware simultaneously.
Now, to be fair, Xen & VMWare ESX server have offered this level of functionality for a while. But not without problems, Xen requires that you port your OS to Xen basically. Fine for Linux, but what about Windows? Forget it. What's worse is that Xen has been evolving essentially requiring reports, so even smaller projects (e.g. OpenBSD) with limited developers have been avoiding the porting effort because it has been a moving target. Meanwhile VMware seems to work well, but it costs a LOT (well VMWare is getting aggressive on developer pricing with a $300/year cart blanche license for all their products per developer but for non-production use), and moreover has strict hardware requirements so you can't just run it on any old PC, but have to make sure that it's something they support.
So that's great and all, but what's the big deal? Why am I so excited about this when it sounds like something that's been out there for a while?
Well, it hasn't. This is something new. And tying it all together with Apple is going to make jaws drop I suspect. Why?
Apple is like a Japanese zaibatsu (er... keiretsu in more recent terminology) they control from the bottom to the top more or less, single face. This means that their hardware will be homogenous, thus no worries with the nagging ESX drawbacks about specific hardware choice. Apple is also well branded. OSX is also awesome, and only available on Apples (legally). Everyone has been clamoring about the move to Intel... why? G5's are still quite fast (especially with dual core dual cpu Powermacs out). So maybe the p4 devkits are fast, but they're power pigs. What's so cool about that? Oh some reports about dual booting Windows & OSX are kinda cool, but dual boot? What a drag!
With VT (which is in Intel's Yonah cpu's which will be due out in time for the first round of Intel based Apple's) forget dual boot. You will be able to run OSX & Windows (or linux or whatever) in parallel simultaneously on the same machine. This is huge! This means that your next PC purchase can be an Apple, so you can use the stupid tools work MAKES you use, but you can use OSX for everything you want to use, so you can get shit DONE. This is a much cooler demo than Xen running Linux & plan9 running together, because really - who cares about those if you're a consumer?
But consumers know Mac, consumers know Windows. Consumers will see them both running together and start to think "Can I do that with my Dell?" The answer will be NO (not legally ;), but buy an Apple and you're good to go.
There's more (about why Intel & Apple and not Apple & AMD) and stuff, but I'm not going to go into Intel vs MS & Dell politics right now - that's another interesting story, but nothing will be as interesting as the upcoming intel based Apples which should be MUCH MUCH cooler than many people seem to be aware of.
I'll leave you with this though... Yonah will be dual core, it will have VT and it will also have SMT (Intel calls this Hyperthreading). In effect this will mean that one single chip will have dual core and dual threads per core so instead of 1:1 chip:thread ratio it will be 1:4. You should be able to run OSX & WIndows and maybe even something else with probably no performance hit, the hdd and RAM will probably be the bottlenecks if anything (hdd most likely). People may whine about yonah not being emt64 - but VT is much much bigger than 64bit from a usefulness standpoint. Merom due out shortly afterwards will solve that issue anyway.
I've been wanting something like this for years, first wrote about it publically a couple years ago, and now in less than a year it should be a consumer priced product I am so stoked, I think I'll even buy a revA powerbook that has intel+vt!
D'oh, posted 26 Oct 2005 at 20:03 UTC by grey »
I didn't realize this wasn't in my diary, never noticed the article thing before and I use this site rarely. Looks like I can comment at least, which is neat.
Anyway, sorry about that. Oh, and I can't edit this either - I wanted to add:
This makes the "Buy a mac or a pc?" argument irrelevant. You buy an Apple and run both. I don't care who you are, an intel based apple should be your next purchase. ;)
The cost premium for an Apple has always been obscured in the variant hardware base. When you can really compare apples to ... well, Apples, it will be really stark. (I looked very carefully at Dell and Apple laptops recently, and it was ~30%, and I couldn't get the Apple with more than one pointer button.) This means either Apple gross margins will have to come down, or Intel will have to start subsidizing Apple at (e.g.) Dell's expense.
Meanwhile, it strikes me as foolish ever to buy another 32-bit processor, VT or no VT, and Intel's latest offerings run stupidly hot and are still slower than AMD. I should pay Apple extra for relatively crappy hardware that their software has been so crippled as to insist on? If AMD is delivering VT too, an AMD (or a PPC64!) is the obvious choice for anything new. If Apple wants my money, let them port Macosix to work on my choice of platform. But why should I care? I run Free Software. We all run Free Software, here. Xen works fine already. However...
It's nice that starting next year, regardless of what (modern) chip people buy, they will be able to run other OSes at the same time without messing up what they have. (I don't doubt Apple and MS will both come up with ways to sabotage other OSes and make it look like the other OS's fault, so it will take a while to work around them.) Probably the best-case scenario is that all the proprietary vendors -- the Adobes, the Autocads, the Electronic Artses -- will each ship with their own virtualized kernel, and bypass both MS and Apple's kernels; and people will get used to running the vendors' OS choices, even where it's Plan 9. Then, each of us will be able to package each program we deliver with an OS distro and kernel tuned just for it, too. Will that be good? (For RAM and disk vendors, sure.)
There's a natural tendency for languages to try to subsume the OS layer. Java wants to be an OS, too, like UCSD P-system before it, and Forth and MSBASIC before that (and Emacs Lisp before that, but I digress). As a system architect, when you're completely free down to the bare (virtual) metal, your choices that way will make a competitive difference beyond which markets you're allowed to enter: those who choose more effective platforms will be quicker to market and have lower costs. So, maybe this does open up a new world for variant OSes to compete for the loyalty of software-system vendors rather than for the loyalty of idiot users.
Vendors do choose various implementation languages, largely irrespective of users' investments, and live or die by the consequences. They are notoriously bad at measuring those consequences, though, and the market is notoriously forgiving of high prices, bugs, and delays where brand names are involved. In this best case scenario, presuming recent experiments in standardizing file formats succeed, vendors in all OS markets will be thrown into direct competition, perhaps sharpening those consequences for vendors who fail to measure well. Who believes in this best-case scenario?
good points, posted 26 Oct 2005 at 22:05 UTC by grey »
ncm - excellent points, yes I too would digit if Apple went amd64. I think Apple is actually pushing intel hard to get merom out so perhaps they will not even use Yonah (again which would be nice). That said... Apple for at least a couple years will be an Intel+IBM+Motorola outfit still. Compared to Dell which is strictly Intel, who is to say that Apple won't go Intel+AMD down the road? They lose nothing by doing so. AMD themselves are very close to quad-core CPU's (as I was told by a coworker who attended the VMWare conference last week, in an open panel the AMD rep said, "Sooner than Intel would hope we had it ready"). We'll see. AMD currently also has the hypertransport bus going for it, NUMA memory access already, iommu's for peripherals and in their Pacifica VT technology it sounds like they are working hard at virtualizing the peripheral layer.
Now on a technical level I'll grant you that AMD has it over Intel, but as has been proved for decades - being a technical leader doesn't always mean a commercial success. I think Apple+Intel could get things heated up fast, and should Apple migrate to AMD64 down the road, I really don't see what would stand in their way.
Going back to languages subsuming the OS layer and other predictions, who knows - but with the CADR/Lispm source being released under a BSD like license last month I sure hope we'll see something akin to a seconding coming of Genera-ish systems designs. Pike's argument is still right with respect to systems research being irrelevant, and hardware vendors are obviously pushing innovation in a meaningful way - but this opens doors to perhaps level that playing field again.
One last point - Apple has been bring its premium prices down substantially, and I think that trend will continue. Coupled with the fact that again, they provide the hardware & the OS and support it all the way through (akin to zaibatsu again) it makes for a very satisfying user experience worth a modest premium, you get nothing but finger pointing with Dell & MS and the like.
more info, posted 28 Oct 2005 at 22:12 UTC by grey »
Just some additional information, because I've heard some confusing things from people smarter than I about XP being ported to Xen rather than it being unmodified. I don't know whether that is true or not, but I was judging my understanding on VT+Xen+Windows off of the following press release & article:
So as of yet, xen 3.0 is unreleased, but it has been demo'd and my guess is that it will be ready to roll by the time Apple debuts yonah (or hopefully merom) based macs. I've also heard that MS is developing their own hypervisor (er... yay?), but from where I see it - they have a lot of catch up to do to Xen & VMWare in the virtualization space, and with Xen being free even VMware is going to have a rough time of it, although I think they've been very smart and aggressive in their business moves of late.
EFI, GDT, VT, Xen and more all seem a lot more exciting all of a sudden.
reason to care, posted 6 Nov 2005 at 10:39 UTC by lkcl »
But why should I care? I run Free Software. We all run Free Software, here. Xen works fine already.
ncm, with the greatest respect, i've heard this shitty argument before.
caring about what other people use and caring about what _you_ use have _nothing_ to do with each other.
what you are saying is "i run free software, i'm okay, therefore i don't care about other people".
as an intelligent and technologically-aware _and_ technologically-empowered individual, you should consider whether you have a duty / responsibility _to_ care about other people who are not as intelligent, not as technologically-aware or technologically-empowered as you are.
in practice that means that free software developers, using their favourite [minimalist] development and working environment [my choice is fvwm with 3x3 screens, run a dozen xterms and then type mozilla & in
one of them] should be doing their utmost to develop and advocate applications that help others.
advogato - to me - isn't about "in what way can i most selfishly find out information that interests ME"; it's about "in what way can i, with my current skills and current resources, learn more so i can help OTHERS".
: Thank you for expressing your respect, but I thought I had answered my rhetorical question in the paragraphs immediately following it.