diff options
Diffstat (limited to 'dev/ide_disk.cc')
-rw-r--r-- | dev/ide_disk.cc | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/dev/ide_disk.cc b/dev/ide_disk.cc index c13556ed6..701d3bf7d 100644 --- a/dev/ide_disk.cc +++ b/dev/ide_disk.cc @@ -406,6 +406,39 @@ IdeDisk::regStats() .name(name() + ".dma_write_txs") .desc("Number of DMA write transactions.") ; + + rdBandwidth + .name(name() + ".rdBandwidth") + .desc("Read Bandwidth (bits/s)") + .precision(0) + .prereq(dmaReadBytes) + ; + + wrBandwidth + .name(name() + ".wrBandwidth") + .desc("Write Bandwidth (bits/s)") + .precision(0) + .prereq(dmaWriteBytes) + ; + + totBandwidth + .name(name() + ".totBandwidth") + .desc("Total Bandwidth (bits/s)") + .precision(0) + .prereq(totBytes) + ; + + totBytes + .name(name() + ".totBytes") + .desc("Total Bytes") + .precision(0) + .prereq(totBytes) + ; + + rdBandwidth = dmaReadBytes * Stats::constant(8) / simSeconds; + wrBandwidth = dmaWriteBytes * Stats::constant(8) / simSeconds; + totBandwidth = rdBandwidth + wrBandwidth; + totBytes = dmaReadBytes + dmaWriteBytes; } void |