Open Different Traces

Supported Trace File Type

  • plain Text
  • csv file
  • binary file
  • vscsi trace

How to Open a Trace File

Now let’s open a trace file. You have three choices for opening different types of trace files. Choose the one that suits your needs.

>>> import PyMimircache as m
>>> c = m.cachecow()
>>> c.open("path/to/trace")
>>> c.csv("path/to/trace", init_params={'label':x})  # specify which column contains the request key(label)
>>> c.binary("path/to/trace", init_params={"label": x, "fmt": xxx})   # use same format as python struct
>>> c.vscsi("path/to/trace")                          # for vscsi format data

Note

for csv and binary data, the column/field number begins from 1, so the first column(field) is 1, the second is 2, etc. In the init_params, other possible parameters are listed in the table below

Keyword Argument relavant file type Possible Value Default Value Description
label csv/binary int this is required the column of label of the request
fmt binary string this is required fmt string of binary data, same as python struct
header csv True/False False whether csv data has header
delimiter csv char “,” the delimiter separating fields in the csv file
real_time csv/binary int NA the column of real time
op csv/binary int NA the column of operation (read/write)
size csv/binary int NA the column of block/request size

OK, data is ready, now let’s play!

If you want to read your data from cachecow, you can simply use cachecow as an iterator. For example, do the following:

>>> for request in c:
>>>     print(c)

Note

If you have a special data format, you can write your own reader in a few lines, see here about how to write your own cache reader.