Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
AdaptJ Sookmyung Women’s Univ. PSLAB 1. 목차 1. Overview 2. Collecting Trace Data using the AdaptJ Agent 2.1 Recording a Trace 3. Analyzing Trace Data using AdaptJ Trace Analyzer 3.1 Overview 3.2 The Command-Line Interface 3.3 Dependencies 1. OverView(1) two primary purposes: To facilitate the collection of dynamic data concerning the execution of a Java program To provide a framework for implementing analyses of this collected data quickly and easily two main goals The AdaptJ Agent :to collect event trace data The AdaptJ Trace Analyzer : to read and analyze the traces generated by the agent 2. Collecting Trace Data using the AdaptJ Agent The AdaptJ Agent Sun’s hprof profiler Another program which uses the JVMPI is Sun’s hprof profiler The AdaptJ Agent is designed Java Virtual Machine via the Java Virtual Machine Profiler Interface (JVMPI). to record various types of events Install Linux & Unix to record events The agent accepts a number of command line parameters The AdaptJ agent should then respond with the following message: AdaptJ Agent Options =================== file=<output_file> Specifies the name of the output file. Defaults to "AdaptJ.dat" events=<event_char>+ Specifies the events to be recorded counters=<event_char>+ Specifies the events to be counted Usage "help=events" to get a list of event chars split=<size> Specifies the threshold at which a new file is to be started gc=<size> Specifies at which interval to force garbage collection <size> is a number, optionally followed by one of ’k’, ’m’ or ’g’, which stand for ’kilobytes’, ’megabytes’ and ’gigabytes’, respectively. THIS FEATURE IS CURRENTLY BROKEN. pipe Output data to a named piped instead of a regular file quiet Turns off agent messages opt Attempts to reduce the size of the trace file by using compression techniques cp=<path1>+ Specifies the classpath to use for resolving classes cp+=<path1>+ Specifies the classpath to use for resolving classes. The value of the environment variable CLASSPATH is append to the specified list help[=events] Prints this help message. If ’events’ is specified, a list of event chars is output AdaptJ should display the following message: AdaptJ Event Mappings ==================== JVMPI_EVENT_ARENA_DELETE JVMPI_EVENT_ARENA_NEW JVMPI_EVENT_CLASS_LOAD JVMPI_EVENT_CLASS_LOAD_HOOK JVMPI_EVENT_CLASS_UNLOAD JVMPI_EVENT_COMPILED_METHOD_LOAD A a c k C l Example want to record the Class Load events and the Method Entry Events. These correspond to ’c’ and ’b’, respectively. Therefore, we would type the following to invoke the agent: $ java -XrunAdaptJ:events=cb AdaptJTest 3. 1 Overview Event Operation Events are read from the trace, they are successively passed to a sequence of chained operations. modify the contents of an event Replace completely a different event Stop the processing chain -> act as a filter for the subsequent operations in the chain Pack : grouping of operation Help organize the various operations Facilitate their configuration Contain other pack or operation 3. 2 The Command-line interface Usage and Option Usage : java adaptj.Main [option] <trace file> Option -q, --quiet : set the quiet mode (m,w,e,0,1,2,3) -v, --verbose : enables verbose mode -- version : print the version and exits --no-gui : disables the graphical progress indicator -x, --all-off : turns off all operations -f, --file : read arguments from a file -r, --refresh-rate :set the amount of time between GUI update --pipe : forces to read input as if from a pipe --show-hierarchy : displays the package/operation hierarchy -t, --time : prints time statistics --showver : prints the version and continues -p : set of option for a pack/operation -cp, --classpath : manipulates the classpath use by AdaptJ -h, --help : prints help and exits 3. 3 Dependencies AdaptJ requires every operation to explicitly state two kinds of dependencies Event dependencies Which event the operation absolutely requires in order to be able to perform its task Which event it would like to receive if they are available Operation dependencies Which operations in the AdaptJ toolkit provide service for a given application