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

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend