1 / 14

Parallel and Distributed Simulation

Parallel and Distributed Simulation. FDK Software. Outline. FDK Overview RTI-Kit Software BRTI and DRTI Group Communication: MCAST Time Management: TM-Kit. Federated Simulations Development Kit (FDK). RTI-Kit: software for experimental research in RTIs

tyler
Download Presentation

Parallel and Distributed Simulation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Parallel and Distributed Simulation FDK Software

  2. Outline • FDK Overview • RTI-Kit Software • BRTI and DRTI • Group Communication: MCAST • Time Management: TM-Kit

  3. Federated Simulations Development Kit (FDK) • RTI-Kit: software for experimental research in RTIs • Jane: interactive simulation monitoring and control Jane GUI Remote User Compute Server

  4. RTI-Kit • collection of libraries; enhance existing RTIs / develop new ones • each library can be used separately, or with other RTI-Kit libraries • implemented over multiple platforms: compute clusters (Myrinet), shared memory multiprocessors (SGI), IP networks • current libraries • MCAST: group communication software • distributed group management, name server functions • current implementation built over unicast • application-defined buffer allocation to minimize data copying • TM-Kit: algorithms for implementing time management • fast distributed snapshot algorithm • scalable (O(log N) time for global reduction operations • buffer management, priority queues, random number libraries • RTIs using RTI-Kit • UK-RTI (DERA) • B-RTI, D-RTI

  5. RTI-Kit Software federates RTI Interface (use one) B-RTI: Simple interface D-RTI: HLA interface MCAST (group communication) TM-Kit (time management algorithms) DDM-Kit* (data distribution software) RTI-Kit libraries other libraries: buffer management priority queues, etc. FM-Lib Comm Libraries (use one) Myrinet Shared memory IP protocols Physical network * not included in current release

  6. RTIs • BRTI • Simple example RTI • Does not attempt to conform to HLA IF/Spec • DRTI • Similar functionality to BRTI, services conform to v. 1.3 HLA IF/Spec • Limit set of services (federation management, declaration management, object management, time management)

  7. MCAST MCAST: group communication software • distributed group management, name server functions • current implementation built over unicast • cache group membership information • application-defined buffer allocation eliminates data copying within MCAST

  8. MCAST API Group Management • MCAST_Create: create group • MCAST_GetHandle: obtain handle for group from name server • MCAST_Subscribe: join group • MCAST_Unsubscribe: leave group Sending / Receiving Messages • MCAST_Send: send message • WhereProc: callback invoked for each incoming message (typically to allocate memory for incoming message) • MessageHandler: callback invoked for each subscriber for each incoming message • EndProc: optional callback invoked after all message handlers have been called

  9. One Way Message Latency(round trip latency / 2)

  10. Update Attribute Value Latency Benchmark Federate to federate latency using RTI-Kit sending N byte payload Myrinet and Shared Memory similar performance Mryinet and Shared Memory about 4 to 9 times faster than TCP/IP

  11. TM-Kit • Compute each processor’s Lower Bound on Time Stamp (LBTS) of future messages that could later arrive • LBTS computation • Based on distributed snapshot algorithm • Similar to Mattern’s GVT algorithm • Butterfly network for reduction computation and distribution of results • Wait until all transient messages received before reporting final LBTS value

  12. network TSO queue RTIi . . . . . . 13 11 LBTS=10 8 Federatei HLA Time Management • deliver messages to federate in time stamp order • ensure federate does not receive an event in its past LBTSi: lower bound on time stamp of messages that could later arrive for federate i • TSO messages w/ TS ≤LBTSi eligible for delivery • RTI ensures logical time of federate i never exceeds LBTSi

  13. TM-Kit Implementation • any processor can start an LBTS computation at any time • callbacks to RTI software used to • Indicate another processor has started an LBTS computation • LBTS computation has completed • simultaneous initiations by more than one processor automatically combined • multiple pending LBTS computations allowed: a processor can initiate a new computation even if previously initiated one(s) pending • allows variety of methods to initiate LBTS computations • each processor starts a new computation “as needed” (done here) • central controller can responsible for starting LBTS computations

  14. TM-Kit API • TM_StartLBTS: initiate an LBTS computation • StartHandler: callback invoked when LBTS computation initated by another processor is detected • DoneHandler: callback invoked when LBTS computation completed • Transient Messages • TM_PutTag: called prior to sending message to write tag (color) into message • TM_Out: called after message (event) is sent • TM_In: called when message (event) is received

More Related