1*c29d5175Schristos************************************************************************** 2*c29d5175Schristos* The following are additional notes on the iotop program. 3*c29d5175Schristos* 4*c29d5175Schristos* $Id: iotop_notes.txt,v 1.1.1.1 2015/09/30 22:01:08 christos Exp $ 5*c29d5175Schristos* 6*c29d5175Schristos* COPYRIGHT: Copyright (c) 2007 Brendan Gregg. 7*c29d5175Schristos************************************************************************** 8*c29d5175Schristos 9*c29d5175Schristos 10*c29d5175Schristos* When using -P, how can a process exceed 100% I/O? 11*c29d5175Schristos 12*c29d5175SchristosThese percentages are based on disk time. They are in terms of a single disk. 13*c29d5175Schristos 14*c29d5175Schristos200% could mean 2 disks @ 100%, or 4 @ 50%, or some such combination. 15*c29d5175Schristos 16*c29d5175SchristosI could have capped it at 100% by dividing by disk count. I didn't. Disk 17*c29d5175Schristosutilisation is an asymmetric resource (unlike CPUs, which are (mostly) 18*c29d5175Schristossymmetric), so it's unfair to divide by all the disks capacity as an 19*c29d5175Schristosapplication cannot use every disks capacity (eg, writing to a /opt disk only). 20*c29d5175Schristos 21*c29d5175SchristosWould it be wise to report utilisation as 10% of overall capacity, if it 22*c29d5175Schristoscould mean that 1 disk was SATURATED out of ten? A value of 10% could 23*c29d5175Schristosunderstate the problem. 24*c29d5175Schristos 25*c29d5175SchristosInstead I add the utilisations and don't divide. 1 disk saturated out of 10 26*c29d5175Schristoswould be reported as 100% utilisation. This has the danger of overstating 27*c29d5175Schristosthe problem (consider all ten disks at 10% utilisation, this would also be 28*c29d5175Schristosreported as 100%). 29*c29d5175Schristos 30*c29d5175SchristosNothing is perfect when you are summarising to a single value! 31*c29d5175Schristos 32*c29d5175Schristos 33*c29d5175Schristos 34*c29d5175Schristos* Beware of overcounting metadevices, such as SVM and Veritas. 35*c29d5175Schristos 36*c29d5175SchristosThe current version of iotop reports on anything the kernel believes to be 37*c29d5175Schristosa block disk device. A problem happens when a metadevice contains physical 38*c29d5175Schristosdisk devices, and iotop reports on activity to both the metadevice and 39*c29d5175Schristosthe physical devices, which overcounts activity. 40*c29d5175Schristos 41*c29d5175SchristosConsider a metadevice that contains two physical disks which are both 42*c29d5175Schristosrunning at 100% utilised. iotop -P may report 300% utilisation, which is 43*c29d5175Schristos200% for the disks + 100% for the metadevice. We'd probably want to see 44*c29d5175Schristosa value of 200%, not 300%. Eliminating the counting of metadevices in DTrace 45*c29d5175Schristosisn't easy (without inelegant "hardwiring" of device types), however I do 46*c29d5175Schristosintend to find a way to fix this in future versions. 47*c29d5175Schristos 48*c29d5175Schristos 49