| Mohan Srinivasan | b707f30 | 2017-01-19 16:40:52 -0800 | [diff] [blame] | 1 | IOshark is a repeatable application workload storage benchmark. You |
| 2 | can find more documentation on IOshark at : |
| 3 | https://docs.google.com/a/google.com/document/d/1Bhq7iNPVc_JzwRrkmZqcPjMvWgpHX0r3Ncq-ZsRNOBA/edit?usp=sharing |
| 4 | |
| 5 | The short summary of what IOshark is : IOshark has 2 components, one |
| Mohan Srinivasan | 9d00a12 | 2017-03-09 11:24:38 -0800 | [diff] [blame] | 6 | is a strace+ftrace compiler that takes straces and select ftraces fed |
| 7 | into it and compiles this into bytecodes (stored in *.wl files). The |
| 8 | compiler runs on a Linux host. The second component (which runs on the |
| 9 | device) is the tester that takes as input the bytecode files (*.wl |
| 10 | files) and executes them on the device. |
| Mohan Srinivasan | b707f30 | 2017-01-19 16:40:52 -0800 | [diff] [blame] | 11 | |
| 12 | How to Run : |
| 13 | ---------- |
| 14 | - First collect straces and compile these into bytecodes. The wrapper |
| 15 | script provided (collect-straces.sh) collects straces, ships them to |
| 16 | the host where the script runs, compiles and packages up the bytecode |
| 17 | files into a wl.tar file. |
| 18 | - Ship the wl.tar file and the iostark_bench binaries to the target |
| 19 | device (on /data/local/tmp say). Explode the tarfile. |
| 20 | - Run the tester. "ioshark_bench *.wl" runs the test with default |
| 21 | options. Supported ioshark_bench options : |
| 22 | -d : Preserve the delays between successive filesystem syscalls as |
| 23 | seen in the original straces. |
| 24 | -n <N> : Run for N iterations |
| 25 | -t <N> : Limit to N threads. By default (without this option), IOshark |
| 26 | will launch as many threads as there are input files, so 1 thread/file. |
| 27 | -v : verbose. Chatty mode. |
| Mohan Srinivasan | 9d00a12 | 2017-03-09 11:24:38 -0800 | [diff] [blame] | 28 | -s : One line summary. |
| 29 | -q : Don't create the files in read-only partitions like /system and |
| 30 | /vendor. Instead do reads on those files. |