Serbian Journal of Electrical Engineering (Jan 2019)
Online algorithms for scheduling transactions on python software transactional memory
Abstract
Designing online transaction scheduling algorithms is challenging because one needs to reconcile three opposing requirements: (i) they should be fast, (ii) they should minimize make span and maximize throughput, and (iii) they should produce conflict-free transaction schedules. In this paper we present four online transaction scheduling algorithms, namely, RR, ETLB, AC, and AAC algorithm, we prove their correctness and time bounds, and we conduct a theoretical analysis of the transaction schedules they produce, using three different workloads (RDW, CFW, and WDW). Finally, we compare various features of the four algorithms. The results are as expected, as we go from RR, over ETLB and AC, to AAC algorithms, the quality of the resulting schedules increases at the cost of increase of algorithm’s time complexity. [Project of the Serbian Ministry of Education, Science and Technological Development, Grant no. III-44009-2]
Keywords