Fig 1.
Performances with an SSD and an HDD while varying the numbers of threads.
(a) SSD (solid state drive).(b) HDD (hard disk drive).
Fig 2.
Parallelism adjustment algorithm of IOPA.
Table 1.
IOPA programming interface.
Fig 3.
User configuration for IOPA.
Fig 4.
Example program and function call relationships of IOPA.
Fig 5.
IOPA system architecture.
Fig 6.
Detailed implementation of IOPA monitor.
Table 2.
Benchmark applications.
Fig 7.
IOPA parameter values used in the experiments.
Fig 8.
I/O throughput of microbenchmarks with an SSD.
(a) File size: 10 KB files. (b) File size: 50 KB. (c) File size: 100 KB.
Fig 9.
I/O throughput of Bzip2 with an SSD.
(a) Fixed numbers of threads. (b) IOPA.
Fig 10.
I/O throughput of Fluidanimate with an SSD.
(a) Fixed numbers of threads. (b) IOPA.
Fig 11.
I/O throughput of Blackscholes with an SSD.
(a) Fixed numbers of threads. (b) IOPA.
Fig 12.
I/O throughput of Canneal with an SSD.
(a) Fixed numbers of threads. (b) IOPA.
Fig 13.
I/O throughput of Bodytrack with an SSD.
(a) Fixed numbers of threads. (b) IOPA.
Table 3.
Execution time of benchmark applications with SSD.
Fig 14.
I/O throughput of microbenchmarks with an HDD.
(a) File size: 10 KB files. (b) File size: 50 KB. (c) File size: 100 KB.
Fig 15.
I/O throughput of Bzip2 with an HDD.
(a) Fixed numbers of threads. (b) IOPA.
Fig 16.
I/O throughput of Fluidanimate with an HDD.
(a) Fixed numbers of threads. (b) IOPA.
Fig 17.
I/O throughput of Blackscholes with an HDD.
(a) Fixed numbers of threads. (b) IOPA.
Fig 18.
I/O throughput of Canneal with an HDD.
(a) Fixed numbers of threads. (b) IOPA.
Fig 19.
I/O throughput of Bodytrack with an HDD.
(a) Fixed numbers of threads. (b) IOPA.
Table 4.
Execution time of benchmark applications with HDD.