liu.seSearch for publications in DiVA
Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • oxford
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Optimizing a software build system through multi-core processing
Linköping University, Department of Computer and Information Science, Software and Systems.
2019 (English)Independent thesis Advanced level (degree of Master (Two Years)), 20 credits / 30 HE creditsStudent thesis
Abstract [en]

In modern software development, continuous integration has become a integral part of agile development methods, advocating that developers should integrate their code frequently. Configura currently has one dedicated machine, performing tasks such as building the software and running system tests each time a developer submits new code to the main repository. One of the main practices of continuous integration advocates for having a fast build in order to keep the feedback loop short for developers, leading to increased productivity. Configura’s build system, named Build Central, currently uses a sequential build procedure to execute said tasks and was becoming too slow to keep up with the number of requested builds.

The primary method for speeding up this procedure was to utilize the multi-core architecture of the build machine. In order to accomplish this, the system would need to deploy a scheduling algorithm to distribute and order tasks correctly. In this thesis, six scheduling algorithms are implemented and compared. Four of these algorithms are based on the classic list scheduling approach, and two additional algorithms are proposed which are based on dynamic scheduling principles.

In this particular system, the dynamic algorithms proved to have better performance compared to the static scheduling algorithms. Performance on Build Central, using four processing cores, was improved with approximately 3.4 times faster execution time on an average daily build, resulting in a large increase of the number of builds that can be performed each day.

Place, publisher, year, edition, pages
2019. , p. 52
Keywords [en]
Multi-core processing, Continuous integration, Build system, Task scheduling, List scheduling
National Category
Computer Sciences
Identifiers
URN: urn:nbn:se:liu:diva-155718ISRN: LIU-IDA/LITH-EX-A--19/004--SEOAI: oai:DiVA.org:liu-155718DiVA, id: diva2:1299389
External cooperation
Configura AB
Subject / course
Computer science
Presentation
2019-02-04, Alan Turing, Linköping, 13:15 (English)
Supervisors
Examiners
Available from: 2019-03-27 Created: 2019-03-26 Last updated: 2019-03-27Bibliographically approved

Open Access in DiVA

fulltext(1006 kB)91 downloads
File information
File name FULLTEXT01.pdfFile size 1006 kBChecksum SHA-512
1c28db352929c399abd876c9e1deb280f07f816233957e1107033e9bf8a322b8c99e24696d2be98e105efc7c15b81f72f9bf134e79b12d19e95af50438d3511a
Type fulltextMimetype application/pdf

Search in DiVA

By author/editor
Dahlberg, Robin
By organisation
Software and Systems
Computer Sciences

Search outside of DiVA

GoogleGoogle Scholar
Total: 91 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

urn-nbn

Altmetric score

urn-nbn
Total: 395 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • oxford
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf