Sun Microsystems, Inc.  Sun System Handbook - ISO 3.4 June 2011 Internal/Partner Edition
   Home | Current Systems | Former STK Products | EOL Systems | Components | General Info | Search | Feedback

Asset ID: 1-71-1012382.1
Update Date:2009-12-03
Keywords:

Solution Type  Technical Instruction Sure

Solution  1012382.1 :   Sun StorEdge[TM] 9900 series: Track and Stripe Sizes for OPEN LDEV Emulations  


Related Items
  • Sun Storage 9970 System
  •  
  • Sun Storage 9990 System
  •  
  • Sun Storage 9985 System
  •  
  • Sun Storage 9960 System
  •  
  • Sun Storage 9980 System
  •  
Related Categories
  • GCS>Sun Microsystems>Storage - Disk>Datacenter Disk
  •  

PreviouslyPublishedAs
217075


Description
This article discusses track and stripe sizes used in Sun StorEdge[TM] 9900 series(SE9900) OPEN logical device (LDEV) emulations. This information can be used to tune host I/O for maximum efficiency.



Steps to Follow
OPEN device emulations on Sun StorEdge 9900 series storage use three different track sizes either 64k or 256k for OPEN-V, or 48k for all other OPEN emulations. When data is read from a logical device, a minimum of one track is always staged into cache. Units of cache called slots are allocated to hold the data whenever a logical device is accessed.

The slots are equal in size to an LDEV's track. Therefore, the larger the track size, the more cache is consumed with each I/O. For example, if one reads 512  bytes of data from a logical device with a 256k track size, then the 512 requested bytes, plus the next 261632 bytes, are read into cache, thus filling a 256k cache slot. This may be very advantageous for sequential I/O patterns, but less so for small, random I/O.  

The next largest segment of an LDEV is called a stripe chunk.  A stripe chunk consists of 2 or 8 tracks, depending on the emulation type (see Table 1 below). For example, a stripe chunk for an OPEN-E LDEV would consist of eight 48k tracks, or 384k.  A stripe chunk is the largest unit of data written to a single physical device in one operation. A full stripe ranges from 768k to 2688k, depending on the number of data stripe chunks in the RAID type. For example, the stripe size for a RAID1 2+2 OPEN-E LDEV is (2)(384) = 768k.

The OPEN-V emulation was introduced in the Sun StorEdge 9970 (SE9970) and Sun StorEdge 9980 (SE9980) products.  The track size for the new emulation was raised to 64k, which in turn increased the associated stripe chunk and stripe sizes, as noted in Table 1. With the introduction of SE9990/SE9985, the default track and cache slot size for OPEN-V has been increased from 64k to 256k. However, an option to use the 64k device geometry was provided, as discussed in <Document: 1002348.1>  The default OPEN-V stripe chunk remains at 512k (2 tracks), thus requiring less work for RAID5 parity generation (this is discussed in more detail below). Therefore on SE9990/85, it is theoretically possible to gain efficiencies in cache management by using the OPEN-V emulation. However, performance testing has shown that for many workloads, there is no significant difference between the newer and the original OPEN-V device geometry.  Also, non-OPEN-V emulations may perform as well as or better than OPEN-V for small random I/O.

For RAID5 logical devices, parity must be generated.  This is done on the dynamic regeneration and recovery (DRR) processor on the disk adapter (DKF or DKA).  The number of parity cycles (processor cycles) required for parity generation varies with the type of logical device, as noted in Table 1 below.  If full stripe writes are done, the array does not need to read old data and old parity in order to generate parity for the current operation, but rather can generate parity from the data already in cache. Therefore it is advantageous to use the information in this article to tune host I/O to maximize the chances for full stripe writes to occur.  In addition, Hitachi caching algorithms attempt to maximize efficiency by accumulating a full stripe of data in cache, prior to writing the data to disk, if possible.

Table 1

Emulation

Track Size

Stripe Chunk Size

Parity Cycles

2+2 Stripe Size

3+1 Stripe Size

7+1 Stripe Size

OPEN-[x]

48k

384k

8

768k

1152k

2688k

OPEN-V 9900V

64k

512k

8

1024k

1536k

3584k

OPEN-V 9990

256k

512k

2

1024k

1536k

3584k

The parameters in Table 1 are useful to keep in mind when tuning the I/O subsystem.  For example, consider matching the volume manager stripe unit size to a multiple of the track size.  For small I/O, one might simply match the stripe unit size to the track size, while for larger I/O, one might want to match the stripe chunk or even the full stripe size.



Product
Sun StorageTek 9990 System
Sun StorageTek 9910
Sun StorageTek 9960 System
Sun StorageTek 9970 System
Sun StorageTek 9980 System
Sun StorageTek 9985 System

Internal Comments
Place Sun Internal-Use Only content here. This content will be published to internal SunSolve only.



OPEN-V, SE9990, performance, emulation, track, slot, chunk, stripe, RAID, parity, hds, hitachi, 9910, 9960, 9970, 9980, 9985, 9990
Previously Published As
78230

Change History
Date: 2009-12-03
User Name: 44308
Action: Approved
Comment: No change required.
Version: 15
Date: 2007-11-12
User Name: 29589
Action: Update Started
Comment: Need to update an invalid link.
IBIS pre-migration work.
Version: 0
Date: 2007-05-22
User Name: 29589
Action: Modify Tech Group
Comment: IBIS migration. These document need to be moved to appropriate queue. - Admin Modify of Tech Group to Storage
Version: 0

Attachments
This solution has no attachment
  Copyright © 2011 Sun Microsystems, Inc.  All rights reserved.
 Feedback