/clusterdata

cluster data collected from production clusters in Alibaba for cluster management research

Primary LanguageJupyter Notebook

Alibaba Cluster Trace Program

Overview

The Alibaba Cluster Trace Program is published by Alibaba Group. By providing cluster trace from real production, the program helps the researchers, students and people who are interested in the field to get better understanding of the characterastics of modern internet data centers (IDC's) and the workloads.

So far, four versions of traces have been released:

  • cluster-trace-v2017 includes about 1300 machines in a period of 12 hours. The trace-v2017 firstly introduces the collocation of online services (aka long running applications) and batch workloads. To see more about this trace, see related documents (trace_2017). Download link is available after a short survey (survey link).
  • cluster-trace-v2018 includes about 4000 machines in a period of 8 days. Besides having larger scaler than trace-v2017, this piece trace also contains the DAG information of our production batch workloads. See related documents for more details (trace_2018). Download link is available after a survey (less than a minute, survey link).
  • cluster-trace-gpu-v2020 includes over 6500 GPUs (on ~1800 machines) in a period of 2 months. It describes the AI/ML workloads in the MLaaS (Machine-Learning-as-a-Service) provided by the Alibaba PAI (Platform for Artificial Intelligence) on GPU clusters. See the subdirectory (pai_gpu_trace_2020) for the released data, schema, and scripts for processing and visualization. Our analysis paper published in USENIX NSDI '22 is available here.
  • cluster-trace-microservices-v2021 contains 20000+ microservices in a period of 12 hours. The traces the first released to introduce the runtime metrics of microservices in the production cluster, including call dependencies, respond time, call rates, and so on. See the subdirectory (trace_2021) for more details. Our analysis paper, accepted by SoCC '21, is available here.
  • cluster-trace-microarchitecture-v2022 first provides AMTrace (Alibaba Microarchitecutre Trace). AMTrace is the first fine-granulairty and large-scale microarchitectural metrics of Alibaba Colocation Datacenter. Based AMTrace, researchers can analysis: CPU performance, microarchitecture contention, memory bandwidth contention and so on. Our paper is accepted by ICPP'22. See the subdirectory (trace_2022) for more details.
  • cluster-trace-gpu-v2023 includes over 6200 GPUs (on ~1200 machines). It describes the AI/ML workloads with diverse resource specifications in a heterogeneous GPU cluster. In our "Beware of Fragmentation" paper (published in USENIX ATC '23), we modeled this trace in a Kubernetes Scheduler Simulator and demonstrated that our proposed Fragmentation Gradient Descent (FGD) policy outperforms classic scheduling policies like Best-Fit, Dot-Product, etc. See fgd_gpu_trace_2023 for the released data, schema, and scripts for processing.

We encourage anyone to use the traces for study or research purposes, and if you had any question when using the trace, please contact us via email: alibaba-clusterdata, or file an issue on Github. Filing an issue is recommanded as the discussion would help all the community. Note that the more clearly you ask the question, the more likely you would get a clear answer.

It would be much appreciated if you could tell us once any publication using our trace is available, as we are maintaining a list of related publicatioins for more researchers to better communicate with each other.

In future, we will try to release new traces at a regular pace, please stay tuned.

Our motivation

As said at the beginning, our motivation on publishing the data is to help people in related field get a better understanding of modern data centers and provide production data for researchers to varify their ideas. You may use trace however you want as long as it is for reseach or study purpose.

From our perspective, the data is provided to address the challenges Alibaba face in IDC's where online services and batch jobs are collocated. We distill the challenges as the following topics:

  1. Workload characterizations. How to characterize Alibaba workloads in a way that we can simulate various production workload in a representative way for scheduling and resource management strategy studies.
  2. New algorithms to assign workload to machines. How to assign and reschedule workloads to machines for better resource utilization and ensuring the performance SLA for different applications (e.g. by reducing resource contention and defining proper proirities).
  3. Collaboration between online service scheduler (Sigma) and batch jobs scheduler (Fuxi). How to adjust resource allocation between online service and batch jobs to improve throughput of batch jobs while maintain acceptable QoS (Quality of Service) and fast failure recovery for online service. As the scale of collocation (workloads managed by different schedulers) keeps growing, the design of collaboration mechanism is becoming more and more critical.

Last but not least, we are always open to work together with researchers to improve the efficiency of our clusters, and there are positions open for research interns. If you had any idea in your mind, please contact us via aliababa-clusterdata or Haiyang Ding (Haiyang maintains this cluster trace and works for Alibaba's resource management & scheduling group).

Outcomes from the trace

Papers using Alibaba cluster trace

The fundamental idea of our releasing cluster data is to enable researchers & practitioners doing resaerch, simulation with more realistic data and thus making the result closer to industry adoption. It is a huge encouragement to us to see more works using our data. Here is a list of existing works using Alibaba cluster data. If your paper uses our trace, it would be great if you let us know by sending us email (aliababa-clusterdata).

Tech reports and projects on analysing the trace

So far this session is empty. In future, we are going to link some reports and open source repo on how to anaylsis the trace here, with the permission of the owner.

The purpose of this is to help more beginners to get start on learning either basic data analysis or how to inspect cluster from statistics perspective.