What is the best kind of IO? The one you do not have to do

May 3, 2012 – 3:38 pm

If no IO (input/output) operation is the best IO, than the second best IO is the one that can be done as close to the application and processor with best locality of reference. Then the third best IO is the one that can be done in less time, or at least cost or impact to the requesting application which means moving further down the memory and storage stack (figure 1).

Storage and IO or I/O locality of reference and storage hirearchy
Figure 1 memory and storage hierarchy

The problem with IO is that they are basic operation to get data into and out of a computer or processor so they are required; however, they also have an impact on performance, response or wait time (latency). IO require CPU or processor time and memory to set up and then process the results as well as IO and networking resources to move data to their destination or retrieve from where stored. While IOs cannot be eliminated, their impact can be greatly improved or optimized by doing fewer of them via caching, grouped reads or writes (pre-fetch, write behind) among other techniques and technologies.

Think of it this way, instead of going on multiple errands, sometimes you can group multiple destinations together making for a shorter, more efficient trip; however, that optimization may also take longer. Hence sometimes it makes sense to go on a couple of quick, short low latency trips vs. one single larger one that takes half a day however accomplishes many things. Of course, how far you have to go on those trips (e.g. locality) makes a difference of how many you can do in a given amount of time.

What is locality of reference?

Locality of reference refers to how close (e.g location) data exists for where it is needed (being referenced) for use. For example, the best locality of reference in a computer would be registers in the processor core, then level 1 (L1), level 2 (L2) or level 3 (L3) onboard cache, followed by dynamic random access memory (DRAM). Then would come memory also known as storage on PCIe cards such as nand flash solid state device (SSD) or accessible via an adapter on a direct attached storage (DAS), SAN or NAS device. In the case of a PCIe nand flash SSD card, even though physically the nand flash SSD is closer to the processor, there is still the overhead of traversing the PCIe bus and associated drivers. To help offset that impact, PCIe cards use DRAM as cache or buffers for data along with Meta or control information to further optimize and improve locality of reference. In other words, help with cache hits, cache use and cache effectiveness vs. simply boosting cache utilization.

What can you do the cut the impact of IO

  • Establish baseline performance and availability metrics for comparison
  • Realize that IOs are a fact of IT virtual, physical and cloud life
  • Understand what is a bad IO along with its impact
  • Identify why an IO is bad, expensive or causing an impact
  • Find and fix the problem, either with software, application or database changes
  • Throw more software caching tools, hyper visors or hardware at the problem
  • Hardware includes faster processors with more DRAM and fast internal busses
  • Leveraging local PCIe flash SSD cards for caching or as targets
  • Utilize storage systems or appliances that have intelligent caching and storage optimization capabilities (performance, availability, capacity).
  • Compare changes and improvements to baseline, quantify improvement

Related links on storage IO metrics and SSD performance
What is the best kind of IO? The one you do not have to do
Is SSD dead? No, however some vendors might be
Storage and IO metrics that matter
IO IO it is off to Storage and IO metrics we go
SSD and Storage System Performance
Speaking of speeding up business with SSD storage
Are Hard Disk Drives (HDD’s) getting too big?
Has SSD put Hard Disk Drives (HDD’s) On Endangered Species List?
Why SSD based arrays and storage appliances can be a good idea (Part I)
IT and storage economics 101, supply and demand
Researchers and marketers dont agree on future of nand flash SSD
EMC VFCache respinning SSD and intelligent caching (Part I)
SSD options for Virtual (and Physical) Environments Part I: Spinning up to speed on SSD
SSD options for Virtual (and Physical) Environments Part II: The call to duty, SSD endurance
SSD options for Virtual (and Physical) Environments Part III: What type of SSD is best for you?
SSD options for Virtual (and Physical) Environments Part IV: What type of SSD is best for your needs

Ok, nuff said for now

Cheers Gs

Greg Schulz – Author Cloud and Virtual Data Storage Networking (CRC Press, 2011), The Green and Virtual Data Center (CRC Press, 2009), and Resilient Storage Networks (Elsevier, 2004)

twitter @storageio

All Comments, (C) and (TM) belong to their owners/posters, Other content (C) Copyright 2006-2012 StorageIO All Rights Reserved

  1. 42 Trackback(s)

  2. May 3, 2012: More storage and IO metrics that matter | StorageIOblog
  3. May 3, 2012: Is SSD dead? No, however some vendors might be | StorageIOblog
  4. May 17, 2012: Are large storage arrays dead at the hands of SSD? | StorageIOblog
  5. May 18, 2012: The Data Center Journal Are large storage arrays dead at the hands of SSD?
  6. Jun 5, 2012: 21st Century IT - Greg Schulz - SSD Is in Your Future: Where, When & With What Are the Questions
  7. Jun 6, 2012: How much SSD do you need vs. want? - StorageIO Blog - IBM Storage Community
  8. Jun 26, 2012: The Data Center Journal How much SSD do you need vs. want?
  9. Aug 19, 2012: IBM buys flash solid state device (SSD) industry veteran TMS | StorageIOblog
  10. Aug 19, 2012: IBM buys flash solid state device (SSD) industry veteran TMS « Data-Center.BlogNotions - Thoughts from Industry Experts
  11. Aug 20, 2012: The Data Center Journal IBM buys flash solid state device (SSD) industry veteran TMS
  12. Oct 15, 2012: RAID and IOPS and IO observations - StorageIO Blog - IBM Storage Community
  13. Nov 12, 2012: Have SSDs been unsuccessful with storage arrays (with poll)? | StorageIOblog
  14. Nov 13, 2012: Have SSDs been unsuccessful with storage arrays (with poll)? - StorageIO Blog - IBM Storage Community
  15. Nov 24, 2012: Is SSD only for performance? | StorageIOblog
  16. Nov 27, 2012: SSD, flash and DRAM, DejaVu or something new? - StorageIO Blog - IBM Storage Community
  17. Nov 28, 2012: The Data Center Journal SSD, flash and DRAM, DejaVu or something new?
  18. Dec 6, 2012: Storage comments from the field and customers in the trenches | StorageIOblog
  19. Dec 9, 2012: Storage comments from the field and customers in the trenches « Data-Center.BlogNotions - Thoughts from Industry Experts
  20. Dec 12, 2012: Storage comments from the field and customers in the trenches - StorageIO Blog - IBM Storage Community
  21. Dec 19, 2012: The Data Center Journal Storage comments from the field and customers in the trenches
  22. Jan 16, 2013: Storage comments from the field and customers in the trenches | KevinsSpace
  23. Jan 21, 2013: Thanks for viewing StorageIO content and top 2012 viewed posts « Data-Center.BlogNotions - Thoughts from Industry Experts
  24. Feb 24, 2013: NetApp EF540, something familiar, something new | StorageIOblog
  25. Mar 29, 2013: Part II: XtremIO, XtremSW and XtremSF EMC flash ssd portfolio redefined | StorageIOblog
  26. May 19, 2013: How many IOPS can a HDD, HHDD or SSD do? | StorageIOblog
  27. May 23, 2013: VMware buys virsto, what about storage hypervisor's? | StorageIOblog
  28. May 23, 2013: SSD, flash and DRAM, DejaVu or something new? | StorageIOblog
  29. May 30, 2013: How many IOPS can a HDD, HHDD or SSD do? - StorageIO Blog - IBM Storage Community
  30. May 30, 2013: Part II: How many IOPS can a HDD, HHDD or SSD do with VMware? - StorageIO Blog - IBM Storage Community
  31. Jun 20, 2013: How many IOPS can a HDD, HHDD or SSD do? - The Data Center Journal
  32. Jun 24, 2013: Part II: How many IOPS can a HDD, HHDD or SSD do with VMware? - The Data Center Journal
  33. Jul 15, 2013: How much SSD do you need vs. want? | StorageIOblog
  34. Jul 16, 2013: Can we get a side of context with them IOPS and other storage | StorageIOblog
  35. Jul 17, 2013: Can we get a side of context with them IOPS and other storage metrics? - StorageIO Blog - IBM Storage Community
  36. Jul 26, 2013: Can we get context with them IOPS and other metrics? - The Data Center Journal
  37. Aug 12, 2013: Viking SATADIMM: Nand flash SATA SSD in DDR3 DIMM slot? | StorageIOblog
  38. Aug 13, 2013: Part II: XtremIO, XtremSW and XtremSF EMC flash ssd portfolio redefined | StorageIOblog
  39. Aug 19, 2013: Part II: How many IOPS can a HDD, HHDD or SSD do with VMware? | StorageIOblog
  40. Aug 24, 2013: IBM Server Side Storage I/O SSD Flash Cache Software | StorageIOblog
  41. Aug 24, 2013: Thanks for viewing StorageIO content and top 2012 viewed posts | StorageIOblog
  42. Nov 14, 2013: EMC announces XtremIO General Availability (Part I) | StorageIOblog
  43. Mar 30, 2014: StorageIOblog » Blog Archive Nand flash SSD server storage I/O conversations

Post a Comment

Powered by Disqus