Low-level I/O Monitoring for Scientific Workflows
<|reference_start|>Low-level I/O Monitoring for Scientific Workflows: While detailed resource usage monitoring is possible on the low-level using proper tools, associating such usage with higher-level abstractions in the application layer that actually cause the resource usage in the first place presents a number of challenges. Suppose a large-scale scientific data analysis workflow is run using a distributed execution environment such as a compute cluster or cloud environment and we want to analyze the I/O behaviour of it to find and alleviate potential bottlenecks. Different tasks of the workflow can be assigned to arbitrary compute nodes and may even share the same compute nodes. Thus, locally observed resource usage is not directly associated with the individual workflow tasks. By acquiring resource usage profiles of the involved nodes, we seek to correlate the trace data to the workflow and its individual tasks. To accomplish that, we select the proper set of metadata associated with low-level traces that let us associate them with higher-level task information obtained from log files of the workflow execution as well as the job management using a task orchestrator such as Kubernetes with its container management. Ensuring a proper information chain allows the classification of observed I/O on a logical task level and may reveal the most costly or inefficient tasks of a scientific workflow that are most promising for optimization.<|reference_end|>
@article{witzke2024low-level,
    title={Low-level I/O Monitoring for Scientific Workflows},
    author={Joel Witzke, Ansgar L"o{ss}er, Vasilis Bountris, Florian Schintke,
  Bj"orn Scheuermann},
    journal={arXiv preprint arXiv:2408.00411},
    year={2024},
    archivePrefix={arXiv},
    eprint={2408.00411},
    primaryClass={cs.DC}
}