Sequence-to-sequence models for workload interference
  Co-scheduling of jobs in data-centers is a challenging scenario, where jobs
can compete for resources yielding to severe slowdowns or failed executions.
Efficient job placement on environments where resources are shared requires
awareness on how jobs interfere during execution, to go far beyond ineffective
resource overbooking techniques. Current techniques, most of them already
involving machine learning and job modeling, are based on workload behavior
summarization across time, instead of focusing on effective job requirements at
each instant of the execution. In this work we propose a methodology for
modeling co-scheduling of jobs on data-centers, based on their behavior towards
resources and execution time, using sequence-to-sequence models based on
recurrent neural networks. The goal is to forecast co-executed jobs footprint
on resources along their execution time, from the profile shown by the
individual jobs, to enhance resource managers and schedulers placement
decisions. The methods here presented are validated using High Performance
Computing benchmarks based on different frameworks (like Hadoop and Spark) and
applications (CPU bound, IO bound, machine learning, SQL queries...).
Experiments show that the model can correctly identify the resource usage
trends from previously seen and even unseen co-scheduled jobs.
