Personal computers have become much more reliable over the last 10 years or so, mostly due to the introduction of advanced operating systems with memory protection and hardware abstraction. The hardware itself has gotten better too; uncorrectable random errors are rare in PCs and extraordinarily rare in server-class systems.
These and other improvements have largely eliminated machine crashes. Blue-screen errors on Windows and kernel panics in Linux and Mac OS X still occur, but much more rarely.
Error-reporting services have become common, helping software developers figure out what went wrong. Most large developers now issue regular patches to fix newly discovered bugs, making systems more reliable between major releases.
All this progress is wonderful, of course, but our PCs still aren't reliable in the way that other consumer products are reliable. Machine crashes are still possible, and any bug can bring down an individual application.
Automobiles, for example, can fail in many ways, but they are still much more reliable than PCs. The risks associated with vehicle failures have been greatly reduced by decades of design refinements. Would you feel safe if PC technology controlled the steering and brakes in your car? Conversely, wouldn't you be more confident in your PC if you knew it was as reliable as your vehicle?
Can you rely on your system to display this 370-megapixel image?
(Credit: European Southern Observatory (ESO))PCs are also fragile in response to change. I know I'm always a little nervous the first time I install a new device driver or run a new application. Even without software changes, opening an unusually large image can induce some trepidation. Consider this 370-megapixel image of the Lagoon Nebula available from the European Southern Observatory Web site; how confident are you that all of your image-viewing programs would survive the attempt to open it?
And worst of all, PCs are fragile in response to attack. The kinds of problems that are sometimes created accidentally by software bugs are relatively easy to create on purpose.
Minimizing the frequency and consequences of these problems would require tremendous effort from everyone in the industry. Almost every bit of PC hardware and software would have to change. One part of the solution is an extension of the same techniques that make today's PCs more reliable than older models: more hardware-based isolation of one function from another.
The minimal isolation of today's systems is very convenient for software developers, making it easier to write code and achieve high levels of performance. More isolation means more complexity and more overhead, but it improves reliability.
Developers are taking the first steps in this direction already, for example, with the process isolation features of the Microsoft Internet Explorer 8 and Google Chrome browsers. But there's much more that can be done.
Another way to improve reliability is to verify that data and addresses are consistent in range and format with the original intent of the software developer before they are used by the program. Making these checks in software can help; the incidence of failures related to accidental and deliberate buffer-overflow conditions has been dramatically reduced in this way. There's plenty of room for new hardware to help in this process too.
There's also work to be done in making it easier to recover from failures, since true hardware failures are inevitable. This is another area where some high-end systems are way ahead of the PC. Fault-tolerant machine architectures have been around for a long time in the aerospace industry, for example.
Historically, fault tolerance has never been practical on the PC because PCs always had only one of each critical subsystem: one processor, one bank of memory, one display channel. Today, PC processors and graphics chips have multiple cores and multiple memory interfaces, creating the potential for redundant operation where it's most needed.
Recoverability also implies backups--not just of the contents of disk drives, but even of the live data in memory through checkpointing. And disk backups can be improved too, by making the backup process an integral part of all disk I/O. Modern file systems use journaling to increase reliability; this technique can be extended to allow recovering from errors long after they occur.
There will be a heavy price to be paid in complexity and performance for all of these techniques, but the currency for this payment is transistors, and Moore's Law gives us more of those in every new process generation. We need to consider how we want to allocate these transistors. Over time, I believe reliability should account for an increasing portion of them.
Apple's Snow Leopard operating system, which hits the streets on Friday, has plenty of new technology--but one of its major new features will soon be available on Microsoft Windows, Linux, and other major platforms.
OpenCL, the Open Computing Language, was originally proposed by Apple to support parallel programming on GPUs. There are other GPU programming languages, such as Nvidia's CUDA (Compute Unified Device Architecture) extensions for C and the Brook stream program language developed at Stanford University and included in Advanced Micro Devices' Stream Computing software development kit, but rather than choosing one of these languages, Apple chose to create a new standard independent of the big graphics vendors.
In fact, OpenCL is even independent of Apple. One of the first things Apple did was offer to hand it over to the Khronos Group, the same independent standards organization that manages the OpenGL standard for 3D rendering.
Supporters of the OpenCL standards effort at the Khronos Group include the biggest CPU and GPU makers in the industry. Apple is also involved but not shown here.
The members of the OpenCL working group turned Apple's draft specification into the released version 1.0 spec in just six months (see Brooke Crothers' "OpenCL goes beyond Apple" from last December)--and in the process, it created what may be the best solution so far to the general problem of parallel programming.
See, OpenCL isn't just for GPUs. It was designed from the beginning to get the most out of multicore processors too. After all, if you have a multicore CPU--and you probably do--why let it go to waste? OpenCL is flexible enough to support both CPU-optimized and GPU-optimized code, and smart enough to choose the right code, depending on what hardware is available in the system to run it. Most of the competing parallel-programming languages can't do that.
OpenCL can take advantage of both task-level parallelism (running many tasks at once, whether different tasks or copies of the same task) and data-level parallelism (where a single instruction within a task is applied to multiple data items at once--also known as SIMD). Some parallel-programming languages can't do that, either.
But OpenCL's biggest advantage isn't technical in nature: it's that no other parallel-programming language will be so widely supported. The support starts with Snow Leopard but will go well beyond that. AMD and Nvidia will have OpenCL drivers for their GPUs under Windows and Linux. AMD and Intel will support OpenCL on their CPUs (including Intel's Larrabee). And AMD has already shipped its first OpenCL implementation for its Athlon and Opteron processors.
Implementations for video game consoles and DSPs (digital signal processors) are also under development. I've even heard that future releases of OpenCL may be able to work with less common hardware, such as FPGAs (field-programmable gate arrays).
We had an excellent half-day OpenCL tutorial last weekend at Hot Chips 21. There were also some great OpenCL presentations at Siggraph 2009 earlier this month; if you'd like more detailed information, that's a good place to start.
All this support for OpenCL means that it should become the first choice of academic and commercial developers who want a good cross-platform way to develop parallel code. Expect to see OpenCL used in software for audio and video processing, cryptography, medical imaging, and many other applications--including, of course, gaming.
(Disclosure: I will be writing a technical white paper for Nvidia, one of the companies covered in this story.)
The New York Times reported this weekend, in an article titled "Looking to Big-Screen E-Readers to Help Save the Daily Press," that Amazon.com is on the verge of introducing a new larger-screen Kindle e-book reader.
A blog post from CNET's David Carnoy ("Amazon to introduce larger Kindle this week?") says that Amazon has scheduled a press event for Wednesday that may be the venue for this announcement.
The larger Kindle (which I think of as a "Kindle Pro," although I really have no idea what Amazon might call it) should be about the size of the Plastic Logic e-book reader I've written about here ("E-books: The flexible future"), with a screen in the 12-inch-diagonal range. Apart from the larger display, it's expected to work just like the current Kindle 2, sharing its paper-like E Ink display and software, perhaps with another round of improvements that could apply to the Kindle 2 as well.
Carnoy also mentions the recent spate of rumors that Apple will be introducing a new "media pad" this spring or summer--rumors he covered in an earlier piece ("Apple prepping two wireless devices with Verizon?"). This gizmo (I'll call it the iPad, following the lead of some other stories on this subject) is said to be smaller than a Kindle 2, but with a larger screen--a combination not difficult to achieve given the Kindle 2's large keyboard.
Amazon's Kindle 2 e-book reader
(Credit: Amazon.com)
That suggests dimensions around 5 inches by 8 inches with a 7-inch screen, similar to the Viliv X70 I wrote about in January ("The mobile Internet device: In search of itself").
As I noted at the time, the Viliv X70 is actually a little smaller than the Apple Newton MessagePad 2100 I carried for seven years during my time with the Microprocessor Report newsletter.
I've spent a lot of time thinking about the relative merits of these two device types, so I figured I'd go on record here before Amazon and Apple make their announcements and try to explain what kind of applications and customers will be the best fit for each type.
Here are the major differences I expect to see:
Displays. Monochrome E Ink for Kindle Pro. Color LCD for the iPad.
Size. About 8.5 inches by 11 inches for Kindle Pro. About 5 inches by 8 inches for the iPad (less than half the size).
Software. Amazon's port of Linux for Kindle Pro. Apple's port of Mac OS X for the iPad.
Media types. E-book and audio support for Kindle Pro. Video, audio, and e-books on the iPad.
Everything else follows from the display choice. I've seen E Ink's color prototypes with video-friendly update rates, but they can't match the quality of an LCD, and I wouldn't watch a TV show on one. I don't expect to see a fast color display on the new Kindle.
With a larger but otherwise familiar monochrome E Ink display, the new member of the Kindle family will not be able to play video or support a wide range of PC or smartphone applications (regardless of the underlying software), at least not with results that would be acceptable to most users.
Still, the smaller display expected to appear on Apple's media pad could handle lightly modified iPhone applications, but the need for a backlight means it can't match the low-power characteristics of an E Ink display. An iPad might get only four to six hours of operation on a charge--enough for a couple of movies and some gaming, but that's about it.
That's probably enough, though. A laptop might be used all day at work and for hours in the evening, but few people would spend that much time staring at a 7-inch LCD. I expect Apple has done its research, designing in a battery just large enough to satisfy most users without making the iPad (or whatever they actually call it) any bigger or heavier than necessary.
One thing I'm really not sure about is whether the iPad will be based on an x86 processor like Apple's MacBooks or an ARM processor like the iPhone. If the iPad was a Windows machine, there'd be no question: x86 all the way, to provide compatibility with Windows 7. Windows Mobile just doesn't have the features or the third-party app support to compete.
But Apple's done a fine job adapting Mac OS X to the iPhone platform, and with iPhone OS 3.0 coming soon, this would be a fine time to apply this OS to devices other than the iPhone and iPod Touch.
The iPad's likely superior variety of software gives it an inherently larger market, but the Kindle Pro's focus on text display could still make it the preferred choice for e-books.
Newspapers--the ostensible reason for a big-screen Kindle--are an interesting in-between case, though. Reading a newspaper isn't like reading a novel. It's a far more interactive process. Most newspaper readers generally don't proceed from the first word of the first story all the way through the last word of the last story; they skim headlines and opening paragraphs and pick only some articles to read fully.
The still-hypothetical Kindle Pro would do a better job of displaying newspaper-style content than the current Kindle 2. Readers would have more headlines to choose from and more text to read between the relatively slow page turns. But the process still can't be as quick as it is with a real newspaper. If newspapers are part of the plan, I hope Amazon has figured out how to take full advantage of the Kindle's underlying compute platform, for example, with intelligent article sorting and highlighting against keyword lists. Will it be good enough? I can't predict that, but we may find out soon.
One rumor I simply don't believe is that the new Kindle might also handle textbooks. Even an 12-inch E Ink display doesn't have enough resolution for most of the textbooks and technical books I've seen. The fine details in figures and the fine print in captions and equations simply wouldn't work out. Also, color would be absolutely necessary for that application, and E Ink's color displays have lower resolution than the monochrome versions. In theory, publishers could be willing to create Kindle-optimized editions from scratch, but I just don't see the business case for such a deal. So I think textbooks are out of the question.
In the long run, I think it'll be possible to merge these two products into one device that can do a good job with text and still support movies and full-featured software. OLED displays consume energy only for "on" pixels, so text display is much more efficient than on an LCD, yet OLEDs can update fast enough for television. (I wrote about OLED and e-paper displays here a couple of years ago; see "Displays have a long way to go".)
In the meantime, the market will remain divided between e-book readers and media players, so watch the news and make your choice. Or just keep reading books and watching TV--there's nothing wrong with that!
Much coverage of this year's Consumer Electronics Show is full of references to new Netbooks introduced at the show. But in fact, there were hardly any Netbooks at all, and those that did appear went almost unmentioned.
The truth is, the Netbook is dead, and good riddance. The concept of the Netbook was based on a tragic misunderstanding: the belief that tens, perhaps hundreds of millions of people worldwide wanted a portable computer that was small, power-efficient, and (here's the misunderstanding) not good for much beyond accessing the Internet.
Asus's Eee PC T91 convertible tablet
(Credit: ASUSTeK Computer Inc.)That's where the "Net" in "Netbook" came from: the Web, e-mail, chat, maybe some VoIP (voice over Internet Protocol communications).
That's what the earliest Netbooks delivered, too--machines like the Eee PC 701 from Asus (which I described here) that came with slow single-core processors, small amounts of RAM, small liquid crystal displays, and tiny, slow flash drives. They were good enough for light Web browsing and e-mail--and not much more. They wouldn't run Windows XP with acceptable performance, never mind Windows Vista.
Well, nobody wanted those machines. Companies that tried to sell them saw unprecedented return rates. Asus, for its part, couldn't upgrade the Eee PC fast enough; current Eee PCs have faster processors, more memory, larger screens, and larger flash drives or real rotating hard disks.
At CES, Asus expanded its line of Eee PC systems to include the S101, S101H, 701, 701SD, 701SDX, 900, 900A, 900HA, 900HD, 900SD, 901, 901XP, 904HA, 904HD, 1000, 1000H, 1000HA, 1000HD, 1000HE, 1000HG, 1002HA, 1003HG, and 1004DN laptops; the T91 and T101H tablets; and multiple Eee Top desktops. (Seriously! Most of these model numbers are on Asus's Eee PC site; the others are from CES. And I may have missed some.)
Certainly, all of these Eee PC systems were clearly distinct from Asus' mainstream offerings: Celeron or (mostly) Atom processors, 10-inch or smaller displays (on the laptops), and smaller amounts of RAM and mass storage.
But the fact is, they're all capable of much more than simple Web browsing. Asus specifically promotes the use of Windows XP Home with all of these machines, and it looks like they'd all run Vista as well, though perhaps without all the visual bells and whistles.
You wouldn't buy these machines to run Photoshop, edit high-definition videos, or play 3D games, but for most simpler purposes, they'd be fine.
In fact, as a cross-platform kind of guy myself, I'm thinking about getting one of those T91 tablets, when they go on the market later this year. I used to use a Motion tablet for meeting notes (with Microsoft Office OneNote, a great package) and PowerPoint presentations at Montalvo Systems, and I'd really like to do that again.
Small-screen laptops over the years. Foreground: a TRS-80 Model 100 (1983); rear, from left: an Apple PowerBook Duo 270c (1993), a Dauphin DTR-1 pen computer (1993), and an Asus Eee PC 701 (2007). From the author's collection.
(Credit: Peter N. Glaskowsky)So what's left of the Netbook concept? Small displays? C'mon, we've had small displays since the dawn of mobile computing. There hasn't been a day since 1983 when you couldn't get a laptop with a small display.
So these new machines aren't merely Netbooks that are "evolving" or "overachieving". They're notebooks. And Moore's Law will ensure that these systems will eventually suffice for any fixed workload. (3D games get more demanding each year, so small notebooks will always be inadequate for bleeding-edge gaming.)
Actually, there were some true Netbooks at CES. What distinguished them from these other machines, which were merely called Netbooks?
Well, today, if you want to make a subnote with a few hundred MHz of processor power and really basic 2D/3D graphics, an x86 processor and chipset is the expensive way to get it. It's better to start with an ARM processor. Some of those are single chips with almost everything you need except RAM, and they'll save you up to $50 off the x86 alternatives.
Such Netbooks have been announced by several companies, including Pegatron, and LimePC. There's nothing wrong with these machines. I'm sure they'll do everything they're advertised to do.
But this still brings us back to that tragic misunderstanding: few people will buy an ARM-based Netbook priced at $199 to $299 when there are good x86-based notebooks starting at less than $400. Certainly not when the x86 machines can run Windows or a mainstream Linux distribution, provide far more CPU and GPU performance, and come in the same small sizes.
So that's that. The Netbook is dead. Long live the notebook.
I miss the old SGI. Silicon Graphics was widely regarded as the greatest computer company in Silicon Valley back in the 1990s. Sometimes forgotten--but not gone--SGI was one of our greatest success stories and one of our greatest tragedies.
(Credit:
Boxx Technologies)
Apple may have had more revenue by virtue of shipping millions of small systems, but SGI's hardware spanned the range from video-game consoles (the Nintendo 64) to workstations to supercomputers. SGI's Unix-based operating system, IRIX, was one of the most sophisticated in the industry.
I used to lust over SGI machines. I'd obsess over lists of used SGI gear, looking for a great deal that would let me have my own IRIX box at home. In 2004, I finally bought an Octane with MXI graphics... but that was years after these machines were effectively obsolete, and I paid less than 0.5% (1/200th!) of the original retail price of the machine.
In the mid-to-late 1990s, SGI was not well managed, losing huge amounts of money because its leaders would not... Read more
It's been a big week for small systems.
On May 29, VIA formally announced (here) its "Nano" family of low-power x86 processors. These chips will be especially valuable in small laptops, UMPCs, and so-called mobile Internet devices (MIDs).
Then on June 2, NVIDIA announced (here) its Tegra 600 family, which is also being marketed for MIDs. But Tegra is a very different animal. It's based on an ARM11 processor core, which can run Windows Mobile or Linux but not Windows XP or Vista.
VIA's Nano processor. The chip itself, the silver rectangle in the center, is about 7.7mm x 8.3mm.
(Credit: Courtesy of VIA Technologies, Inc.)VIA's Nano processors are based on a new microarchitecture that is a giant step beyond previous VIA products and not far behind that of competing parts from AMD and Intel. Unfortunately, in this business, third place isn't a good place to be. VIA's older processors sold in relatively small quantities for low prices. Fortunately, they were very small and thus economical to make and sell.
The new Nano family offers much higher performance, with clock speeds from 1.0 to 1.8 GHz... but it's difficult to know what these clock speeds mean by comparison with AMD's or Intel's, and VIA isn't telling us, at least not directly. In this white paper on the Nano family, VIA only compares the performance of the new chips to its older C7 series.
But VIA does publish some numbers, so I was able to make some comparisons.
Take, for example, the Nano L2100 at 1.8 GHz vs. AMD's 2005-vintage Turion 64 ML-34 at the same speed, as found in the famous Acer Ferrari 4000 (reviewed here by PC World). The single-core ML-34 was much faster despite the clock-speed parity:
| Worldbench 6 test | VIA Nano L2100 | AMD Turion 64 ML-34 | AMD advantage |
|---|---|---|---|
| Windows Media Encoder | 585 | 467 | 25% faster |
| Adobe Photoshop | 809 | 412 | 96% faster |
| Roxio VideoWave | 507 | 381 | 33% faster |
Of course, the ML-34 consumes much more power than VIA's processor; the ML-34 has a 35W TDP (thermal design power) specification, whereas the L2100 has a 25W TDP. The L2100 idles at a mere 500mW, but the ML-34 probably consumes at least ten times as much when idle.
To be fair, I'm not sure these are entirely fair comparisons, since VIA didn't publish the details of their system configuration. Also, VIA's performance position probably looks better on simple productivity applications, but I prefer to look at multimedia performance since that's what we usually find ourselves waiting on. It's been a while since we had to worry about out-typing our word processor...
I'm looking forward to seeing some good performance and power figures for Intel's Atom; I think the VIA chips will turn out to be effectively faster but run a little hotter. When I get more data, I'll post a comparison.
But considering that the Nano is generally 60% to 200% faster than the C7 and much more power-efficient than competing products from AMD and Intel, the new product family will likely improve VIA's market position significantly over the next year.
NVIDIA's Tegra, a high-integration processor for handheld gizmos such as mobile Internet devices.
(Credit: Courtesy NVIDIA Corporation)NVIDIA's Tegra, on the other hand, offers no compatibility with existing PC systems or software, and its performance isn't even in the same class. The Tegra 600 family's ARM11 processor core runs at a maximum speed of 800MHz and, because it's a much simpler design, it offers a fraction of the effective performance of VIA's Nano.
So how can it possibly compete with Nano in mobile Internet devices?
Well, one answer is that Tegra is meant to deliver a much more complete solution with much lower power consumption. Instead of being just a core on a chip, like the Nano family, the Tegra 600 and 650 consist of a CPU core, a GeForce GPU, special-purpose hardware for accelerating digital video decoding and camera functions, and a dual-display controller that supports HDMI, LCDs, CRTs, and NTSC/PAL video. All of that on a chip the size of a dime, as you can see in the photo.
But the real answer is that what NVIDIA means by "mobile Internet devices" is different than what Intel (which coined the phrase), AMD, and VIA mean by it.
What NVIDIA means is basically any device with a size somewhere between that of a smartphone and a laptop, which can be used to access the Internet. But this doesn't strike me as a very useful definition; it boils down to encompassing anything like a smartphone with a larger screen. It's one thing to claim the Tegra 600 family supports a "full Internet experience" as NVIDIA did in advance briefings last month, but with the wide variety of sophisticated Web 2.0 websites out there, it really takes a PC-compatible system to deliver that experience.
Now, there's no doubt that the Tegra 600 and 650 will enable fun and interesting gizmos for people who buy lots of gizmos. (And honestly, I'm exactly that kind of person.) But I believe most people are not going to be interested in them. Anything larger than a cellphone is too big to carry around all the time. Anything with a screen smaller than about 7" to 9" isn't big enough for comfortable web browsing and movie watching. Anything with a screen that large might as well be a full Windows-compatible system.
Now, over time, these segments will inevitably blur together. Moore's Law will let us squeeze more performance into handheld devices. Software technologies like Adobe's Flash and Microsoft's Silverlight will allow more websites to work on simpler systems. Hardware like high-resolution LCDs and OLEDs and tiny projection displays will help solve size problems too.
But for now, I believe the Tegra 600 family is aimed at a market segment that isn't ready to develop, whereas VIA's Nano has a big market ready and waiting for it. The Nano won't sell as well as competing PC processors from AMD and Intel, but it should help raise awareness of VIA among PC buyers and encourage PC makers to keep pushing more functionality into smaller packages.
After my July 26 post about the inexpensive Linux-based PC called Zonbu, I was contacted by a public-relations agent working for the company.
He put me in touch with Zonbu CEO Gregoire Gentil, and I met with Gentil on August 22, prompting another blog post on the topic of flash drives.
Last week, I received the loaner system Gentil promised me, and I've been using it since. (It's small enough to be shipped in a standard U.S. Priority Mail box.)
On Wednesday, I read an article by Walt Mossberg of The Wall Street Journal. The piece's title conveys the subject as well as Mossberg's ... Read more
VMware is in the news these days for two related reasons.
First, VMware Fusion for Mac OS X recently went on sale. Fusion enables Mac users to run Windows and other operating systems simultaneously with their regular Mac applications, which pretty much solves the old problem of ... Read more
- prev
- 1
- next





