Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people, just like you, are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
Solved

OS   IOPS value Vs  Storage IOPS value

Posted on 2012-12-27
7
336 Views
Last Modified: 2013-01-14
How do we differentiate the IOPS value from  OS to Storage. For an example I'm writing 8K block of data using dd command in linux

dd if=/dev/zero of=/opt/rg/perf/testing123 bs=8k count=30000000
245760000000 bytes (246 GB) copied, 334.014 s, 736 MB/s

IOPS value is 30000000/334= 89820

but in Storage I'm only seeing around 2000 IOPS. IF I understand correctly it converts to different block size, and then do the calculation?
0
Comment
Question by:mokkan
  • 3
  • 3
7 Comments
 
LVL 47

Accepted Solution

by:
dlethe earned 375 total points
ID: 38724920
dd does NOT write data to the HDD in 8KB I/O chunks, or for that matter, the way you are running it, it won't even write only 8KB x 30000000 bytes of data.

Your filesystem, kernel, and device drivers are doing a heck of a lot of things underneath the covers such as dealing with journaling, aggregating I/O, and potentially doing some compression depending on some settings.

It is even queuing I/O, so if you kill the dd, you will note that the HDD still blinks for a while after dd is killed.

If you want to measure how fast data gets to the disk, with reasonable accuracy, you must do a dd but set the of= to the raw physical device (which destroys file system).   If you want to insure that the block sizes are correct and when you do a dd to write chunks in 8KB and exactly 8KB of data gets written and nothing else, then you have to write a program that uses the pass-through /dev/sg driver and send out the WRITE(10) and/or WRITE(16) CDBs.   The raw SCSI method is the ONLY accurate means of having complete control.
0
 
LVL 55

Assisted Solution

by:andyalder
andyalder earned 125 total points
ID: 38725369
Same goes for Windows, the device driver will even re-order writes to try to make bigger I/Os to cut down the IOPS requirement especially if it's a clever RAID controller.
0
 

Author Comment

by:mokkan
ID: 38727391
Thank you very much. If I'm  writing to  raw device, then how do I much up IOPS value with storage? Does it need to be equal or depends on the storage and stripe size?
0
PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

 
LVL 47

Assisted Solution

by:dlethe
dlethe earned 375 total points
ID: 38727429
There is no such thing as stripe size when sending raw WRITE commands to the HDD.  If you send it 2,618 bytes, then that is what it writes.  IF you send 32,768 bytes, then that is what it writes.

Now what i think you want to do is send raw SCSI commands to the RAID volume, and that process depends on whether you are doing hardware or software RAID .. so be specific, what is the method you use for RAID?
0
 

Author Comment

by:mokkan
ID: 38727445
No, I mean in storage side, does it convert to different stripe size and write it to disk?
0
 
LVL 47

Assisted Solution

by:dlethe
dlethe earned 375 total points
ID: 38727504
If you send the raw scsi commands to the RAID volume, then the controller will slice and dice as necessary to get it to the disk.  Example, if stripe size is 64KB and you have a 3-disk RAID5, then if you send just one byte to the raid volume, then this will generate approx 256KB worth of I/O.

But if you read 1 byte, then that could generate anywhere from 1 byte to 64KB worth of physical disk I/O.

It is all dependent on understanding the RAID architecture.
0
 

Author Closing Comment

by:mokkan
ID: 38774389
Thank you all.
0

Featured Post

Efficient way to get backups off site to Azure

This user guide provides instructions on how to deploy and configure both a StoneFly Scale Out NAS Enterprise Cloud Drive virtual machine and Veeam Cloud Connect in the Microsoft Azure Cloud.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Data center, now-a-days, is referred as the home of all the advanced technologies. In-fact, most of the businesses are now establishing their entire organizational structure around the IT capabilities.
The question appears often enough, how do I transfer my data from my old server to the new server while preserving file shares, share permissions, and NTFS permisions.  Here are my tips for handling such a transfer.
This video teaches viewers how to encrypt an external drive that requires a password to read and edit the drive. All tasks are done in Disk Utility. Plug in the external drive you wish to encrypt: Make sure all previous data on the drive has been …
This tutorial will walk an individual through the process of installing the necessary services and then configuring a Windows Server 2012 system as an iSCSI target. To install the necessary roles, go to Server Manager, and select Add Roles and Featu…

808 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question