modelling and analysis of parallel distributed time
play

Modelling and Analysis of Parallel/ Distributed Time-dependent - PowerPoint PPT Presentation

Modelling and Analysis of Parallel/ Distributed Time-dependent Systems: An Approach based on JADE Franco Cicirelli and Libero Nigro Laboratorio di Ingegneria del Software www.lis.deis.unical.it Universit della Calabria, DIMES 87036 Rende


  1. Modelling and Analysis of Parallel/ Distributed Time-dependent Systems: An Approach based on JADE Franco Cicirelli and Libero Nigro Laboratorio di Ingegneria del Software www.lis.deis.unical.it Università della Calabria, DIMES 87036 Rende (CS) - Italy 7th IDCS 2014 - Calabria - 22-24 Sep 1

  2. Motivations � The control structure of a MAS normally rests on multi-threading and asynchronous message-passing � Each agent typically hosts a mailbox for storing incoming messages, and one thread which picks-up one message at time and processes it. � The agent thread captures agent behavior � Multi-threading is deemed sufficient to realize basic abilities of agents: autonomy , proactivity , adaptivity to the surrounding (perceived/acted-upon) environment , sociality , mobility , etc � This work, though, argues that specific application domains can require a particular control structure for regulating the evolution of a MAS: e.g. discrete-event simulation , real-time , mechanism design etc. 7th IDCS 2014 - Calabria - 22-24 Sep 2

  3. Goals � Developing a flexible control framework using JADE for M&S&I of ParDis-TimeDependent systems � Addressing model continuity (a challenging issue) � Realizing control strategies as crosscutting concerns which are plugged-in to a MAS and transparently affect its evolution � JADE was chosen because it ◦ (a) is Java based open source middleware for programming distributed MAS ◦ (b) adhers to FIPA ( F oundations for I ntelligent P hysical A gents) standards for application interoperability � The approach purposely depends on a minimal computational actor model which simplifies agent programming by hiding, e.g., the JADE built-in behavioural infrastructure 7th IDCS 2014 - Calabria - 22-24 Sep 3

  4. Talk outline � Summarizing the control framework (CF) and the basic actors and actions modelling concepts � Highlighting CF prototyping in JADE � Showing a developed library of control forms � Discussing methodological guidelines � Demonstrating the practical application of the CF through two modelling examples and their thorough properties analysis. 7th IDCS 2014 - Calabria - 22-24 Sep 4

  5. Modelling with Actors & Actions processing units (PUs) e.g. cores Actor submitted actions … state variables message interface m1 m2 message queues m3 behaviour sent messages (message handler ) … control strategy application (MAS) business logic time notion 7th IDCS 2014 - Calabria - 22-24 Sep 5

  6. MAS view in-the-large LP#j LP#i (Jade container) (Jade container) Control machine Control machine (Jade agent) + (Jade agent) + collection of PUs collection of PUs … … Subsystem of actors Subsystem of actors a (Jade agents) (Jade agents) Time Server Internet MAS distributed system – Jade platform Logical Process (LP) – Jade container hosting a collection of local agents and a control machine, also managing a group of computing resources (PUs) Platform agent services – yellow pages, migration support, RMA GUI … About Jade API : Global naming – Agent unique IDentifier – AID Messaging – ACLMessage Agents and behaviours – Agent and Behaviour classes 7th IDCS 2014 - Calabria - 22-24 Sep 6

  7. Messages vs. actions � Messages serve to trigger actor behaviour (actor evolution) and to ensure sociality (communication) in a MAS � Actions model computing activities requested by actors. They have a duration and their effect may be reflected on the actor status at action termination � Messages are always processed in a non preemptive way (handler methods are interleaved, i.e. cooperative concurrency) � Action execution naturally exploits maximal parallelism of a multi-core architecture � Action execution can be non preemptive or preemptive on the basis of the modelling needs (e.g. a priority driven real-time tasking set may require preemptive actions) 7th IDCS 2014 - Calabria - 22-24 Sep 7

  8. Model continuity � The approach favours model continuity by allowing a given model to be used both for analysis (through simulation) and for final implementation � Passing from analysis to real-execution implies only ◦ a reification of actions (turning them real actions from simulated version) and a ◦ a replacement of the control machine and associated action scheduler � Any other aspects (agent behaviour, message exchange, communication patterns etc.) of the model remains unchanged. 7th IDCS 2014 - Calabria - 22-24 Sep 8

  9. Control framework in JADE Serializable ProcessingUnit ActionScheduler Serializable 7th IDCS 2014 - Calabria - 22-24 Sep 9

  10. Library of prototyped control forms TimeServer 7th IDCS 2014 - Calabria - 22-24 Sep 10

  11. Action schedulers FirstComeFirstServedAS EPreemptivePU 7th IDCS 2014 - Calabria - 22-24 Sep 11

  12. Development lifecycle � Supported phases: ◦ modelling (based on actors/actions) ◦ property analysis (based on distributed simulation) ◦ preliminary execution (intermediate between simulation and real-time execution, for estimating if timing constraints can be fulfilled in real execution) ◦ implementation and real execution . � Property analysis (PA) can help estimating the parallelism degree of components/agents, by varying the number of admitted PUs per container (LPs). PUs can also be shared among agents � Preliminary execution (PE) uses a real-time control structure with simulated actions (not real actions) "really" executed (pure time consuming resources) � PE tries to assess if the computational overhead of message passing is effectively negligible, i.e., it does not forbid actions/time constrained messages to be completed in their due time, also considering an admitted time tolerance EPS: if a message should be completed at time t, it is considered to be still in time if it is completed within t+EPS 7th IDCS 2014 - Calabria - 22-24 Sep 12

  13. Modelling a company HelpDesk system Call Center PStation S1 Quietness Station S0 1 st line support q 0 Comm. delay (general) Router q 2 q 4 q 3 2 nd line support PStation S2 PStation S4 (more specific) Billing problems Products/services PStation S3 resolution description T echnical problems resolution Help Desk System Closed queue network of service stations, with a fixed population of re-circulating customers 7th IDCS 2014 - Calabria - 22-24 Sep 13

  14. HD simulation parameters Stations average service times: S0: 24h (on average, one customer asks for a service one time per 24h) Call center (S 1 ): 5min, S2,S3: 8min, S4: 1 5min 7th IDCS 2014 - Calabria - 22-24 Sep 14

  15. HD agent model 0..* 0..* 0..* Customer PStation Quietness Station 7th IDCS 2014 - Calabria - 22-24 Sep 15

  16. Property analysis � Experimental frame ◦ Win 7, 12GB, Intel Core i7, 3.50GHz, 4 cores with hyper-threading ◦ DSimulation, with t End =2*10 6 TU ◦ Model partitioned in two containers: one for the call center, the second one for all the remaining stations � Preliminary simulation was directed to estimating the parallelism degree � Using an unbounded number of operators in all the operating stations, only the call center (S 1 ) exhibited an utilization greater than 1 , with a counted parallel degree of 9. As a consequence, subsequent experiments were carried out using in S 1 a variable number of PUs in 1 ..9 and adopting 1 PU in each other station (S2, S3, S4) 7th IDCS 2014 - Calabria - 22-24 Sep 16

  17. HD overall system behaviour 8000 7000 HD processed customers 6000 5000 1 operator for each S2, S3, S4 4000 Varying number from 1 ..9 per S 1 3000 2000 1000 0 1 2 3 4 5 6 7 8 9 Number of processing units on S1 Easy management of model 45000 40000 configuration, by adapting 35000 HD response �me [s] a configuration file 30000 25000 Each station/agent can work 20000 15000 with a specific collection of PUs 10000 5000 Configuration is transparent to 0 1 2 3 4 5 6 7 8 9 model which remains unchanged Number of processing units on S1 7th IDCS 2014 - Calabria - 22-24 Sep 17

  18. Processed customers x station 12000 10000 Processed customers 8000 S1 S2 6000 S3 S4 4000 2000 0 1 2 3 4 5 6 7 8 9 Number of processing units on S1 7th IDCS 2014 - Calabria - 22-24 Sep 18

  19. Utilization x station 7th IDCS 2014 - Calabria - 22-24 Sep 19

  20. Response time x station 30000 S1 25000 S2 Response Time [s] S3 20000 S4 15000 10000 5000 0 1 2 3 4 5 6 7 8 9 Number of processing units on S1 7th IDCS 2014 - Calabria - 22-24 Sep 20

  21. Waiting time x station 800 S1 S2 700 S3 S4 600 Wai�ng Time [s] 500 400 300 200 100 0 2 3 4 5 6 7 8 9 Number of processing units on S1 Emerging property : 4 is the number of call center operators able to optimize system performance 7th IDCS 2014 - Calabria - 22-24 Sep 21

  22. PUs configurations for checking specifically the performance of the second line of support 7th IDCS 2014 - Calabria - 22-24 Sep 22

  23. Performance of second line of support 500 450 S1 400 S2 350 S3 Wai�ng Time [s] 300 S4 250 200 150 100 50 0 a b c d Configura�on 10000 HD Emergent property : S1 8000 Processed customers the a configuration S2 4 PUxS1, 3 sharedPUx(S2,S3,S4) 6000 S3 optimizes SLS performance (WT) S4 4000 2000 without imparing the processing load capacity of SLS stations 0 a b c d Configura�on 7th IDCS 2014 - Calabria - 22-24 Sep 23

Recommend


More recommend