Open
Description
When -m setting is set to a high value like 1000 and running an ec2 instance like i3en.metal with a high number of cores, fio fails because a fio specification is generated with too many tasks. Fio can't deal with more than 4096 tasks.
When I change the 'growth' in the following code from 1.05 to 1.10, then the number of generated tasks is sufficiently reduced to let fio run with max concurrency of 2000.
def create_fio_spec(fname):
with open(fname, 'w') as f:
f.write(header.format(**globals()))
depth = 1
growth = 1.05
while depth <= maxdepth:
depth_remain = depth
threads_remain = max_threads
new_group = 'stonewall'
# distribute load among max_threads
while depth_remain:
depth_now = int(depth_remain / threads_remain)
if depth_now:
f.write(job_template.format(jobname=depth, depth=depth_now, new_group=new_group))
new_group = ''
depth_remain -= depth_now
threads_remain -= 1
depth = int(max(math.ceil(depth * growth), depth + 1))
Metadata
Metadata
Assignees
Labels
No labels