RAID-on-a-chip [ROC] processors change the storage equation: Part 2.Storage Processor-Based Architectures To understand the advantages of a RAID Storage Processor, we must first understand the evolution of RAID. In the early days of RAID, storage system OEMs were required to write their own RAID algorithms from scratch. These algorithms and error recovery policies were considered key product differentiators. At this point, the basic level of RAID functions was very well understood and stopped evolving. At present, basic RAID functionality has become a commodity function, and OEMs add their differentiating value through higher-level functions such as policy management and storage services. Since RAID algorithms are so well understood, they lend themselves to implementation in hardware. It is accepted that dedicated hardware outperforms a general-purpose processor executing software instructions. Even with the best available clock rates, general-purpose CPUs simply were not designed to speed data flows, which is the essence of storage processing. To understand the processing steps required to flow data through a storage controller, let's look at a typical RAID-5 write command (see Table). The transaction is an example of an algorithm that is performed repeatedly in storage, and would be ideally suited to hardware implementation. It clearly illustrates the complexity of a typical storage transaction, requiring multiple buffer accesses and computations. A microprocessor would have been interrupted numerous times and had to switch contexts in order to complete this transaction, whereas the RAID Storage Processor would redirect re·di·rect tr.v. re·di·rect·ed, re·di·rect·ing, re·di·rects To change the direction or course of. n. A redirect examination. re the algorithms into hardware, thereby minimizing the impact on normal operations Generally and collectively, the broad functions that a combatant commander undertakes when assigned responsibility for a given geographic or functional area. Except as otherwise qualified in certain unified command plan paragraphs that relate to particular commands, "normal operations" of . RAID Storage Processor Highlights A RAID Storage Processor set up as a scalable fabric of programmable processing elements allows for the acceleration of compute-intensive storage routines. Multiple task-specific hardware engines perform repetitive and algorithmic tasks in parallel, with minimal system latency. Read and write commands are fully automated end-to-end, without intervention from an external processor. In essence, all performance-critical storage and bandwidth-intensive processing is completely offloaded from the management processor, resulting in a highly optimized data path. Execution speed comes from having multiple commands simultaneously in the pipeline and hardware acceleration In computing, hardware acceleration is the use of hardware to perform some function faster than is possible in software running on the normal (general purpose) CPU. Examples of hardware acceleration include blitting acceleration functionality in graphics processing units (GPUs) and of various compute-intensive steps in the flow. Each custom processor within the RAID Storage Processor has its own dedicated memory and data path for code fetch, virtually eliminating interrupts. The deterministic 1. (probability) deterministic - Describes a system whose time evolution can be predicted exactly. Contrast probabilistic. 2. (algorithm) deterministic - Describes an algorithm in which the correct next step depends only on the current state. nature of most storage algorithms means that the dedicated processors of the RAID Storage Processor accelerate storage functions such as cache state management, host access permission checking, and volume mapping, to name a few. The RAID Storage Processor is also storage specific; CRC (Cyclical Redundancy Checking) An error checking technique used to ensure the accuracy of transmitting digital data. The transmitted messages are divided into predetermined lengths which, used as dividends, are divided by a fixed divisor. headers for enterprise-level data integrity are calculated on the fly. In comparison, traditional controller implementation and firmware A category of memory chips that hold their content without electrical power. Firmware includes flash, ROM, PROM, EPROM and EEPROM technologies. When holding program instructions, firmware can be thought of as "hard software." See flash memory, ROM, PROM, EPROM, EEPROM and FOTA. are unable to match the data integrity capabilities of the RAID Storage Processor. Each time data is moved or manipulated, the data blocks must be checked and rechecked for consistency. In a traditional architecture, this requires an action and overhead from the microprocessor each time data is moved. RAID Storage Processors eliminate the need for outboard Not built in. Outboard devices are external to the main unit. Contrast with inboard. See offboard. processing, and minimize the need for overhead. The end result is a controller system that provides an enormous increase in IOP IOP intraocular pressure. IOP Intraocular pressure, see there capabilities when compared to conventional controllers. Whereas a standard controller might be limited to 1,000 disk IOPS IOPS Input/Output Per Second IOPS Input/Output Operations Per Second (server performance measurement) IOPS International Organization of Pension Supervisors IOPS Information Operations Planning System IOPS Internet Official Protocol Standards per port, a RAID Storage Processor-based system is capable of 15,000-20,000 disk IOPS per port. Furthermore, since all parity calculations are computed on the processor, the limiting factor A factor or condition that, either temporarily or permanently, impedes mission accomplishment. Illustrative examples are transportation network deficiencies, lack of in-place facilities, malpositioned forces or materiel, extreme climatic conditions, distance, transit or overflight rights, on rebuild time is the speed of the disks, rather than the available processor cycles. Disk rebuilds can be completed in hours instead of days, with only minimal impact on normal operations. Currently available midrange midrange Epidemiology The halfway point or midpoint in a set of observations; for most data, MR is calculated as the sum of the smallest observation and the largest observation, divided by 2; for age data, one is added to the numerator; a midrange is usually systems that quote cached IOP read numbers of over 100k IOPS can have IOP-to-disk performance numbers as low as 6,000-7,000 IOPS, roughly the capability of 20-25 15K-RPM disks. A RAID System Processor-based system with comparable cache read numbers, would be expected to maintain IOP-to-disk numbers of approximately 50K IOPS (an 8X performance increase). In most cases, the RAID controller A disk controller card that supports one or more RAID configurations. Originally only for SCSI drives, RAID controllers have become very popular for PATA and SATA drives. See RAID. is limited only by the IOP capability of the disks. This truly powerful RAID system allows customers to install much larger disk environments, yet reduce the overall number of RAID controllers under management. By placing so much of the RAID controller function in silicon, the RAID controller becomes segmented. Standard RAID operations are executed by the RAID Storage Processor that is itself under the management of a separate, low-cost processor responsible for the storage management features. System designers can use rich operating systems Operating systems can be categorized by technology, ownership, licensing, working state, usage, and by many other characteristics. In practice, many of these groupings may overlap. without impacting performance and can program management features such as data services and resource management in high-level languages A machine-independent programming language, such as FORTRAN, COBOL, BASIC, Pascal and C/C++. It lets the programmer concentrate on the logic of the problem to be solved rather than the intricacies of the machine architecture such as is required with low-level assembly languages. such as C++. Features are delivered more quickly, and code is more easily maintained as new features are added. Controllers can be given new personalities quickly, allowing optimization towards diverse application segments such as rich media, which requires Enforced QOS, or OLTP (OnLine Transaction Processing) See transaction processing and OLCP. OLTP - On-Line Transaction Processing that requires guaranteed consistent I/O (Input/Output) The transfer of data between the CPU and a peripheral device. Every transfer is an output from one device and an input to another. See PC input/output. I/O - Input/Output rates at the expense of other applications or data within the customer environment. The volume of stored data is increasing by approximately 100% each year, and shows no sign of slowing. Current system architectures can no longer manage the increased user demands without compromising performance and reliability. RAID Storage Processors establish a new standard for scalable, cost-effective storage management, addressing today's demands while anticipating tomorrow's. Fast, flexible and functional, RAID Storage Processors provide uninterrupted data access with uncompromised reliability, all at a competitive price point. Storage systems using RAID Storage Processors are expected to enter the market early in 2005. With the transition to a 4GB Fibre infrastructure, and the resulting increase in available bandwidth, it is expected that the majority of RAID systems will be using these powerful new RAID Storage Processors by the end of 2006. RELATED ARTICLE * Primary controller receives a write command * Primary controller computes a Data Integrity CRC * Primary controller transfers the data into the primary cache (hardware, architecture) primary cache - (L1 cache, level one cache) A small, fast cache memory inside or close to the CPU chip. For example, an Intel 80486 has an eight-kilobyte on-chip cache, and most Pentiums have a 16-KB on-chip level one cache that consists of an 8-KB * Primary controller mirrors the write data to a redundant cache in a redundant controller * Redundant controller receives the data, checks the CRC and sends status good back to primary controller * Primary controller sends good status to the host that the write command has completed * Primary controller coalesces adjacent write data (if any) and starts the RAID 5 write operation * Primary controller computes the physical location of the write data and parity within the RAID set * Primary controller reads the old write data from the RAID set * Primary controller checks CRC * Primary controller reads old parity from the RAID set * Primary controller checks CRC on old parity * Primary controller mirrors old parity to the redundant controller * Redundant controller receives the old parity data, checks the CRC and sends good status back to primary controller * Primary controller XORs old write data with old parity data * Primary controller XORs results (from step above) with new write data * Primary controller computes a new CRC for the new parity and transfers the data to the primary cache * Primary controller performs a write of the new data to the RAID set and completes an in-flight check of the CRC * Primary controller performs a write of the new parity to the RAID set and completes an in-flight check of the CRC John Howarth John Stirling Howarth (born 26 March 1945) is a former English county cricketer who played for Nottinghamshire County Cricket Club. A right-arm fast-medium bowler of some success, he is believed to hold the unfortunate record of most first class matches played without scoring a is senior director of product marketing and Tim Piper is director of product marketing at Xyratex International (San Jose San Jose, city, United States San Jose (sănəzā`, săn hōzā`), city (1990 pop. 782,248), seat of Santa Clara co., W central Calif.; founded 1777, inc. 1850. , CA) www.xyratex.com |
|
||||||||||||||||||||

Printer friendly
Cite/link
Email
Feedback
Reader Opinion