Performance Evaluation And Modeling Of A Multicore

2y ago
15 Views
3 Downloads
3.54 MB
75 Pages
Last View : 1m ago
Last Download : 3m ago
Upload by : Xander Jaffe
Transcription

Performance Evaluation and Modeling ofImprovinglandfillmonitoringprogramsa MulticoreAUTOSARSystemwiththe aid modellingof geoelectricalimagingtechniquesOn theoreticalof speedup- informationsystemsMaster’s Thesis in the Master Degree Programme, Civil EngineeringAbdollah Safaei MoghaddamKEVINHINEMaster of ScienceThesis in Networks and Distributed SystemsDepartment of Computer Science & EngineeringDepartment of Civil and Environmental EngineeringChalmersUniversity of TechnologyDivisionof GeoEngineeringEngineering Geology Research GroupGothenburg, Sweden 2013CHALMERS UNIVERSITY OF TECHNOLOGYGöteborg, Sweden 2005Master’s Thesis 2005:22

The Author grants to Chalmers University of Technology and University of Gothenburg the non-exclusive right to publish the Work electronically and in a noncommercial purpose make it accessible on the Internet.The Author warrants that he/she is the author to the Work, and warrants thatthe Work does not contain text, pictures or other material that violates copyrightlaw.The Author shall, when transferring the rights of the Work to a third party (forexample a publisher or a company), acknowledge the third party about this agreement. If the Author has signed a copyright agreement with a third party regardingthe Work, the Author warrants hereby that he/she has obtained any necessarypermission from this third party to let Chalmers University of Technology andUniversity of Gothenburg store the Work electronically and make it accessible onthe Internet.Performance Evaluation and Modeling of a Multicore AUTOSAR SystemAbdollah Safaei Moghaddamc ABDOLLAH SAFAEI MOGHADDAM, May 2013.Examiner: Jan JonssonChalmers University of TechnologyDepartment of Computer Science and EngineeringSE-412 96 GöteborgSwedenTelephone 46 (0)31-772 1000Department of Computer Science and EngineeringGöteborg, Sweden May 2013

AbstractMulticore processors have become common in personal computers and workstations for the past few years, and they are making their way to embedded devices.Meanwhile, Electronic Controller Unit (ECU) suppliers have also introduce multicore solutions in the automotive Electrics and Electronics(E/E) domain. Theautomotive E/E architectures are expected to adapt themselves to this change.This leads the AUTomotive Open System ARchitecture (AUTOSAR) standard tointroduced multicore support in release 4.0. Because of the close ties and dependencies between the software and hardware, this adaptation is a complex task.The dependencies between hardware and software need to be handled carefully forany well performing multicore software.Based on the AUTOSAR solution, we believe that the cross-core communication could be a potential bottleneck and hence, this study measures SoftWareComponents(SWC) communication time in inter-core and intra-core. In order toachieve this, a mocking of an AUTOSAR software was designed, implementedand tested on a dualcore MPC551x processor. Furthermore, a theoretical modelfor speedup gain prediction on heterogeneous dualcore systems is proposed. Themodel considers a scenario in which a task is fragmented into so-called slave tasksamong cores in order to achieve speedup. By using this model, once can predictthe possible speedup gain when migrating a software from a single-core to a multicore platform. The model is driven by extending Amdahl’s law and addressing thecross-core communication overhead in AUTOSAR and the heterogeneous natureof the MPC551x processor. The results show that cross-core communication hasan overhead of 54%. The speedup curve shows that in tasks with large executiontimes, the speedup is 1.74 and that speedup is unity for tasks with an executiontime about 28µs. The proposed model is evaluated by carrying out several testscenarios and comparing the results with the model which shows the model is morethan 90% accurate.Keywords: AUTOSAR, automotive, multicore ECU, dualcore, speedup, heterogeneous, theoretical modeling, Amdahl, software migration

AcknowledgmentsI would like to thank my supervisor, Anders Svensson, for his endless support,kindness and enthusiasm. Needless to say, without his close cooperation and keenideas that shed light on dark corners of this research, this would not have beenpossible. Furthermore, I would like to thank Mafijul Islam and Tommy Anderssonfor their in depth support and their time throughout this work. Also, I like tothank Johan Haraldsson, Sigurjón Þorvaldsson, Peyman Barazandeh and all mycolleagues for the great times that we had together and the interesting discussionsthat broadened my understanding of the automotive industry. And last but notleast, I am thankful for my family and friends for their support and understanding.

Contents1 Introduction1.1 Thesis delimitations and problem definition . . . . . . . . . . . . .1.2 Thesis structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2 Background2.1 Introduction to AUTOSAR . . . . . . . . . . . .2.1.1 Application layer . . . . . . . . . . . . . .2.1.2 Communication between software layers .2.1.3 VFB layer . . . . . . . . . . . . . . . . . .2.1.4 RTE layer . . . . . . . . . . . . . . . . . .2.1.5 BSW layer . . . . . . . . . . . . . . . . . .2.2 Multi-core support in AUTOSAR . . . . . . . . .2.2.1 Communication in multi-core AUTOSAR .2.2.2 The Operating System . . . . . . . . . . .2.2.3 Inter OS-Application communication . . .3 Test and Development Environment3.1 Software environment . . . . . . . . .3.1.1 ArcticStudio and ArcCore . .3.1.2 CodeWarrior . . . . . . . . .3.1.3 FreeMASTER . . . . . . . . .3.2 Hardware environment . . . . . . . .122.4. 4. 5. 5. 6. 7. 8. 8. 9. 9. 11.1818181919224 Inter-core versus intra-core communication4.1 Test description . . . . . . . . . . . . . . . .4.2 Intra-core communication . . . . . . . . . .4.3 Inter-core communication . . . . . . . . . .4.4 Communication time measurement results .2323242630i.

CONTENTS5 Speedup gain on an AUTOSAR 4.0 implementation with dualcoresupport5.1 Introduction to speedup and Amdahl’s law . . . . . . . . . . . . . .5.2 Measuring speedup gain . . . . . . . . . . . . . . . . . . . . . . . .5.2.1 Single-core scenario . . . . . . . . . . . . . . . . . . . . . . .5.2.2 Dualcore scenario . . . . . . . . . . . . . . . . . . . . . . . .5.2.3 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5.3 Extending Amdahl’s law to a heterogeneous multicore AUTOSARsystem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5.3.1 Earlier studies . . . . . . . . . . . . . . . . . . . . . . . . . .5.3.2 Model overview and Assumptions . . . . . . . . . . . . . . .5.3.3 Using and evaluating the extended speedup model . . . . . .6 Conclusions4141414549BibliographyAppendix A How to use FreeMASTERA.1 Introduction to FreeMASTER . . . . . . . . . .A.1.1 Memory read and write . . . . . . . . . .A.1.2 Oscilloscope . . . . . . . . . . . . . . . .A.1.3 Recorder . . . . . . . . . . . . . . . . . .A.2 FreeMASTER on target driver . . . . . . . . . .A.2.1 Establishing a serial communication . . .A.2.2 Using FreeMASTER on target driver . .A.3 Introduction to PC side software . . . . . . . .A.3.1 Communication setup in PC applicationA.3.2 Reading and Modifying variables . . . .A.3.3 Recorder . . . . . . . . . . . . . . . . . .32323334373753.555556565656566163636363Appendix B Verification experiments on the Extended speedup model 65ii

1Introductionowadays, electronics play a key role in vehicles and we are driving computers, rather than cars. The electronic equipment that were normallyused in luxury cars before, are used in conventional vehicles, today. Asa result, the functions that were special to luxury cars, are expected tobe seen, as standard functions, in middle-class cars over time. Growth of functionalities in cars results in an increase of electronics complexity. As complexityincreases in electrical and electronics (E/E) architecture of a vehicle, it has becomemore and more necessary to standardize automotive E/E architectures to managethis complexity. Therefore, the “AUTomotive Open System ARchitecture”, AUTOSAR, was founded to fulfill this requirement. The growth in software size notonly impacts software, but more powerful hardware is also needed.As software required faster hardware, processor manufactures provided fasterprocessors, mainly by increasing the clock frequency. However, higher clock frequency led to a greater power consumption. In the early 2000s, the clock frequencytrend started flatting out by hitting the power consumption ceiling according toKrste Asanovic et al [1]. Thereby, increasing clock frequency was no longer possible. Hence, new techniques had to be introduced for increasing computationalpower, but, with the same power consumption. One solution to this problem ismulti-core processors as Krste Asanovic et al describe in [1]. The automotive industry is no exception in this trend and hence, multi-core ECUs were introduced.As ECU software developers will need to adopt to this change, the AUTOSARstandard needs to support a multi-core architecture for ECU suppliers and vendors, also. Therefore, multi-core support was introduced in AUTOSAR 4.0.N1

1. Introduction1.1Thesis delimitations and problem definitionThe study was accomplished at Advanced Technology and Research at VolvoGroup Trucks Technology and the thesis delimitations were defined in alignmentwith the Volvo’s research projects.The AUTOSAR design was based on single-core micro-controllers up to version 3.1.As the need of multi-core processors became trivial, the AUTOSAR introduced thefirst version of multi-core AUTOSAR in version 4.0. This project investigates andevaluates the performance of the current AUTOSAR multi-core architecture. Theproject is carried on an MPC5517E micro-controller, addressing the followings: What are the possible bottlenecks in communication among cores and what isthe communication overhead in a cross-core communication compared to anintra-core communication? An architectural study is carried out and basedon the prospective bottlenecks found, an experimental mocking model of anAUTOSAR implementation is done by having only the necessary modulesfor an AUTOSAR software, to support the findings. What is the possible speedup gain achieved in the current implementation ofAUTOSAR 4.0? When migrating from a single-core to a multi-core software,it is important to know what advantage is gained in such a migration. A testscenario is designed and implemented in order to define the upper bound ofthis advantage gain. Is it possible to predict the speedup gain of an AUTOSAR application, whenmigrating the software from a single-core to a multicore architecture? Preliminary steps are taken towards a theoretical modeling of the speedup gainachieved by migrating from a single-core to a dualcore implementation. Themodel is based on hardware specific factors of the MPC551x processor andthe cross-core communication overhead. The theoretical model will extendAmdahl’s law such that heterogeneous systems and the AUTOSAR multicore architecture are addressed. Given an already implemented set of software components, the model will predict what speedup can be achieved, ifthe implementation is migrated from a single-core to a dual-core system.1.2Thesis structureThe remainder of this thesis is structured as the following: Chapter 2 describesthe AUTOSAR layers and studies the key modules introduced in AUTOSAR 4.0for supporting multi-core software. Chapter 3 explains the “Test and developmentenvironment”. In this chapter, various tools that are used throughout the projectare described and the software development life cycle is explained. Chapter 3also describes an overview of the MPC551x processor hardware architecture. InChapter 4, the cross-core communication overhead is measured by doing an experiment. Chapter 5 describes the speedup gain in a multi-core implementation of an2

1. IntroductionAUTOSAR software and explains the theoretical modeling developed for predicting speedup gain. Chapter 6 gives a conclusion and summarizes the findings andresults.3

2Backgroundhe “AUTomotive Open System ARchitecture”, AUTOSAR, was foundedduring 2002-2004 as an agreement between core partners, BMW, Bosch,Continental, Daimler Chrysler, Ford, Toyota and Volkswagen[2]. Today,9 Core partners, 50 premium members, 78 associate members and 21development members support AUTOSAR[3]. This chapter briefly describes theAUTOSAR standard. Section 2.1 gives an introduction to the AUTOSAR layersand interfaces. Section 2.2 explains how multi-core support is introduced in AUTOSAR 4.0 and briefly describes the newly introduced modules that are necessaryto support multi-core.T2.1Introduction to AUTOSARThe main goal of AUTOSAR, as stated in the official website is:“The primary goal of the AUTOSAR development cooperation is thestandardization of basic system functions and functional interfaces, theability to integrate, exchange and transfer functions within a car network and to substantially improve software updates and upgrades overthe vehicle lifetime. Having this goal in mind, AUTOSAR pushes theparadigm shift from an ECU based to a function based system designattempt in automotive software development and enables the management of the growing E/E complexity with respect to technology andeconomics.” - AUTOSAR.org, [4]AUTOSAR is designed based on a layered, modular, stack structure such thateach layer is independent from the other layers in order to satisfy modularity amongfunctions, ease of software mobility and migration, hardware independence, andetc. Figure 2.1 illustrates the AUTOSAR stack architecture. A brief explanationis given on different layers of the AUTOSAR architecture in the following sections.4

2. BackgroundFigure 2.1: Overview of software layers in AUTOSAR. The BSW is shown insub-layers depicting a high level structure of the BSW itself ([2]).2.1.1Application layerConceptually, the application layer consists of the so called SoftWare Components(SWC) that each of which contain one or more runnable. Each SWC is an application software that provides a small functionality of the vehicle. SWCs arelocation independent and ECU independent such that a SWC could be moved toanother ECU without the need of modification. Communication between SWCsis supported through standardized communication interfaces.2.1.2Communication between software layersAUTOSAR states that for software re-usability and component mobility, AUTOSAR modules shall communicate with each other through predefined structured interfaces. Two different types of interfaces are introduced in AUTOSAR,“Sender/Receiver” interface (message passing), and “Client/Server” interface (function call). The sender/receiver interface makes an asynchronous data exchangewhereas the client/server interface makes a synchronous call. As for now, weare concerned about the sender/receiver communication interface and within thisproject a communication refers to a sender/receiver communication unless specifiedotherwise. Also, communication between SWCs and modules within the underlying layers is done through the standard interfaces introduced. Figure 2.2 illustratesstandard schematics for each type of interface.Each SWC consists of a number of runnables, and each runnable may haveaccess to a number of ports. The sender/receiver interfaces may have a 1:1 relation (e.g. one sender writing to 1 receiver), 1:N relation (e.g. on sender writingto multiple receivers) or an N:1 relation, (e.g. multiple senders writing to onereceiver)1 .Figures 2.3 and 2.4 illustrate the schematic for each case.1See [5] section 4.3.1.4 for more details.5

2. BackgroundFigure 2.2: Standard illustration of Sender/Receiver and Client/Server interfacesin AUTOSAR.Figure 2.3: High level illustration of data propagation among SWCs demonstratinga 1 to 2 (1:2) relation. The data provided by SWC-Sender is accessible by two SWCs,SWC-Receiver1 and SWC-Receiver2.2.1.3VFB layerVirtual Function Bus (VFB), is the communication concept that separates thecommunication mechanism between SWCs and the infrastructure beneath the application layer and amongst SWCs themselves. Communication amongst SWCsis done through the same mechanisms as between SWCs and the lower layers inthe AUTOSAR stack[6]. Figure 2.5 demonstrates an arbitrary number of SWCsand the communication interfaces between them. From the SWC point of view, acommunication is done via the VFB, thus, a SWC has no awareness of the communication end-point location, (i.e the receiving port) providing mobility amongSWCs. In Figure 2.5 port F writes to two ports, D and B, establishing a 1:2relation.6

2. BackgroundFigure 2.4: High level illustration of multiple SWCs writing to 1 Receiver demonstrating a 2 to 1 (2:1) relation. Two SWCs, SWC-Sender1 and SWC-Sender2 bothcan provide data for SWC-Receiver. SWC-Sender1 and SWC-Sender2 might overwrite each others data.Figure 2.5: High level illustration of Virtual Function Bus, (VFB), with a numberof SWCs, interfaces and ports.2.1.4RTE layerThe Run-Time Environment (RTE) is seen as the heart and the veins of the systemwhich makes communication possible amongst SWCs. Also, the communicationbetween SWCs and the underlying layers (Basic Software components and services) is done through the RTE layer. The RTE is generated for each ECU basedon the ECU configuration settings, SWCs that are mapped to the ECU, and theunderlying layers’ settings and configuration. The RTE is responsible for running runnables, task execution and etc[5]. Figure 2.6 depicts the RTE within theVFB context. The communication between port B and C, is done through theRTE layer and may or may not require additional communication through theunderlying layers. While the communication between two ECUs (i.e port D andE) conceptually goes through the VFB and does require communication throughunderlying layers.7

2. BackgroundFigure 2.6: Demonstration of inter-ECU and intra-ECU communication throughRTE and VFB layers. Inter-ECU communication is handled conceptually throughthe VFB layer, while intra-ECU communication is handled only within the RTE ofthat ECU.2.1.5BSW layerThe Basic SoftWare(BSW), as shown in Figure 2.1, consists of several componentmodules and services. It provides functionalities to applications through variousstandard/hardware-specific components and services. In terms of vehicle functionality, the BSW does not provide any specific job itself, rather, it is the engine of theAUTOSAR stack. Within the BSW layer, the “Services layer” consists of servicessuch as communication protocols and memory management. The “ECU abstraction layer” makes ECU specific configurations transparent to higher layers. The“Microcontroller abstraction layer” contains standard communication interfacesbetween upper layers and the microcontroller registers and configuration. The“Complex Device Drivers”, (CDD), brings in functionalities for direct hardwareaccess to upper layers for specific purposes.2.2Multi-core support in AUTOSARAs the computation demand is going higher and increasing in the automotiveindustry on one hand, and increasing clock frequency is not possible due to theneed of low power consumption in ECUs on the other hand, the need of multicore ECUs becomes more and more clear. Multi-core ECUs may be used for moreprocessing power and redundancy in safety critical applications (as recommendedin ISO26262). Multi-core support was first introduced in AUTOSAR release 4.0in 2009. In this section, a brief introduction is given to aspects of AUTOSAR,such as modules and asp

en[2]. Today, 9 Core partners, 50 premium members, 78 associate members and 21 . (SWC) that each of which contain one or more runnable. Each SWC is an ap- . The sender/receiver interface makes an asynchronous data exchange whereas the client/server

Related Documents:

14 D Unit 5.1 Geometric Relationships - Forms and Shapes 15 C Unit 6.4 Modeling - Mathematical 16 B Unit 6.5 Modeling - Computer 17 A Unit 6.1 Modeling - Conceptual 18 D Unit 6.5 Modeling - Computer 19 C Unit 6.5 Modeling - Computer 20 B Unit 6.1 Modeling - Conceptual 21 D Unit 6.3 Modeling - Physical 22 A Unit 6.5 Modeling - Computer

BEST MODELING PRACTICES: EVALUATION This module builds upon the fundamental concepts outlined in previous modules: Environmental Modeling 101 and The Model Life-cycle. The objectives of this module are to explore the topic of model evaluation and identify the 'best modeling practices' and strategies for the Evaluation Stage of the model

Structural equation modeling Item response theory analysis Growth modeling Latent class analysis Latent transition analysis (Hidden Markov modeling) Growth mixture modeling Survival analysis Missing data modeling Multilevel analysis Complex survey data analysis Bayesian analysis Causal inference Bengt Muthen & Linda Muth en Mplus Modeling 9 .

Oracle Policy Modeling User's Guide (Brazilian Portuguese) Oracle Policy Modeling User's Guide (French) Oracle Policy Modeling User's Guide (Italian) Oracle Policy Modeling User's Guide (Simplified Chinese) Oracle Policy Modeling User's Guide (Spanish) Structure Path Purpose Program Files\Oracle\Policy Modeling This is the default install folder.

Title: ER/Studio Data Architect 8.5.3 Evaluation Guide, 2nd Edition Author: Embarcadero Technologies, Inc. Keywords: CA ERwin data model software Data Modeler data modeler tools data modelers data modeling data modeling software data modeling tool data modeling tools data modeling with erwin data modelings data modeller data modelling software data modelling tool data modelling

Performance Evaluation Plan Reference Annex XIII 1. ‘ To plan, continuously conduct and document a performance evaluation, the manufacturer shall establish and update a performance evaluation plan. The performance evaluation plan shall specify the characteristics and the perfor

Section 2 Evaluation Essentials covers the nuts and bolts of 'how to do' evaluation including evaluation stages, evaluation questions, and a range of evaluation methods. Section 3 Evaluation Frameworks and Logic Models introduces logic models and how these form an integral part of the approach to planning and evaluation. It also

POINT METHOD OF JOB EVALUATION -- 2 6 3 Bergmann, T. J., and Scarpello, V. G. (2001). Point schedule to method of job evaluation. In Compensation decision '. This is one making. New York, NY: Harcourt. f dollar . ' POINT METHOD OF JOB EVALUATION In the point method (also called point factor) of job evaluation, the organizationFile Size: 575KBPage Count: 12Explore further4 Different Types of Job Evaluation Methods - Workologyworkology.comPoint Method Job Evaluation Example Work - Chron.comwork.chron.comSAMPLE APPLICATION SCORING MATRIXwww.talent.wisc.eduSix Steps to Conducting a Job Analysis - OPM.govwww.opm.govJob Evaluation: Point Method - HR-Guidewww.hr-guide.comRecommended to you b