Energy Efficiency Analysis of Arm Big.Little Global Task Scheduling
Total Page:16
File Type:pdf, Size:1020Kb
ENERGY EFFICIENCY ANALYSIS OF ARM BIG.LITTLE GLOBAL TASK SCHEDULING Bachelor Degree Project in Informatics with Specialization towards Network and System Administration Level G2E, 15hp Spring term 2015 Sigurd Israelsson Supervisor: Thomas Fischer Examiner: Jonas Mellin ABSTRACT In this paper an ARM big.LITTLE system with Global Task Scheduling is evaluated in terms of its energy efficiency and performance measured in execution time. The big.LITTLE system is evaluated against the same system but with only the big or LITTLE processor active. The evaluation is done by performing experiments that target three different levels of load: full load, varying load and low load. The benchmarking software PARSEC Blackscholes and BBench are used to put the system under a synthetic workload in the tests. The results show that overall big.LITTLE achieves an improvement in execution time for all test scenarios, although very slim for varying load, and is more energy efficient than the big processor with the possible exception of a low load scenario. However, the LITTLE processor by itself is found to be the most energy efficient system even though it showed the slowest execution time. Keywords: ARM big.LITTLE, Global Task Scheduling, PARSEC Blackscholes, BBench, Energy efficiency Table of Contents 1. Introduction ............................................................................................................................ 1 2. Background ............................................................................................................................ 2 2.1 ARM big.LITTLE ............................................................................................................ 2 2.2 Power and Energy ............................................................................................................ 3 2.3 Energy efficiency ............................................................................................................. 3 2.4 INA231 Sensor ................................................................................................................. 3 3. Problem Description and Problem Statement ........................................................................ 4 3.1 Purpose ............................................................................................................................. 4 3.2 Motivation ........................................................................................................................ 4 3.3 Objectives ......................................................................................................................... 5 4. Methodology .......................................................................................................................... 6 4.1 Validity ............................................................................................................................. 6 4.2 Evaluation of workloads ................................................................................................... 9 5. Implementation ..................................................................................................................... 13 5.1 Experimental Platform ................................................................................................... 13 5.2 System Setup .................................................................................................................. 13 5.3 Test configurations ......................................................................................................... 15 5.3.1 Parsec Blackscholes ................................................................................................ 15 5.3.2 BBench .................................................................................................................... 16 5.3.3 Idle ........................................................................................................................... 16 5.5 Measurement Tools ........................................................................................................ 17 5.6 Experimental Procedure ................................................................................................. 18 5. Results .................................................................................................................................. 20 5.1 Idle .................................................................................................................................. 20 5.2 BBench ........................................................................................................................... 21 5.3 PARSEC Blackscholes ................................................................................................... 23 6. Analysis ................................................................................................................................ 26 7. Related work ........................................................................................................................ 28 8. Conclusion ............................................................................................................................ 30 9. Discussion ............................................................................................................................ 31 10. Future Work ....................................................................................................................... 32 11. Non-technical summary ..................................................................................................... 33 12. References .......................................................................................................................... 34 Appendix A. Threats ................................................................................................................ 37 Appendix B. Scripts ................................................................................................................. 38 Appendix C. Benchmark software evaluation .......................................................................... 40 1. Introduction This work will evaluate the performance, in terms of execution time, and energy efficiency of the latest ARM big.LITTLE design called global task scheduling. The big.LITTLE system employing this scheduling technique will be evaluated against the internal little and big processors individually. For a long time processors from ARM holdings have designed small, low power processors that is often found in embedded devices and cellphones. It is estimated that technology from ARM exists in 95% of every smartphone (Bent, 2012). In cellphones and other mobile platforms performance is increasingly being requested as the users expect more and more functionality from their devices. Battery capacity and design goals concerning it are limiting factors to how much performance can be implemented in mobile devices. (Kingsley-Hughes, 2012) This leads to innovations in design to increase performance while reducing impact on battery time. One fairly recent innovation from ARM has been to design system on chips (SoCs) that make use of low power processors together with high performance ones to be able to provide a low energy usage for long periods of low workloads while at the same time being able to provide high performance for occasional high intensity workloads. This innovation is called ARM big.LITTLE. Energy efficiency is not only a concern in mobile devices such as smartphones, tablets and laptops. Energy efficiency is an increasing concern in nearly all IT and computing today. In large data centers power hungry servers not only increase the total cost of electricity, but also generate a lot of heat which has to be diverted with cooling solutions. Another infrastructural cost that is directly affected by power consumption is the cost of backup power solutions. By using less energy to perform the same task the total cost of ownership can decrease dramatically. Hamilton (2010) calculated a model for data centers where he concluded that power consumption and the infrastructure to support it consisted of 31 percent of the total cost of ownership within the data center. In a study by the Natural Resources Defense Council (2014) the total energy consumption of U.S. servers in the year 2013 was estimated to be 91 billion kilo watt-hours which cost roughly 9 billion U.S. dollars in electricity. The power consumption of computers worldwide has spawned a new term called Green Computing. Green Computing describes an aim to reduce carbon emission from computers by making sure that the energy efficiency is as high as possible and that the electricity used comes from reliable sources. 1 2. Background This section describes important concepts and theory necessary to understand the work done in this paper. 2.1 ARM big.LITTLE ARM Holdings is a supplier of intellectual property (IP) for processing units and other related technologies. ARMs business model is to license its IP to semiconductor businesses who then can incorporate ARMs technology in their systems (ARM, n.d, a). Among other things ARM develops its own instruction set architecture (ISA) as well as design application processors, real-time processors and embedded processors. The two most recent architectures from ARM are ARMv7 and ARMv8. The main difference between the two architectures is the instruction length. ARMv7 uses a 32-bit instruction set while the newer ARMv8 introduces support for 64-bits. (ARM, n.d, b)