In many high-performance systems today it is possible to exceed 4GiB/s
throughput. Therefore convert the rate and rate_min options from
FIO_OPTS_INT to FIO_OPTS_ULL.
Fixes #716.
Signed-off-by: Stephen Bates <sbates@raithlin.com>
unsigned long long bytes = 0;
unsigned long iops = 0;
unsigned long spent;
unsigned long long bytes = 0;
unsigned long iops = 0;
unsigned long spent;
- unsigned long rate;
- unsigned int ratemin = 0;
+ unsigned long long rate;
+ unsigned long long ratemin = 0;
unsigned int rate_iops = 0;
unsigned int rate_iops_min = 0;
unsigned int rate_iops = 0;
unsigned int rate_iops_min = 0;
* check bandwidth specified rate
*/
if (bytes < td->rate_bytes[ddir]) {
* check bandwidth specified rate
*/
if (bytes < td->rate_bytes[ddir]) {
- log_err("%s: rate_min=%uB/s not met, only transferred %lluB\n",
+ log_err("%s: rate_min=%lluB/s not met, only transferred %lluB\n",
td->o.name, ratemin, bytes);
return true;
} else {
td->o.name, ratemin, bytes);
return true;
} else {
if (rate < ratemin ||
bytes < td->rate_bytes[ddir]) {
if (rate < ratemin ||
bytes < td->rate_bytes[ddir]) {
- log_err("%s: rate_min=%uB/s not met, got %luB/s\n",
+ log_err("%s: rate_min=%lluB/s not met, got %lluB/s\n",
td->o.name, ratemin, rate);
return true;
}
td->o.name, ratemin, rate);
return true;
}
if (rate < rate_iops_min ||
iops < td->rate_blocks[ddir]) {
if (rate < rate_iops_min ||
iops < td->rate_blocks[ddir]) {
- log_err("%s: rate_iops_min=%u not met, got %lu IOPS\n",
+ log_err("%s: rate_iops_min=%u not met, got %llu IOPS\n",
td->o.name, rate_iops_min, rate);
return true;
}
td->o.name, rate_iops_min, rate);
return true;
}
{
.name = "rate",
.lname = "I/O rate",
{
.name = "rate",
.lname = "I/O rate",
.off1 = offsetof(struct thread_options, rate[DDIR_READ]),
.off2 = offsetof(struct thread_options, rate[DDIR_WRITE]),
.off3 = offsetof(struct thread_options, rate[DDIR_TRIM]),
.off1 = offsetof(struct thread_options, rate[DDIR_READ]),
.off2 = offsetof(struct thread_options, rate[DDIR_WRITE]),
.off3 = offsetof(struct thread_options, rate[DDIR_TRIM]),
.name = "rate_min",
.alias = "ratemin",
.lname = "I/O min rate",
.name = "rate_min",
.alias = "ratemin",
.lname = "I/O min rate",
.off1 = offsetof(struct thread_options, ratemin[DDIR_READ]),
.off2 = offsetof(struct thread_options, ratemin[DDIR_WRITE]),
.off3 = offsetof(struct thread_options, ratemin[DDIR_TRIM]),
.off1 = offsetof(struct thread_options, ratemin[DDIR_READ]),
.off2 = offsetof(struct thread_options, ratemin[DDIR_WRITE]),
.off3 = offsetof(struct thread_options, ratemin[DDIR_TRIM]),