Improving the scheduling policy for a Continuous Integration Server Master’s thesis in Computer Systems and Networks

dc.contributor.authorEriksson, Isak
dc.contributor.authorBerglund, Viktor
dc.contributor.departmentChalmers tekniska högskola / Institutionen för data och informationstekniksv
dc.contributor.examinerMassimiliano Gulisano, Vincenzo
dc.contributor.supervisorPapatriantafilou, Marina
dc.contributor.supervisorPalyvos-Giannas, Engineering Dimitrios
dc.date.accessioned2020-11-02T09:13:18Z
dc.date.available2020-11-02T09:13:18Z
dc.date.issued2020sv
dc.date.submitted2020
dc.description.abstractContinuous integration (CI) is a method used in software development to make it easier for developers to handle integration and testing of their code. By automating this process the development process can be streamlined and sped up. One possible way of achieving this could be to improve the scheduler in the CI system to handle scheduling of integration jobs in a more efficient way. Six scheduling algorithms are empirically evaluated: Longest Job First (LJF), Shortest Job First (SJF), First In First Out (FIFO), Random priority and LJF/SJF with an added aging factor. Tests were done on a Jenkins instance as well as a simulation model developed for the thesis. The execution time of the jobs in the job sets are assumed to follow the Pareto power-law probability distribution, which can be summarized as "20 percent of the jobs account for 80 percent of the execution time". Makespan and average response time are known measures in the scheduling literature and we measure the algorithms against these. We also introduce the measure average matrix response time, which we consider to be the most important for the objective of this thesis. Tests were carried out on a real Jenkins instance, a server used for building software common in a continuous integration setting, and on a simulation model we developed. The model can simulate system slowdown when running more threads than available cores. Based on our tests we conclude that LJF with an added aging factor is the best performing algorithm against the measure average matrix response time.sv
dc.identifier.coursecodeMPCSNsv
dc.identifier.urihttps://hdl.handle.net/20.500.12380/302013
dc.language.isoengsv
dc.setspec.uppsokTechnology
dc.subjectcontinuous integrationsv
dc.subjectschedulingsv
dc.subjectJenkinssv
dc.titleImproving the scheduling policy for a Continuous Integration Server Master’s thesis in Computer Systems and Networkssv
dc.type.degreeExamensarbete för masterexamensv
dc.type.uppsokH
Ladda ner
Original bundle
Visar 1 - 1 av 1
Hämtar...
Bild (thumbnail)
Namn:
CSE 20-103 Berglund Eriksson.pdf
Storlek:
1.49 MB
Format:
Adobe Portable Document Format
Beskrivning:
License bundle
Visar 1 - 1 av 1
Hämtar...
Bild (thumbnail)
Namn:
license.txt
Storlek:
1.14 KB
Format:
Item-specific license agreed upon to submission
Beskrivning: