<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Container Start Times: Empirical Analysis and Predictability</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Martin Straesser</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Samuel Kounev</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Universität Würzburg</institution>
          ,
          <addr-line>Sanderring 2, 97070 Würzburg</addr-line>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>In recent years, container technology gained more and more importance, especially for the deployment of cloud services. While many studies focus on the performance characteristics of running containers, only a few explicitly address container start times. However, a good understanding of those can help performance engineers and cloud service providers in various domains. For example, autoscaling and scheduling algorithms can profit from additional knowledge about container start times, if they explicitly consider start delays for diferent containers. Another related research field is serverless computing, where the optimization of container startups and the analysis and mitigation of cold starts are vital research topics. Therefore, container start times and their influencing factors need to be analyzed in a systematic way. State-of-the-art literature focuses mainly on comparative analyses of diferent container runtimes and their influence on the container start time [ 1, 2]. Only few consider additional influencing factors like storage driver [ 3], base images [3, 4] as well as particular deployment aspects [5]. Moreover, the majority of these studies have only short evaluations with few container images and measurement repetitions as well as non-standardized methodologies. In this work, we perform a systematic and extensive study to identify influencing and negligible factors for container start times. The start process of a container begins when the container engine receives the task to start a new container. It ends with the start of the execution of the container's start command defined in the image manifest. The container start time is the time elapsed between these two events. During the design and execution of this study, we explicitly work with the recent ACM SIGSOFT Empirical Standards [6]. We group potential influencing factors for container start times in two categories: image factors and deployment factors. The image factors are all information that is extractable from the container's image manifest. This includes the image size, number and size of layers, ports, volumes, and more. Deployment factors include the node OS, kernel and architecture, container runtime, storage driver as well as other metrics, like the number of running containers on the node. The pull or download time of the container image will not be investigated further, as this is mostly a matter of network conditions. Our goal is to predict container start times based on image and deployment information. Our study is divided into three stages. In stage one, we will perform extensive measurements of container start times with a large number of images from the prominent public repository</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Container</kwd>
        <kwd>Cloud Computing</kwd>
        <kwd>Empirical Study</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Docker Hub. A study analyzing the characteristics of container images on Docker Hub was
published in 2019 [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. By doing this, we obtain a systematic and nearly exhaustive investigation
of the image factors as well as statistical characteristics of container start times, like empirical
variances. In stage two, we will analyze the results from stage one and focus on deployment
factors by changing node configurations and other parameters. After completing stage two,
we have a list of relevant factors, which influence container start times. Stage three of this
study will be concerned with the predictability of container start times. We want to answer
the question: Can we predict the start time of an arbitrary container given its image manifest and
deployment information? Therefore, we train a prediction model based on the measurements
from the previous stages. The obtained results are then verified by images from other public
repositories or self-created images.
      </p>
      <p>In this talk, we present the study design, experiment setup, and preliminary results of our
study. Moreover, we elaborate more about the motivation and potential use cases. We hope that
the discussion will help us to discuss the strengths and weaknesses of this study regarding both
the methodological and technical aspects.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>L.</given-names>
            <surname>Espe</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Jindal</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Podolskiy</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Gerndt</surname>
          </string-name>
          ,
          <article-title>Performance evaluation of container runtimes</article-title>
          .,
          <source>in: 10th International Conference on Cloud Computing and Services Science (CLOSER)</source>
          ,
          <year>2020</year>
          , pp.
          <fpage>273</fpage>
          -
          <lpage>281</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>R.</given-names>
            <surname>Kumar</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Thangaraju</surname>
          </string-name>
          ,
          <article-title>Performance analysis between runc and kata container runtime</article-title>
          ,
          <source>in: 2020 IEEE International Conference on Electronics, Computing and Communication Technologies (CONECCT)</source>
          ,
          <year>2020</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>4</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>G.</given-names>
            <surname>E. de Velp</surname>
          </string-name>
          , E. Rivière,
          <string-name>
            <given-names>R.</given-names>
            <surname>Sadre</surname>
          </string-name>
          ,
          <article-title>Understanding the performance of container execution environments</article-title>
          ,
          <source>in: Proceedings of the 2020 6th International Workshop on Container Technologies and Container Clouds</source>
          , Association for Computing Machinery, New York, NY, USA,
          <year>2020</year>
          , p.
          <fpage>37</fpage>
          -
          <lpage>42</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>T.</given-names>
            <surname>Yoshimura</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Nakazawa</surname>
          </string-name>
          , T. Chiba,
          <article-title>Imagejockey: A framework for container performance engineering</article-title>
          ,
          <source>in: 2020 IEEE 13th International Conference on Cloud Computing (CLOUD)</source>
          ,
          <year>2020</year>
          , pp.
          <fpage>238</fpage>
          -
          <lpage>247</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>A.</given-names>
            <surname>Lingayat</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R. R.</given-names>
            <surname>Badre</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Kumar</surname>
          </string-name>
          <string-name>
            <surname>Gupta</surname>
          </string-name>
          ,
          <article-title>Performance evaluation for deploying docker containers on baremetal and virtual machine</article-title>
          ,
          <source>in: 2018 3rd International Conference on Communication and Electronics Systems (ICCES)</source>
          ,
          <year>2018</year>
          , pp.
          <fpage>1019</fpage>
          -
          <lpage>1023</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          <article-title>[6] ACM SIGSOFT empirical standards for conducting and evaluating research in software engineering</article-title>
          ,
          <year>2020</year>
          . URL: https://acmsigsoft.github.io/EmpiricalStandards/docs/.
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>N.</given-names>
            <surname>Zhao</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Tarasov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Albahar</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Anwar</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Rupprecht</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Skourtis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. S.</given-names>
            <surname>Warke</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Mohamed</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. R.</given-names>
            <surname>Butt</surname>
          </string-name>
          ,
          <article-title>Large-scale analysis of the docker hub dataset</article-title>
          ,
          <source>in: 2019 IEEE International Conference on Cluster Computing (CLUSTER)</source>
          ,
          <year>2019</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>10</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>