Systems for automated evaluation of assignments are a valuable aid for both teachers of programming courses and their students. The objective of this thesis is to examine the possibilities of deploying such systems in a large-scale distributed environment and the challenges of such endeavors. A sizable part of the requirements comes from experience with ReCodEx - an assignment evaluation system developed at the department of the supervisor. Modern server multi-core processors provide considerable computing power that can be used for assignment evaluation. However, parallel measurements can interfere with each other. This causes unstable results, which detriments the fairness of grading. Isolation (sandboxing) technologies can cause similar effects. We measure both of these influences and use the results to determine to what degree can multi-core processors be exploited. The problem of efficient distribution of work between multiple evaluation workers is complementary to that of utilizing multi-core machines. We survey scheduling algorithms and design an experiment to compare their performance. Additionally, we examine the possibility of leveraging container technologies to simplify the deployment of software required for evaluation. This leads to both a smaller administration overhead and a less complex...
Identifer | oai:union.ndltd.org:nusl.cz/oai:invenio.nusl.cz:415560 |
Date | January 2020 |
Creators | Buchar, Jan |
Contributors | Kruliš, Martin, Tůma, Petr |
Source Sets | Czech ETDs |
Language | English |
Detected Language | English |
Type | info:eu-repo/semantics/masterThesis |
Rights | info:eu-repo/semantics/restrictedAccess |
Page generated in 0.002 seconds