Calculate the bandwidth of IO subsystem from OS linux
We can calculate the IO rate of the disk from the OS to get an estimate of read/write to and from disk.
Locate a particular datafile on any of storage partition
[oracle@orcl12x ~]$ locate *.dbf
/app01/oradata/orcl12x/temp01.dbf
/app01/product/12.1.0/dbhome_1/dbs/cntrlorcl12x.dbf
/data01/oracle/oradata/orcl12x/datafile/ORCL12X/datafile/o1_mf_sysaux_hkg3odmm_.dbf
/data01/oracle/oradata/orcl12x/datafile/ORCL12X/datafile/o1_mf_system_hkg3k7kk_.dbf
/data01/oracle/oradata/orcl12x/datafile/ORCL12X/datafile/o1_mf_undotbs1_hkg3pxkh_.dbf
/data01/oracle/oradata/orcl12x/datafile/ORCL12X/datafile/o1_mf_users_hkg3v57d_.dbf
/data01/oracle/oradata/orcl12x/datafile/ORCL12X/datafile/testencry.dbf
Use dd to read the datafile and write the output to a output file and use time to determine the time taken for write.
[oracle@orcl12x ~]$ time dd if=/data01/oracle/oradata/orcl12x/datafile/ORCL12X/datafile/o1_mf_sysaux_hkg3odmm_.dbf of=IORATE.out
1679376+0 records in
1679376+0 records out
859840512 bytes (860 MB) copied, 48.0447 s, 17.9 MB/s
real 0m48.070s
user 0m0.682s
sys 0m8.571s
[oracle@orcl12x ~]$
Here we get ~ 48 seconds round trip time
IO rate = filesize/total time taken for I/O
Calculating the filesize:
[oracle@orcl12x ~]$ du -sh /data01/oracle/oradata/orcl12x/datafile/ORCL12X/datafile/o1_mf_sysaux_hkg3odmm_.dbf
---> 821M -->filesize
821/48 = 17 MB/sec
Thus we got an bandwidth estimate of the IO subsystem