X-Git-Url: https://git.kernel.dk/?a=blobdiff_plain;f=thread_options.h;h=493e92ec2ae36e9cfa9aca95129bdf5057cb2681;hb=f0d1393544bf5e2bfdb26d09f5153533f63d7375;hp=10d7ba61334a08045e26e0fe9447314f11461761;hpb=e0a04ac15f6164cfceb3e1090cc1055e3c823f7d;p=fio.git diff --git a/thread_options.h b/thread_options.h index 10d7ba61..493e92ec 100644 --- a/thread_options.h +++ b/thread_options.h @@ -20,6 +20,7 @@ enum fio_memtype { MEM_MMAP, /* use anonynomous mmap */ MEM_MMAPHUGE, /* memory mapped huge file */ MEM_MMAPSHARED, /* use mmap with shared flag */ + MEM_CUDA_MALLOC,/* use GPU memory */ }; #define ERROR_STR_MAX 128 @@ -65,8 +66,10 @@ struct thread_options { unsigned int iodepth_batch_complete_min; unsigned int iodepth_batch_complete_max; + unsigned int unique_filename; + unsigned long long size; - unsigned long long io_limit; + unsigned long long io_size; unsigned int size_percent; unsigned int fill_device; unsigned int file_append; @@ -119,6 +122,7 @@ struct thread_options { unsigned int verify_state_save; unsigned int use_thread; unsigned int unlink; + unsigned int unlink_each_loop; unsigned int do_disk_util; unsigned int override_sync; unsigned int rand_repeatable; @@ -126,10 +130,13 @@ struct thread_options { unsigned long long rand_seed; unsigned int dep_use_os_rand; unsigned int log_avg_msec; + unsigned int log_hist_msec; + unsigned int log_hist_coarseness; unsigned int log_max; unsigned int log_offset; unsigned int log_gz; unsigned int log_gz_store; + unsigned int log_unix_epoch; unsigned int norandommap; unsigned int softrandommap; unsigned int bs_unaligned; @@ -164,6 +171,10 @@ struct thread_options { unsigned long long start_delay_high; unsigned long long timeout; unsigned long long ramp_time; + unsigned int ss_state; + fio_fp64_t ss_limit; + unsigned long long ss_dur; + unsigned long long ss_ramp_time; unsigned int overwrite; unsigned int bw_avg_time; unsigned int iops_avg_time; @@ -188,6 +199,9 @@ struct thread_options { unsigned short numa_mem_mode; unsigned int numa_mem_prefer_node; char *numa_memnodes; + unsigned int gpu_dev_id; + unsigned int start_offset_percent; + unsigned int iolog; unsigned int rwmixcycle; unsigned int rwmix[DDIR_RWDIR_CNT]; @@ -196,6 +210,7 @@ struct thread_options { unsigned int ioprio_class; unsigned int file_service_type; unsigned int group_reporting; + unsigned int stats; unsigned int fadvise_hint; unsigned int fadvise_stream; enum fio_fallocate_mode fallocate_mode; @@ -227,9 +242,16 @@ struct thread_options { char *read_iolog_file; char *write_iolog_file; + + unsigned int write_bw_log; + unsigned int write_lat_log; + unsigned int write_iops_log; + unsigned int write_hist_log; + char *bw_log_file; char *lat_log_file; char *iops_log_file; + char *hist_log_file; char *replay_redirect; /* @@ -238,8 +260,8 @@ struct thread_options { char *exec_prerun; char *exec_postrun; - unsigned int rate[DDIR_RWDIR_CNT]; - unsigned int ratemin[DDIR_RWDIR_CNT]; + uint64_t rate[DDIR_RWDIR_CNT]; + uint64_t ratemin[DDIR_RWDIR_CNT]; unsigned int ratecycle; unsigned int io_submit_mode; unsigned int rate_iops[DDIR_RWDIR_CNT]; @@ -318,13 +340,13 @@ struct thread_options_pack { uint32_t iodepth_batch; uint32_t iodepth_batch_complete_min; uint32_t iodepth_batch_complete_max; - uint32_t __proper_alignment_for_64b; uint64_t size; - uint64_t io_limit; + uint64_t io_size; uint32_t size_percent; uint32_t fill_device; uint32_t file_append; + uint32_t unique_filename; uint64_t file_size_low; uint64_t file_size_high; uint64_t start_offset; @@ -372,6 +394,7 @@ struct thread_options_pack { uint32_t verify_state_save; uint32_t use_thread; uint32_t unlink; + uint32_t unlink_each_loop; uint32_t do_disk_util; uint32_t override_sync; uint32_t rand_repeatable; @@ -379,10 +402,13 @@ struct thread_options_pack { uint64_t rand_seed; uint32_t dep_use_os_rand; uint32_t log_avg_msec; + uint32_t log_hist_msec; + uint32_t log_hist_coarseness; uint32_t log_max; uint32_t log_offset; uint32_t log_gz; uint32_t log_gz_store; + uint32_t log_unix_epoch; uint32_t norandommap; uint32_t softrandommap; uint32_t bs_unaligned; @@ -411,11 +437,14 @@ struct thread_options_pack { uint32_t fsync_blocks; uint32_t fdatasync_blocks; uint32_t barrier_blocks; - uint32_t pad1; uint64_t start_delay; uint64_t start_delay_high; uint64_t timeout; uint64_t ramp_time; + uint64_t ss_dur; + uint64_t ss_ramp_time; + uint32_t ss_state; + fio_fp64_t ss_limit; uint32_t overwrite; uint32_t bw_avg_time; uint32_t iops_avg_time; @@ -440,6 +469,8 @@ struct thread_options_pack { uint8_t verify_cpumask[FIO_TOP_STR_MAX]; uint8_t log_gz_cpumask[FIO_TOP_STR_MAX]; #endif + uint32_t gpu_dev_id; + uint32_t start_offset_percent; uint32_t cpus_allowed_policy; uint32_t iolog; uint32_t rwmixcycle; @@ -449,6 +480,7 @@ struct thread_options_pack { uint32_t ioprio_class; uint32_t file_service_type; uint32_t group_reporting; + uint32_t stats; uint32_t fadvise_hint; uint32_t fadvise_stream; uint32_t fallocate_mode; @@ -476,14 +508,20 @@ struct thread_options_pack { uint64_t trim_backlog; uint32_t clat_percentiles; uint32_t percentile_precision; - uint32_t pad2; fio_fp64_t percentile_list[FIO_IO_U_LIST_MAX_LEN]; uint8_t read_iolog_file[FIO_TOP_STR_MAX]; uint8_t write_iolog_file[FIO_TOP_STR_MAX]; + + uint32_t write_bw_log; + uint32_t write_lat_log; + uint32_t write_iops_log; + uint32_t write_hist_log; + uint8_t bw_log_file[FIO_TOP_STR_MAX]; uint8_t lat_log_file[FIO_TOP_STR_MAX]; uint8_t iops_log_file[FIO_TOP_STR_MAX]; + uint8_t hist_log_file[FIO_TOP_STR_MAX]; uint8_t replay_redirect[FIO_TOP_STR_MAX]; /* @@ -492,8 +530,8 @@ struct thread_options_pack { uint8_t exec_prerun[FIO_TOP_STR_MAX]; uint8_t exec_postrun[FIO_TOP_STR_MAX]; - uint32_t rate[DDIR_RWDIR_CNT]; - uint32_t ratemin[DDIR_RWDIR_CNT]; + uint64_t rate[DDIR_RWDIR_CNT]; + uint64_t ratemin[DDIR_RWDIR_CNT]; uint32_t ratecycle; uint32_t io_submit_mode; uint32_t rate_iops[DDIR_RWDIR_CNT]; @@ -531,7 +569,7 @@ struct thread_options_pack { uint64_t number_ios; uint32_t sync_file_range; - uint32_t pad3; + uint32_t pad2; uint64_t latency_target; uint64_t latency_window;