To read all comments associated with this story, please click here.
My only comment on the dynamic core-to-core power shifting is how they worked around the issue of power density. It's been shown that the IHS doesn't really spread the heat effectively at all, it primarily distributes the pressure of the heatsink. Doubling the power dissipation on one side of the die would double the maximum power density and impact the leakage current. I bet that these processors will have lower performance per watt than its competition when running single-threaded workloads.
I question the theory behind flash caches. The storage hierarchy works because the various levels are each over an order of magnitude faster/slower than their neighbors in the worst case. Flash is an odd medium for caching hard disks because while it's about an order of magnitude faster than the disk for random access, it's comparable or even slower than today's commodity SATA drives in sequential access. Managing a flash cache is tricky because you not only need to worry about evicting least-recently-used filesystem pages, but you also want to bypass the cache during sequential I/O and evict pages that are usually accessed sequentially. I wonder if they even bother implementing these considerations.
Now that the world is being thrust toward Vista, all three major platforms effectively use main memory as a disk cache, and DRAM wipes the floor with any mass storage medium, including an enterprise-class SAN. It's about 20x as expensive as flash, but typical working sets for desktop applications are likely to fit in the memory left over for the disk cache. There's no substitute for plenty of DRAM. At least not until MRAM or PRAM hits the market. Flash is a great removable storage medium, but it's being shoe-horned into a new role as a cache, and it just isn't a good fit. Wear-leveling will make it feasible, but nothing will make it a strong performer.
As for the tablet device, this doesn't surprise me at all. These days, you should expect almost any new computing device (not marketed by Apple or Microsoft) to support Linux. How do you think they test the hardware during development? Linux is the bring-up platform of choice for device manufacturers. All of IBM's new hardware is debugged on Linux before AIX, i5/OS, z/OS, or Windows enters the picture. It's easier, more flexible, and cost-effective. It just makes more sense. As the "PC" evolves to take on new shapes and sizes, free software platforms will have a pragmatic advantage.
One advantage of a flash cache is that it eliminates the need for the drive to spin up every 10 minutes (by default) in laptop mode, while eliminating the danger of losing data while in laptop mode, in the event of an unexpected power off.
That's more important to me on a mobile device than the speed issues.
"Managing a flash cache is tricky because you not only need to worry about evicting least-recently-used filesystem pages, but you also want to bypass the cache during sequential I/O and evict pages that are usually accessed sequentially. I wonder if they even bother implementing these considerations. "
Of course they bypass the cache for sequential I/O. Perhaps not in the spun-down case, but how likely is it that you're going to be doing significant multi-block sequential I/O while expecting your disk to remain spun down?
The Robson/ReadyDrive Flash Cache is supposed to have two components: a write cache to keep the drive spun down (something's always writing to the drive in Windows... probaby logs no one ever looks at or NTFS MetaData... who knows?). There's also a read-cache that stores what would normally go into the paging file and some pages of executable code. This is the kind of data that is NOT generally accessed in long sequential reads, but instead more or less random small reads.
Sure, the memory page caching algorithms in widespread use can do a good job of keeping relevant pages around for program code, but this only works based on short term behavior of programs. The whole point of Windows SuperFetch, which is the underlying cache policy engine for these systems, is to find long term trends in page usage and to prewarm the cache with pages that the shorter-term algorithms have no way of knowing about. Given this level of long-term paging, the flash cache makes sense as a location that doesn't cost as much as main memory to store random-access code pages. Is Flash ideal to replace memory or HDDs? No! Ready* is just a matter of using a technology that's widely extant for a task it's well-suited to.
Windows NT has of course had disk caching since the original 3.1 version of NT. The memory manager and filesystem drivers both interact with the Cache Manager (Cc* subsystem) and have done so for ages. It's all pretty heavily tied in with the VM system, so there's pretty much a unified cache for both memory pages and disk file pages. Files are mapped in 256 KB FIFO views, but when a page falls out of a view, it isn't evicted from memory immediately... instead it's put on a standby list whence it can be retrieved quickly through a "soft" page-fault.
I think you should reconsider your notions that Windows is not as advanced as Linux on the Kernel level. It doesn't seem to move as quickly as Linux does in terms of new user-visible features, but that's largely because the kernel is hidden away and you don't have this nice /proc filesystem to see detailed data in. Instead, you have to go look through not-so-well-documented performance counters. You also can't see the source code and you don't pick and choose which features you want while compiling it. It is also the case that Linux does move faster into more niches than NT does because anyone can take it and adapt it to their needs. Microsoft only spends efforts on optimizing NT in areas and for machines where it makes business sense for them to do so.






Member since:
2006-01-02
Too bad I really don't use my computer in an intensive enough way to justify the cost. The dynamic speed enhancement technology is a really good idea in this world of mostly single-threaded compute-intensive tasks. Unless the task is naturally parallel, a single-threaded, efficient algorithm will do it faster on a fast processor than on two moderate processors due to lower cache-sync overheads and contention over memory, I presume.
When hybrid HDDs become widely available, the flash cache thing will be my first upgrade. Vista is more aggressive with embedded flash caches because it can be guaranteed that they will never be surprise removed. Keeping the HDD off for minutes at a time will cause a significant improvement in battery life and noise.