Presentation is loading. Please wait.

Presentation is loading. Please wait.

RAPIDS Server Author: Anna Bekkerman

Similar presentations


Presentation on theme: "RAPIDS Server Author: Anna Bekkerman"— Presentation transcript:

1 RAPIDS Server Author: Anna Bekkerman abekkerm@ecs.umass.edu

2 Starting Up Server Logger ProxyProducer Mdcn 1 Starts 4 3 Sets up 7 Notifies when LMM server is ready 2 Listens LMM Server 5 Starts libServer.s o Java C++ RAPIDS configuration file 6 Listens LMM Launcher 8 Starts LMMs libLauncher.so

3 Starting Up Server Logger ProxyProducer Mdcn 10 Forwards signals Listens LMM Server 9 Forwards signals 12 Java C++ Command Sender 11 Sets LMMs up libSender.s o GeneralConsumer Starts 13 Starts monitoring LMM Sends commands

4 Logger Class First, server starts the logging module – Path for storing log files should be provided in config file Logging module: – Opens a log file – Writes current setup to the log file Current setup is provided in RAPIDS configuration file

5 ProxyProducer Class Uses JNI to communicate with LMM server – LMM server is written in C++ Main functionality: – Launches LMM server – Creates event objects See “Event Hierarchy” section for more details on event classes – Forwards events to GeneralConsumer who logs them and sends to RAPIDS clients

6 LMM Server Uses “Common C++” framework to communicate with LMMs – Online documentation on “Common C++” can be found here: http://www.gnu.org/software/commoncpp/ http://www.gnu.org/software/commoncpp/ Main functionality: – Receives data from LMMs – Forwards the data to ProxyProducer (through JNI calls)

7 Mdcn Class (aka Main Display and Control Node) Implements all control actions Uses JNI to launch LMMs, set them up, and stop them Main functionality: – Starts/stops LMMs – Sets LMMs up according to the setup provided in the configuration file – Starts/stops GeneralConsumer

8 LMM Launcher Starts a process that launches LMM on a given machine LMM is started remotely using ssh connection – Important! ssh on remote machines should be configured to allow command execution without providing a password

9 Command Sender Uses “Common C++” framework to communicate with LMMs Commands might have a number of parameters – For example: metric key, name of a monitored process, command to start a process, update rate Classes that describe set-up commands are contained in command package

10 GeneralConsumer Class Logs received events in order of their arrival – Uses Logger class Forwards events to RAPIDS clients – The list of clients is being constantly updated by the Server

11 Events Flow Server Logger ProxyProducer LMM Server Java C++ LMM GeneralConsumer Events Client Updates list of clients Events

12 Shutting Down ServerMdcn Java C++ Command Sender 1 Stops 2 Stops LMMs LMM Ctrl-C/kill Sends stop command GeneralConsumer 3 Stops Upon receiving stop command, LMM performs all necessary clean-up and dies


Download ppt "RAPIDS Server Author: Anna Bekkerman"

Similar presentations


Ads by Google