## 2011/11/30

### Apple needs to invent 'The Brick': screenless high-performance CPU, Graphics and Storage

Two new things appeared in my world recently:
Wilcox wonders what will happen to "Power Users" if Apple move on Desktops, as they've moved on from the rack-mount X-serve line. Customers needing servers now have the choice of a Mac Mini Server or a "Mac Pro" (tower).

Can Apple afford to cut-adrift and ignore the needs of good folk who rely on their product for their business/livelihood, some of whom may have used Macs for 20+ years?? Would seem a Bad Idea to alienate such core and influential users.

Clearly Apple look to the future, and like the floppy drive they expunged long ago in favour of Optical drives (now also obsolete), Desktops as we know them are disappearing from mainstream appeal and usefulness.

I think there are two markets that Apple needs to consider:
• One they haven't won yet: Corporate Desktops, and
• One that's been part of their core business for decades: High-end Graphics/Media
Thunderbolt on laptops means big, even dual, monitors are simple for Corporate Desktops, addressing a large part of the demand/needs. While Apple retain the Mac Mini line, they have a viable PC Desktop replacement for those organisations that like the "modular PC" model, especially those that don't want laptops walking out the door.

The simplicity and elegance of Just One Plug of the iMac makes it unbeatable in certain niche applications, such as public use PC's in Libraries or battery workstations in call centres.

Can Apple produce a "power" laptop with the processing, graphics and storage size/performance that meets the needs of High-end Media folk?
A: No, never. Because the fastest, most-powerful CPU's, GPU's, most RAM and largest/fastest storage only ever come with high-power and big footprint: you need a big box with a big power supply: The definition of a Desktop or Workstation.

One solution would be to licence OS/X to "tier 1" PC vendors like Dell or HP  for use on certified systems. But that's not going to happen, Apple is a hardware/manufacturing company - they will never go there.

Hence "the Brick" that is mainly accessed via "Remote Desktop".
My suggestions are a modular design, not dissimilar to the NGEN's expandable 'slices':
• CPU's and RAM in a housing with capacity to gang together for scale-up.
• GPU's in a PCI-slot chassis, with Thunderbolt available for physical displays.
• Local storage via e-SATA, SAS or Thunderbolt.
• remote bulk storage over the network
• External power-supply, or part of a base-unit (CPU, RAM, PCI-slot, network, Thunderbolt).
The point of "the Brick" is ComputePower-on-Demand and Universal-Workspace-View, not unlike SUN's 1993 "Starfire video" prototype.
It can live in a (locked) cupboard, or many can be hosted on a server cluster as one of many Virtual Machines. For even a modest operation, high-power servers running VMware makes operational and economic sense. VM's mean another licensing deal. Perhaps VMware, part of EMC, might have the clout to do a deal like this with Apple. Or not.

Jim Gray authored a paper in 2004, "TerraServer Bricks" as an alternative architecture. The concept is not new/original and more than the usual low-power appliances.

An aside on "Jump Desktop", it uses well established (and secure) remote desktop protocols (RDP, VNC). But for Unix/Linux users interested in security and control, this is important:
Jump also supports SSH tunneling for RDP and VNC connections which also adds a layer of encryption but this must be configured manually.

## 2011/11/10

### Surprises reading up on RAID and Disk Storage

Researching the history of Disk Storage and RAID since Patterson et al's 1988 paper has given me some surprises. Strictly personal viewpoint, YMMV.
1. Aerodynamic drag of (disk) platters is ∝ ω³ r⁵  (RPM^3 * radius^5)
• If you double the RPM of a drive, spindle drive power consumption is cubed. All that power is put into moving the air, which in a closed system, heats it.
Ergo, 15K drives run hot!
• If you halve the size of a platter, spindle drive power consumption is reduced by the fifth-power. This is why 2½ inch drives use under 5W (and can be powered by USB bus).
There's a 2003 paper by Gurumurthi on using this effect to dynamically vary drive RPM and save power. Same author in 2008 suggests disks benefit from 2 or 4 sets of heads/actuators. Either to increase streaming rate or seek time, or reduce RPM and maintain seek times.

The Dynamic RPM paper to be the genesis of the current lines of "Green" drives. Western Digital quote RPM as "intellidrive", but class these as 7,200RPM drives. Access time just got harder to predict.

This is also the reason that 2.5" and 3.5" 15K drives use the same size platters.

2. In Patterson's 1988 RAID paper. They compare 3 different drives and invented the term "SLED" - Single Large Expensive Disk to describe the IBM mainframe drives of the time.
NameCapacityDrive
Size
Mb per
Rack Unit
Platter
Size
PowerSpecific
Power

IBM 33807.5Gbwhole
cabinet
180Mb/RU14"6.6kW0.9 W/Mb

Fujitsu
Super Eagle
600Mb6RU,
610mm deep
60Mb/RU10.5"600W1.0 W/Mb

Conner
CP-3100
100Mb4in x 1.63in,
150-250mm deep
350Mb/RU3.5"6-10W0.1 W/Mb

And two smaller surprises, all these drives had 30-50,000 MTBF and the two non-SLED drives were both SCSI, capable of 7 devices per bus.
8 or 9 3.5" drives could be fitted vertically in 3RU, or horizontally, 4 per RU.
Because of the SCSI bus 7-device limit, and the need for 'check disks' in RAID, a natural organisation would be 7-active+1-spare in 2RU.
3. 2½ inch drives aren't all the same thickness! Standard is ~ 70mmx100mm x 7-15mm
• 9.5mm thick drives are currently 'standard' for laptops (2 platters)
• 7mm drives, single platter, are used by many netbooks.
• 7mm can also be form-factor of SSD's
• "Enterprise" drives can be 12.5mm (½ inch) or 15mm (more common)
• Upshot is, drives ain't drives. You probably can't put a high-spec Enterprise drive into your laptop.
4. IBM invented the disk drive (RAMAC) in 1956. 50 platters of 100KB (= 5Mb). Platters loaded singly to read/write station.
IBM introduced it's last SLED line, the 3390, in 1989. The last version, "Model 9" 34Gb, was introduced in 1993. Last production date not listed by IBM.
IBM introduced the 9341/9345 Disk Array, a 3390 "compatible", in 1991.
When Chen, Patterson et al published their follow-up RAID paper in 1994, they'd already spawned a whole industry and caused the demise of the SLED.
IBM sold its Disk Storage division to Hitachi in 2003 after creating the field and leading it for 4 decades.
5. RAID-6 was initially named "RAID P+Q" in the 1994 Chen, Patterson et al paper.
The two parity blocks must be calculated differently to support any two drive failures, they aren't simply two copies of "XOR".
Coming up with alternate parity schemes, the 'Q', is tricky - they can be computationally intensive.
Meaning RAID-6 is not only the slowest type of RAID because of extra disk accesses (notionally, 3 physical writes per logical-block update), but it also consumes the most CPU resource.
6. IBM didn't invent the Compact-Flash format "microdrive", but did lead its development and adoption. The most curious use was the 4Gb microdrive in the Apple iPod mini.
In 2000, the largest Compact Flash was the 1Gb microdrive.
By 2006, Hitachi, after acquiring from IBM in 2003, had increased the capacity to 8Gb, its last evolution.
According to wikipedia, by 2009, development of 1.3", 1" and 0.85" drives was abandoned by all manufacturers.
7. Leventhal in 2009 pointed out if capacities kept doubling every 2 years, then by 2020 (5 doublings or *32), then RAID would need to adopt triple-parity (and suggests "RAID-7").
What I found disturbing is that the 1993 RAID-5 and 2009 RAID-6 calculations for the probability of a successful RAID rebuild after a single drive failure is 99.2%.

I find an almost 1% chance of a RAID rebuild failing rather disturbing.
No wonder Google invented it's own way of providing Data Protection!
8. The UER (Unrecoverable Error Reading) quoted for SSD's is "1 sector in 10^15".
We know that flash memory is organised as blocks, typically 64kB, so how can they only lose a single sector? Or do they really mean "lose 128 sectors every 10^17 reads"?
Disk platters these days have a plastic unload ramp at the edge of the disk, and the drive will retract the heads there after a period of inactivity.
Linux servers with domestic SATA drives apparently have a reputation for exceeding load/unload cycles. Cycles are reported by S.M.A.R.T., if you're concerned.
10. Rebuild times of current RAID sets are 5hours to over 24 hours.
Part of this is due to the large size of "groups", ~50. In 1988, Patterson et al expected 10-20 drives per group.
As well, the time-to-scan a single drive has risen from ~100 seconds to ~6,000 seconds.
11. One of the related problems with disks is archiving data. Drives have a 3-5 year service life.
A vendor claims to have a writeable DVD-variant with a "1,000 year life".
They use a carbon-layer (also called "synthetic stone") instead of a dye layer.
There is also speculation that flash-memory used as 'write-once' might be a good archival medium. Keep those flash drives!
Update 11-Nov-2011:

Something new I learnt last night:
The 1.8" disk format is very much alive and well.
they're used in mobile appliances.
I wonder if we'll see them "move up" into laptops, desktops or servers?
Already I've seen a 2.5" SSD which is a 1.8" module in a carrier...

Another factoid:
For the last 2 years, HP has only shipped servers with 2.5" internal
drives.

Apple lead the desktop world twice in this fashion:
Mac's skipped 5.25" floppies, only ever 3.5".
Mac removed floppy drives well before PC's.

Does the 'Air' w/o optical drive count too?
The Mac Classic used SCSI devices, which seemed like a very good idea at the time. But not great for consumer-level devices and they've gone to SATA now.
Apple did invent Firewire (IEEE 1394 a.k.a. "iLink"), which took off in the video market, and I believe still support it on most devices. 

### Articles

"Triple-Parity RAID and Beyond", ACM Queue
Adam Leventhal (SUN), December 17, 2009

"Calculating Mean Time To Data Loss (and probability of silent data corruption)"
Jeff Whitehead, Zetta, June 10, 2009

"A Better RAID Strategy for High Capacity Drives in Mainframe Storage"  [PDF],
ORACLE Corporation, Sept 2010.

"Comparison Test: Storage Vendor Drive Rebuild Times and Application Performance Implications"
Dennis Martin,  Feb 18, 2009

"Considerations for RAID-6 Availability and Format/Rebuild Performance on the DS5000" [PDF]
IBM, March 2010.

"Your Useable Capacity May Vary ..."
Chuck Hollis, EMC Corp, August 28, 2008.

"Five ways to control RAID rebuild times" [requires login. Only intro read]
George Crump. July, 2011 ???
In a recent test we conducted, a RAID 5 array with five 500 GB SATA drives took approximately 24 hours to rebuild.
With nine 500 GB drives and almost the exact same data set, it took fewer than eight hours.
"DRPM: Dynamic Speed Control for Power Management in Server Class Disks",  Gurumurthi, Sivasubramaniam,  Kandemir, Franke, 2003, International Symposium on Computer Architecture (ISCA).

"Intra-Disk Parallelism: An Idea Whose Time Has Come", Sankar, Gurumurthi, Mircea R. Stan, ISCA, 2008.

## 2011/11/06

### The importance of Design Rules

This started with an aside in "Crypto", Stephen Levy (2000), about Rivest's first attempt at creating an RSA Crypto chip failing because whilst the design worked perfectly on the simulator, it didn't work when fabricated.
[p134] Alderman blames the failure on their overreliance on Carver Mead's publications...
Carver Mead and Lynn Conway at CalTech revolutionised VLSI design and production around 1980, publishing "Introduction to VLSI System Design" and providing access to fabrication lines for students and academics. This has been widely written about:
e.g. in "The Power of Modularity", a short piece on the birth of the microchip from Longview Institute, and a 2007 Computerworld piece on the importance of Mead and Conway's work.

David A. Patterson wrote of a further, related, effect in Scientific American, September 1995, p63, "Microprocessors in 2020"

Every 18 months microprocessors double in speed. Within 25 years, one computer will be as powerful as all those in Silicon Valley today

Most recently, microprocessors have become more powerful, thanks to a change in the design approach.
Following the lead of researchers at universities and laboratories across the U.S., commercial chip designers now take a quantitative approach to computer architecture.
Careful experiments precede hardware development, and engineers use sensible metrics to judge their success.
Computer companies acted in concert to adopt this design strategy during the 1980s, and as a result, the rate of improvement in microprocessor technology has risen from 35 percent a year only a decade ago to its current high of approximately 55 percent a year, or almost 4 percent each month.
Processors are now three times faster than had been predicted in the early 1980s;
it is as if our wish was granted, and we now have machines from the year 2000.
The important points are:
• These acts, capturing expert knowledge in formal Design Rules, were intentional and deliberate.
• These rules weren't an arbitrary collection just thrown together, they were a three-part approach, 1) the dimensionless scalable design rules, 2) the partitioning of tasks and 3) system integration and testing activities.
• The impact, through a compounding rate effect, has been immense e.g. through Moore's Law doubling time, bringing CPU improvements forward 20 years.
• The Design Rules have become embedded in software design and simulation tools, allowing new silicon devices to be designed much faster, with more complexity and with orders fewer errors and faults.
• It's a very successful model that's been replicated in other areas of I.T.
So I'm wondering why vendors don't push this model in other areas?
Does it not work, not scale or is not considered 'useful' or 'necessary'?

There are some tools that contain embedded expert knowledge, e.g. for server storage configuration. But they are tightly tied to particular vendors and product families.

Update 13-Nov-2011: What makes/defines a Design Rule (DR)?

Design Rules fall in the middle ground between  "Rules-of-Thumb" used in Art/Craft of Practice and  the authoritative, abstract models/equations of Science.

They define the middle ground  of Engineering:
more formal than R-o-T's but more general and directly applicable than the theories models and equations of pure Science, suitable for creating and costing Engineering designs.

This "The Design Rule for I.T./Computing" approach is modelled after the VLSI technique used for many decades, but is not a slavish derivation of it.

Every well understood field of Engineering has one definitive/authoritative "XXX Engineering Handbook" publication that covers all the sub-fields/specialities, recites all the formal Knowledge, Equations, Models, Relationships and Techniques, provides Case Studies, Tutorials, necessary Tables/Charts and worked examples. Plus basic material of ancillary, related or supporting fields.

The object of these "Engineering Handbooks" is that any capable, competent, certified Engineer in a field can rely on its material to solve problems, projects or designs that come their way. They have a reference they can rely upon for their field.

Quantifying specific costs and materials/constraints comes from vendor/product specifications and contracts or price lists. These numbers are used for the detailed calculations and pricing using the techniques/models/equations given in The Engineering Handbook.

A collection  of "Design Rules for I.T. and Computing" may serve the same need.

What are the requirements of a DR?:
• Explicitly list aspects covered and not covered by the DR:
eg. Persistent Data Storage vs Permanent Archival Storage
• Constraints and Limits of the DR:
What's the largest, smallest or complex system applicable.
• Complete: all Engineering factors named and quantified.
• Inputs and Outputs: Power, Heat, Air/Water, ...
• Scalable: How to scale the DR up and down.
• Accounting costs: Whole of Life, CapEx and Opex models.
• Environmental Requirements:
• Availability and Serviceability:
• Contamination/Pollution: Production, Supply and Operation.
• Waste generation and disposal.
• Consumables, Maintenance, Operation and Administration
• Training, Staffing, User education.
• Deployment, Installation/Cutover, Removal/Replacement.
• Compatibility with systems, components and people.
• Optimisable in multiple dimensions.  Covers all the aspects traded off in Engineering decisions:
• Cost: per unit, 'specific metric' (eg /Gb),
• Speed/Performance:  how it's defined, measured, reported and compared.
• 'Space' (Speed and 'Space' in the sense of Algorithmn trade-off)
• Size, Weight, and other Physical characteristics
• 'Quality' (of design and execution, not the simplistic "fault/error rate")
• Product compliance to specification, repeatability of 'performance'. (manufacturing defects, variance, problems, ...)
• Usability
• Safety/Security
• Reliability/Recovery
• other factors will be needed to achieve a model/rule that is:
{Correct, Consistent, Complete, Canonical (ie min size)}