Abstract
The use of heterogeneous multicore processors is getting extremely common, and those that comprise reconfigurable logic are becoming an attractive alternative. However, to leverage them as much as possible to speed up applications, an effective scheduler, which can adequately distribute threads to cores with different processing capabilities, is required. Therefore, this work evaluates the implementation of three distinct scheduling approaches aiming at a reconfigurable heterogeneous architecture: a static algorithm that allocates the threads on the first free core, where they will run during the entire execution; an Instruction Count (IC) Driven scheduler, which reallocates threads during synchronization points accordingly to their instruction count; and an Oracle scheduler, which is capable of deciding the best thread allocation possible. The goal is to determine the necessity of scheduling algorithms and the potential of reconfigurable heterogeneous architectures. We show that a static scheduler might be used with minimal loss (0.01 %) in performance when applications have high load balancing between threads. For unbalanced applications, the static scheduler can reach only 40 % of the Oracle’s performance. On the other hand, the dynamic scheduler varies from 97 % to 35 % of the Oracle’s performance in similar conditions.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Balakrishnan, S., et al.: The impact of performance asymmetry in emerging multicore architectures. In: Proceedings of International Symposium on Computer Architecture, pp. 506–517 (2005)
Becchi, M., Crowley, P.: Dynamic thread assignment on heterogeneous multiprocessor architectures. In: Proceedings of 3rd Conference Computing Frontiers, CF 2006, 29 April 2006, vol. 10 (2006)
Beck, A.C.S., et al.: A transparent and adaptive reconfigurable system. Microprocess. Microsyst. 38(5), 509–524 (2014)
Beck, A.C.S., et al.: Adaptable Embedded Systems. Springer, New York (2013)
Beck, A.C.S., et al.: Transparent reconfigurable acceleration for heterogeneous embedded applications. In: Proceedings of Design, Automation and Test in Europe, DATE, pp. 1208–1213 (2008)
Beck, A.C.S., Carro, L.: Dynamic Reconfigurable Architectures and Transparent Optimization Techniques. Springer, Heidelberg (2010)
Bingfeng, M., et al.: Architecture exploration for a reconfigurable architecture template. IEEE Des. Test Comput. 22(2), 90–101 (2005)
Compton, K., Hauck, S.: Reconfigurable computing: a survey of systems and software. ACM Comput. Surv. 34(2), 171–210 (2002)
Dixit, K.M.: The SPEC benchmarks. In: Computer Benchmarks, pp. 149–163. Elsevier (1993)
Dorta, A.J., et al.: The OpenMP source code repository. In: 13th Euromicro Conference on Parallel, Distributed and Network-Based Processing, pp. 244–250. IEEE (2005)
Guthaus, M.R., et al.: MiBench: a free, commercially representative embedded benchmark suite. In: Proceedings of the Workload Characterization, pp. 3–14. The University of Michigan Electrical Engineering and Computer Science (2001)
Jeff, B.: big.LITTLE Technology Moves Towards Fully Heterogeneous Global Task Scheduling, pp. 1–13 (2013)
Kim, M., et al.: Utilization-aware load balancing for the energy efficient operation of the big.LITTLE processor, pp. 3–6 (2014)
Kumar, R., et al.: Single-ISA heterogeneous multi-core architectures: the potential for processor power reduction. In: Proceedings of the 36th Annual IEEE/ACM International Symposium on Microarchitecture 2003, MICRO-36 (2003)
Lee, J., et al.: Thread tailor. ACM SIGARCH Comput. Archit. News 38(3), 270–279 (2010)
Lysecky, R., et al.: Warp processors. ACM Trans. Des. Autom. Electron. Syst. 11(3), 659–681 (2006)
Magnusson, P.S., et al.: Simics: a full system simulation platform. Computer 35(2), 50–58 (2002). (Long. Beach. Calif)
Mogul, J.C., et al.: Using asymmetric single-ISA CMPs to save energy on operating systems. IEEE Micro 28(3), 26–41 (2008)
Rutzig, M.B., et al.: A transparent and energy aware reconfigurable multiprocessor platform for simultaneous ILP and TLP exploitation. In: Proceedings of Design, Automation and Test in Europe Conference and Exhibition (DATE 2013) (2013)
Shelepov, D., Alcaide, J.S.: HASS: a scheduler for heterogeneous multicore systems. Oper. Syst. 43(2), 66–75 (2009)
Souza, J.D., et al.: Towards a dynamic and reconfigurable multicore heterogeneous system. In: 2014 Brazilian Symposium on Computing Systems Engineering, pp. 73–78 (2014)
Teodorescu, R., Torrellas, J.: Variation-aware application scheduling and power management for chip multiprocessors. In: Proceedings of International Symposium on Computer Architecture, pp. 363–374 (2008)
Watkins, M.A., Albonesi, D.H.: Enabling parallelization via a reconfigurable chip multiprocessor. In: Workshop on Parallel Execution of Sequential Programs on Multi-core Architecture, vol. 2, pp. 59–68 (2010)
big.LITTLE Technology. http://www.arm.com/products/processors/technologies/bigLITTLEprocessing.php
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2016 Springer International Publishing Switzerland
About this paper
Cite this paper
Souza, J.D., Cachola, J.V.G., Carro, L., Rutzig, M.B., Beck, A.C.S. (2016). Evaluating Schedulers in a Reconfigurable Multicore Heterogeneous System. In: Bonato, V., Bouganis, C., Gorgon, M. (eds) Applied Reconfigurable Computing. ARC 2016. Lecture Notes in Computer Science(), vol 9625. Springer, Cham. https://doi.org/10.1007/978-3-319-30481-6_21
Download citation
DOI: https://doi.org/10.1007/978-3-319-30481-6_21
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-30480-9
Online ISBN: 978-3-319-30481-6
eBook Packages: Computer ScienceComputer Science (R0)