Presentation is loading. Please wait.

Presentation is loading. Please wait.

Włodzimierz Funika 1, Marian Bubak 1,2, Marcin Smętek 1 and Roland Wismüller 3 1 Institute of Computer Science, AGH, Kraków, Poland 2 Academic Computer.

Similar presentations


Presentation on theme: "Włodzimierz Funika 1, Marian Bubak 1,2, Marcin Smętek 1 and Roland Wismüller 3 1 Institute of Computer Science, AGH, Kraków, Poland 2 Academic Computer."— Presentation transcript:

1 Włodzimierz Funika 1, Marian Bubak 1,2, Marcin Smętek 1 and Roland Wismüller 3 1 Institute of Computer Science, AGH, Kraków, Poland 2 Academic Computer Center – CYFRONET AGH, Kraków, Poland 3 Fachgruppe BVS – Universitaet Siegen, Segen, Germany 1.Introduction Performance evaluation of RMI calls involves the analysis of RMI structure and communication. RMI’s key points from the viewpoint of performance analysis are: RMI call start/end on the client side, RMI call start/end on the server side, information stored in RMI registry. 2. Goals We aim at building a comprehensive tool support for distributed Java application by providing uniformed, extensible monitoring facilities to understand an application’s behaviour. This concept had been incorporated into the J-OCM monitoring system, complying to the OMIS (On-line Monitoring Interface Specification). RMI-based distributed application J-OCM Server Registry Invoke Method Register Object Lookup Object Client Tool 3. General Architecture Concept Node Distribution Unit Client.class Agent Local Monitor sun.rmi.* Node JVM Server.class Agent Local Monitor sun.rmi.* Node JVM transport 7. Implementation 4. Approach to the Monitoring of RMI calls The approach we used for monitoring RMI calls in the J-OCM relies on modification of two classes from sun.rmi package: 1. sun.rmi.UnicastServerRef 2. sun.rmi.UnicastRef Communication between instrumented package and J-OCM is enabled with JNI (Java Native Interface) and native Agent (library loaded to JVM). A call of a function with JNI causes notification of the event to the J-OCM. 5. RMI calls identification The problem of associating the events raised by the client and those raised by the server can be solved by sending additional information (rmi_id, token of thread-initiator) from the client to the server. The tool visualizes interaction between clients and servers in two example RMI calls with space-time diagram Captured RMI-bound events are mapped into relevant time intervals which enable to observe time spent in RMI execution phases The tool visualizes interaction between clients and servers in two example RMI calls with space-time diagram Captured RMI-bound events are mapped into relevant time intervals which enable to observe time spent in RMI execution phases 8. Start-up procedure In order to start the monitoring of an Java RMI application we must perform following commands: java –Xbootclasspath/p:$INSTRUMENTED_CLASS_DIR -Xdebug -XrunAgent Server java –Xbootclasspath/p:$INSTRUMENTED_CLASS_DIR –Xdebug -XrunAgent Client Afterwards, monitoring Agents will register the launched JVM in its Local Monitor to make them visible for tools. Since that moment any tool can get monitoring information about RMI calls. 9. References 1.R. Wismüller, J. Trinitis and T. Ludwig: A Universal Infrastructure for the Run-time Monitoring of Parallel and Distributed Applications. In: Proc. Euro-Par'98, Southampton, UK, LNCS 1470, pp. 173-180, Springer, 1998 2.M. Bubak, W. Funika, M.Smetek, Z. Kilianski, and R. Wismüller: Architecture of Monitoring System for Distributed Java Applications. In: Dongarra, J., Laforenza, D., Orlando, S. (Eds.), Proc. Euro PVM/MPI 2003, Venice, Italy, Sept. 29 - Oct. 2 2003, LNCS 2840, pp. 447-454, Springer, 2003 6. Role of tokens An every monitored object (node, jvm) is identified by token – object’s name as well as a platform independent way of addressing, e.g. the thread token t_1_j_1_n_1 allows to find out where it is running (thread 1 on JVM 2, on node 1). rmi_invoke_start rmi_result_send rmi_dispatch_start rmi_execution_end rmi_execution_start rmi_request_receive rmi_result_receive rmi_invoke_end


Download ppt "Włodzimierz Funika 1, Marian Bubak 1,2, Marcin Smętek 1 and Roland Wismüller 3 1 Institute of Computer Science, AGH, Kraków, Poland 2 Academic Computer."

Similar presentations


Ads by Google