80ac020b479bd433590d221fcefa3eb47327f9a3 |
|
17-Dec-2014 |
Jens Axboe <axboe@fb.com> |
gettime-thread: set and allow multiple CPUs Also use the new option checking framework instead of carrying a flag for whether it's set or not. Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/cconv.c
|
4b4b0ef2c9fb1f1475b3535008f16cbd3888a904 |
|
09-Dec-2014 |
Jens Axboe <axboe@fb.com> |
Fix server/client set_options conversion Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/cconv.c
|
94b360f41976a2bd3c4d3476b5e26a96e1ea9b12 |
|
09-Dec-2014 |
Jens Axboe <axboe@fb.com> |
Get rid of _set variables We can just check the option set mask now. Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/cconv.c
|
9c62acd93cd70b6bfd01892b59926c4fb2a3639b |
|
09-Dec-2014 |
Jens Axboe <axboe@fb.com> |
options: add support for checking if an option has been set We often just do a non-zero check, but an option can be set and be set to zero, so we can't currently detect that. For complicated options, we add a second variable to mark if it has been set or not. This allows us to directly check if a given option was set by the user or not. Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/cconv.c
|
de54cfd8b8e93d2a32a02961f1587b83f0763aa8 |
|
11-Nov-2014 |
Jens Axboe <axboe@fb.com> |
Add support for verify triggers and verify state saving This allows you to (for instance) instantly terminate a verify write workload, and then later that everything was written correctly up to that very point. This can be useful for testing powercut scenarios, which is often problematic on storage devices. The trigger part is a file based notification scheme, similar to what is provided for the status dumps. When triggered, fio will exit immediately and write the verify state safely to disk. A trigger can be accompanied by a trigger command. Say you wanted to test powercut safety, the trigger could be something that immediately cut power to the machine. The verify state is either saved locally (if run locally), or saved over the network if run in client/server mode. Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/cconv.c
|
559073f664a872f32632892c560667097b29e963 |
|
06-Nov-2014 |
Jens Axboe <axboe@fb.com> |
Remove use of OS provided random functions We added the internal random generator a long time ago, and kept the OS variant around as an opt-in feature with using use_os_rand=1. We defaulted to using the fio provided one, and I doubt that anyone has used the option. The time has come to kill it. Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/cconv.c
|
e66dac263f65ed4d762299dcdc4f9a6a3fb427a7 |
|
22-Sep-2014 |
Jens Axboe <axboe@fb.com> |
Basic support for dedupe This adds and option, dedupe_percentage, that controls how many of the write IO buffers are identical. For instance, if this is set: dedupe_percentage=70 then 70% of the write IO buffers will have identical contents. The specific contents are, as before, controlled by the various options that set buffer contents or buffer compressibility. Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/cconv.c
|
bac4af11424ddeb340968c4ba4fc88df4f5c1ad0 |
|
03-Jul-2014 |
Jens Axboe <axboe@fb.com> |
Add support for storing compressed logs If log_store_compressed is set, fio won't decompress for storing them in a file. Instead, you can use --inflate-log=logfile.fz to output the contents to stdout. Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/cconv.c
|
38a812d7fa79a673855efb6324c8fc68b92b89c1 |
|
03-Jul-2014 |
Jens Axboe <axboe@fb.com> |
Add support for runtime log compression If log_compression=64M is specified, fio will "bite" off chunks of the IO logs and runtime compress them with zlib. This can greatly reduce the amount of memory required to do iops/bw/lat logging of a run, at the cost of using some background CPU for the compression. Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/cconv.c
|
01f1d15ad8eb284237ba41ab99f27ba8e3552b3c |
|
02-Jul-2014 |
Jens Axboe <axboe@fb.com> |
cconv: convert ->log_offset on the wire Forgotten in commit ae58885234 Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/cconv.c
|
77731b29c35286a43ca6109ebf13389169ec20e9 |
|
28-Apr-2014 |
Jens Axboe <axboe@fb.com> |
Add option for io_limit 'size' denotes both the size of the region for IO, as well as the amount of IO to transfer. Sometimes it's useful to be able to set them separately instead. With this patch, you can do: size=100G io_limit=10G and have fio do 10G of IO between 0..100G of the address space. Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/cconv.c
|
3660ceae229f08b4086279be7c82e86926f0304b |
|
15-Apr-2014 |
Jens Axboe <axboe@fb.com> |
strcpy: kill last of the suspect ones Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/cconv.c
|
10aa136bddbaa7c845ab4eacb4a9a4a88d6657a3 |
|
02-Apr-2014 |
Jens Axboe <axboe@fb.com> |
Cleanup symbols that should be static Run analysis on symbols not used outside of their current file, turn them into statics. Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/cconv.c
|
bedc9dc24223bb33be4120f4a57718bc54888ca5 |
|
17-Mar-2014 |
Jens Axboe <axboe@fb.com> |
Add support for file appends Add option file_append (bool). If set, fio will append to a file instead of operate within the size of it. This is similar to setting offset= to the size of each file. Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/cconv.c
|
c2acfbac7e9eb8ac5407ac024c0fd000614c77e2 |
|
28-Feb-2014 |
Jens Axboe <axboe@fb.com> |
Add support for cpus_allowed_policy Two policies are supported: shared cpumask is shared between all threads. This is the original behavior. split cpumask is split between threads, each thread gets a unique CPU. Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/cconv.c
|
23ed19b0e10749dca2389511f78d89db886c064a |
|
20-Feb-2014 |
Christian Ehrhardt <ehrhardt@linux.vnet.ibm.com> |
fio: provide an option for a startdelay range This patch allows the specification of start delay as range. With a range each thread will chose an individual startdelay out of the range. That solves an issue of startdelay being the same for each numjob clone and that way spreads all kind of activities e.g. that all clones with mixed r/w jobs switch r/w at the same time. Also all kind of other "thundering herd" issues can be softened by some time spread due to this option. Signed-off-by: Christian Ehrhardt <ehrhardt@linux.vnet.ibm.com> Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/cconv.c
|
56e2a5fc76067c91738f7eb0efbd6ec6d349e0f2 |
|
20-Feb-2014 |
Christian Ehrhardt <ehrhardt@linux.vnet.ibm.com> |
fio: allow general repeatability This patch adds a "allrandrepeat" option similar to the existing randrepeat. But other than the former option it does not only affect the random I/O pattern, but also all remaining users of randomness as well. By that e.g. testcases using nrfiles, filesize ranges, blocksizesplit ranges and so on will stay repeatable across (euqally parametrized) runs as well. To maintain compatibility the default is off. Signed-off-by: Christian Ehrhardt <ehrhardt@linux.vnet.ibm.com> Update by me to fix missing thread_options.h and cconv.c change. Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/cconv.c
|
eb0c74ae74ce458dd55b7a7d11c5ba7ae59bf5ed |
|
11-Feb-2014 |
Jens Axboe <axboe@fb.com> |
Plug a free basic memory leaks Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/cconv.c
|
363cffa71a96eb4c7595bb8c325a09eb01f766a5 |
|
28-Jan-2014 |
Grant Grundler <grundler@chromium.org> |
fio: consolidate rand_seed to uint64_t csscope showed rand_seed was defined 4 times - each a different type. While they are used differently, the places where they overlap should reference the same type. This patch makes three of them the same as suggested by Jens Axboe. Signed-off-by: Grant Grundler <grundler@chromium.org> Updated by me to change rand_seed option to unsigned long long and changes related to that. Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/cconv.c
|
3c78a83fe8098489706c992d431e466222d94e4c |
|
15-Jan-2014 |
Jens Axboe <axboe@kernel.dk> |
server: convert buffer pattern settings across client/server Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/cconv.c
|
04778baf2def8c1c5a3d7d60233c56d140831711 |
|
11-Jan-2014 |
Jens Axboe <axboe@kernel.dk> |
Add option to manually seed the random generators Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/cconv.c
|
3e260a46ea9a8de224c3d0a29a608da3440f284a |
|
09-Dec-2013 |
Jens Axboe <axboe@kernel.dk> |
Add options to have fio latency profile a device This adds three new options: - latency_target. This defines a specific latency target, in usec. - latency_window. This defines the period over which fio samples. - latency_percentile. This defines the percentage of IOs that must meet the criteria specified by latency_target/latency_window. With these options set, fio will run the described workload and vary the queue depth between 1 and iodepth= to find the best performing spot that meets the criteria specified by the three options. A sample job file is also added to demonstrate how to use this. Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/cconv.c
|
d01612f3ae2515eb035d0c4ce954d8cb167a0a61 |
|
15-Nov-2013 |
Chris Mason <chris.mason@fusionio.com> |
Add support for O_ATOMIC O_ATOMIC makes writes atomic, meaning that they are fully stable on media (in the event of a power cut) when acknowledged by the device and OS. This only truly works on Linux with the pending patches to add O_ATOMIC. Updated by Jens to: - Add man page and HOWTO description of the option - Make O_ATOMIC imply O_DIRECT, so that it actually works if you don't set O_DIRECT manually. - Add the option to the conversion list so it works for client/server. - Error handling so that if atomic=1 is set and the OS does not support it, error out instead of just pretending it works. Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/cconv.c
|
ddf24e42b5f801e6a66f8976c97edcb88080ecdf |
|
09-Aug-2013 |
Jens Axboe <axboe@kernel.dk> |
Add number_ios= option Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/cconv.c
|
6aca9b3d1042bef94958ebee0656755a91695f4b |
|
25-Jul-2013 |
Jens Axboe <axboe@kernel.dk> |
Add support for bs_is_seq_rand This option will switch the meaning of the read,write part of any blocksize setting to mean sequential,random instead. Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/cconv.c
|
d94722713ebd7bbdbf8b284b7563f2dd17964e24 |
|
25-Jul-2013 |
Jens Axboe <axboe@kernel.dk> |
Add support for randomness of any IO direction sequential_random used to be applied to all of the IO directions, with no possibility of having different settings for reads, writes, and trims. Now it supports setting each of them individually. By default, if you do: sequential_random=50 it will still apply to all three. If you do: sequential_random=10,90,80 you would get reads 10% random, writes 90% random, and trims 80% random. Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/cconv.c
|
5971116e9e3714d830dcb4bebf7b10e3803cbefd |
|
26-Apr-2013 |
Jens Axboe <axboe@kernel.dk> |
Get rid of td->o.perc_seq No point in tracking both perc_seq and perc_rand, when we know that perc_seq + perc_rand == 100. Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/cconv.c
|
211c9b8948b43ed47aedf1227e0444a58db015e4 |
|
26-Apr-2013 |
Jens Axboe <axboe@kernel.dk> |
Add support for modifying the randomness of a workload Fio supports random or sequential IO, or random IO with a number of sequential IOs in between. The percentage_random options allows more fine grained control over this. It defaults to 100, which would make any random workload still purely random. If set below 100, there will be some percentage of sequential IOs. This happens randomly, but at the specified percentages. The percentage_sequential option is just the complement of that, it is guaranteed that: percentage_sequential + percentage_random == 100% The later setting has priority, each will adjust the other. Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/cconv.c
|
22f80458a520d0c5371c64bf91d24cdd21dff825 |
|
09-Apr-2013 |
Jens Axboe <axboe@kernel.dk> |
Merge branch 'master' into gfio Conflicts: eta.c fio.h init.c options.c stat.c Signed-off-by: Jens Axboe <axboe@kernel.dk>
|
d7213923067aa49922962a469a691c3ec951064d |
|
21-Mar-2013 |
Jens Axboe <axboe@kernel.dk> |
Merge branch 'master' into gfio Conflicts: Makefile fio.h options.c Signed-off-by: Jens Axboe <axboe@kernel.dk>
|
9db01ef976006c002b05fa4e4ec589eb029aac5b |
|
07-Feb-2013 |
Jens Axboe <axboe@kernel.dk> |
Merge branch 'master' into gfio Conflicts: Makefile configure fio.h Signed-off-by: Jens Axboe <axboe@kernel.dk>
|
90b7a96d9573a14f20470af2aa0dd4e60611a477 |
|
04-Feb-2013 |
Jens Axboe <axboe@kernel.dk> |
Merge branch 'master' into gfio Conflicts: Makefile fio.h parse.c Signed-off-by: Jens Axboe <axboe@kernel.dk>
|
95820b6e6c92025df8d89c0bf39b174e53137c41 |
|
31-Jan-2013 |
Jens Axboe <axboe@kernel.dk> |
Merge branch 'master' into gfio Conflicts: Makefile client.c configure fio.c fio.h server.c server.h Signed-off-by: Jens Axboe <axboe@kernel.dk>
|
836fcc0fceb233ebcc41ee63b4ea5cae20b678a4 |
|
24-Jan-2013 |
Jens Axboe <axboe@kernel.dk> |
Merge branch 'master' into gfio Conflicts: Makefile backend.c client.c fio.c fio.h ioengine.h options.c os/os-linux.h server.c Signed-off-by: Jens Axboe <axboe@kernel.dk>
|
49758e11f3658686ccd1c61724a5eba142f3ee4f |
|
03-Dec-2012 |
Jens Axboe <axboe@kernel.dk> |
Merge branch 'master' into gfio Conflicts: Makefile fio.h io_u.c ioengine.h memory.c Signed-off-by: Jens Axboe <axboe@kernel.dk>
|
1e5324e723116a5faf9da686993cc79c14d62d4b |
|
14-Nov-2012 |
Jens Axboe <axboe@kernel.dk> |
Merge branch 'master' into gfio Conflicts: Makefile backend.c client.c fio.h options.c parse.c parse.h server.c server.h Signed-off-by: Jens Axboe <axboe@kernel.dk>
|
b999b3c74daa2dedd398544e898b54d8b221314c |
|
24-Sep-2012 |
Jens Axboe <axboe@kernel.dk> |
server: include new options, bump server rev Todo: convert the new error additions across the wire. Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/cconv.c
|
fb390e242cac8868e01cdc2046c63e04e3d53d70 |
|
07-May-2012 |
Jens Axboe <axboe@kernel.dk> |
Merge branch 'master' into gfio Conflicts: Makefile backend.c client.c fio.h os/windows/install.wxs server.c server.h Signed-off-by: Jens Axboe <axboe@kernel.dk>
|
203160d52b866497caef35335a7032fb9702a4af |
|
29-Mar-2012 |
Jens Axboe <axboe@kernel.dk> |
options: get rid of more .cb option usage we don't need - The lat/bw/iops log does not need two ways of storing whether they are enabled or not. Just change the option to a string storing variant, and use the existance of a filename to see if it's set or not. - The trim_percentage option need not have a callback, the parser knows the limits and can store it appropriately. - The verify_offset option can express it's minimum value directly, it doesn't need a callback to set it on its own. Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/cconv.c
|
28727df79348d4ebbd8fd4b0dd89bbca035f68d0 |
|
29-Mar-2012 |
Jens Axboe <axboe@kernel.dk> |
options: move ioprio/ioprio_class into thread_options space Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/cconv.c
|
ae278f9a37b942132595b339389160a250a966a8 |
|
28-Mar-2012 |
Jens Axboe <axboe@kernel.dk> |
Add o->lockmem to conversion functions Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/cconv.c
|
83ea422a62b8a42b14c362db61c2e7bf53862e80 |
|
28-Mar-2012 |
Jens Axboe <axboe@kernel.dk> |
Start the process of making options more gfio friendly We either need to eliminate the option callbacks, or ensure that they don't have side effects outside of touching td->o. We will need to use &td->o as the data passed in for the callbacks, not the full td. Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/cconv.c
|
3c3ed070502bbfec387ded2c43d5e4559ca24a63 |
|
27-Mar-2012 |
Jens Axboe <axboe@kernel.dk> |
White space spring cleaning Lets squash them all, with a bit of tooling help. Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/cconv.c
|
0353050fe32065e1932a43a7c39a7c390ea71142 |
|
19-Mar-2012 |
Jens Axboe <axboe@kernel.dk> |
cpu: move cpuload/cpuchunks options into private engine option space Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/cconv.c
|
6a4cf74fc2521b601cb1cc9478526cc441830a5c |
|
16-Mar-2012 |
Jens Axboe <axboe@kernel.dk> |
Merge branch 'master' into gfio Conflicts: fio.h Signed-off-by: Jens Axboe <axboe@kernel.dk>
|
e476994eed3bee246ca166ea6ad6018911408e9b |
|
13-Mar-2012 |
Jens Axboe <axboe@kernel.dk> |
Merge branch 'master' into gfio Conflicts: client.c fio.h Signed-off-by: Jens Axboe <axboe@kernel.dk>
|
51167799022df58d45a99bbd7aa9cf81a47c46c9 |
|
08-Mar-2012 |
Jens Axboe <axboe@kernel.dk> |
Add basic cconv test Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/cconv.c
|
2dc1cbb52f73303d479a72e99930a2838c4b0fa4 |
|
08-Mar-2012 |
Jens Axboe <axboe@kernel.dk> |
Add thread_options_pack structure First step towards having an on-disk and on-wire independent options structure, with the goal being that we parse options locally (hence allowing them to be edited sanely) and send them to the server in one nice package. Additionally, this is a step towards being able to have a new fio/gfio "project" file format, which includes all the info a given client needs. This includes job options, where to connect, etc. Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/cconv.c
|