150 likes | 273 Views
Scenario-based PA Method for Dynamic Component-Based Systems. Egor Bondarev, Michel Chaudron, Peter de With E.Bondarev@tue.nl Eindhoven University of Technology, The Netherlands. Problem Statement. - To accurately predict the performance attributes
E N D
Scenario-based PA Methodfor Dynamic Component-Based Systems Egor Bondarev, Michel Chaudron, Peter de With E.Bondarev@tue.nl Eindhoven University of Technology, The Netherlands
Problem Statement - To accurately predict the performance attributes - of software component-based systems - built on multiprocessor architectures Performance attributes • Timing behaviour, • Processor usage, • Memory consumption, • Bus load
CNS: Architectural Alternatives 1. Predict performance for every alternative 2. Find optimal alternatives in terms of: Resource usage+ Performance + Robustness + …
Proposed Solution Based on the following concepts • Models for both software- and hardware components. • Scenarios-based evaluation • The designer can focus on critical run-time configurations. • Allows trade-off between modeling effort and accuracy. • Simulation of scenarios + schedulability analysis
Select ! Models Component Resource model Component Resource model has ! Real-time aware components Real-time aware components Component Behaviour model has Component Behaviour model Design (assemble) ! Construct Application Scenario model Real-time application Application Scenario model Compile models / reconstruct tasks Validate predicted for Execution architecture (tasks) Simulate task execution Analyze Real-time and performance properties Task execution timeline Performance Prediction Approach (2/2) Input Application requirements
Behaviour and Resource Models BehavourModel_MPEG4Decoder_Component behaviour operation IDecode.decodeFrame() calls IBufferAccess.getElement() passedBits = 0 returnedBits = 1024 synchronous = TRUE numberOfIterations = 1 calls IBufferAccess.storeElement() passedBits = 1024 returnedBits = 1 synchronous = TRUE numberOfIterations = 1 ResourceModel_MPEG4Decoder_Component resource use operation IDecode.decodeFrame() cpu claim max = 1E7 cycles (reference processor) aver = 1E5 cycles (reference processor) min = 1E4 cycles (reference processor) mem claim = 10 KB mem release = 3 KB IDecode IBufferAccess getElement() decodeFrame() storeElement()
Composition of Hardware Components • Performance model specifies IP processing capabilities. • For processing core frequency rate and scheduling policy; • For memory a memory size and addressing type; • For bus bit-size, frequency and arbitration policy
Application Scenario Modelling A scenario model defines • environmental events or system interrupts • application level stimuli (task triggers) for a specific hw/sw-configuration (composition structure)
TaskTrigger invoke InterfaceX.OperationA period 40 ms offset 0 ms deadline 40 ms Application Scenario Component Behavior Model: Model: OperationA() calls InterfaceZ.OperationB() nmbIterations = 1 InterfaceY.OperationC() Service_B Service_C Service_D Service_F nmbIterations = 1 Task Trigger (period 40 ms) Operation_B Operation_D Operation_E Component Resource Model: Operation_E Operation_E 3ms CPU claim = 30ms Operation_E Operation_C Operation_F Composing the Models The generated task specifies • sequence of constituent method invocations • period, deadline, priority, synchronization constraints Service_A Operation_A
Scenario Simulation + Analysis • Simulation or Schedulability analysis are performed with scheduling algorithms deployed on the target OS (RMA, EDF, CBS) • Simulation results in task latencies, number of missed deadlines, CPU, memory and bus utilization Simulation time Bus load Mem load Simulation time Simulation time
Not mentioned Facilities and Benefits • Modelling of parameter-dependent behaviour and resource usage • Multiple-platform resource models • Task synchronization aspects can be modeled • Component mapping on multiprocessor architecture • Multidimensional design space exploration • robusteness vs cost, memory_load vs cpu_load, etc
Framework Deployment Issues • We have developed a tool chain supporting the design activities • We have validated the prediction approach by MPEG4 Decoder case study: • prediction accuracy of task latencies is > 90% Real-Time Prediction Framework