1 / 24

Instrumentation and measurement

Instrumentation and measurement. Jeffrey K.Hollingsworth Bart Miller. Introduction. What is Performance data ? 1-Gathering data to improve the next execution of the program 2-Guiding scheduling decisions 3-Adapting a computation while it is in execution. Introduction.

cirila
Download Presentation

Instrumentation and measurement

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. Instrumentation and measurement Jeffrey K.Hollingsworth Bart Miller

  2. Introduction • What is Performance data? • 1-Gathering data to improve the next execution of the program • 2-Guiding scheduling decisions • 3-Adapting a computation while it is in execution

  3. Introduction • Instrumentation?...Is the mechanism… • Measurements?...are the DATA… • Our discussion: • 1-instrumentation techniques • 2-different types of measurements and how they are used.

  4. Instrumentation Techniques • Collecting of the raw data from a variety of sources : • Running programs • Operating systems • Processors • Net work intefaces

  5. Program Instrumentation Techniques Manual [PICL]…………………automatic Binary rewriting Pablo ,ATExpert Source code PVM,MPI,IPS-2 Runtime library AE Compiler Dynamic instrumentation Object code Linker Quantity Paradyn Executable file Running program qpt, Atom

  6. Processor Instrumentation Techniques • Hardware support • Includes : high resolution timers, internal details of processor FLOP counts floating point utilization • Special register OR memory mapped locations • Accurate clock

  7. Processor Instrumentation Techniques • High resolution • Low latency • Multinode synchronization • Single multiprocessor provide hardware. • ??? Wide area systems …Tow alternative. • Use of communication network (NTP:variation between packet arivals)

  8. Processor Instrumentation Techniques • NTP (hierarchy of time servers) • Periodically each node being synchronized by NTP will contact an NTP time server • USE an external time base .exp GPS • More features integrated more instrumentation importance • A weakness : use only in kernel mode • I/O systems & network interfaces MSRs (Mode Specific Registers) IN PENTUME IBM RP3 Passive monitoring

  9. HARDWARE assist : • hardware base tracing monitors : • MultiKron • HYPERMON • Initiate event recording by making a request to the hardware controller

  10. Network Instrumentation techniques • Divide into two major categories : • Passive : inserts measurement network components • Active : injecting new traffic into network Can gather additional information. Packet filter

  11. RMON protocol defines SNMP • Management Information Base (MIB) variables • Gathering statistics about packet counts, A matrix of traffic , selected TCP & UDP ports • Internet Control Message Protocol (ICMP) Echo packets (Ping packets) • Exploit the time-to-live field in IP packet used by traceout utility . • Trace-rout packets gather information about adjacent nodes take to reach their target • ATM ,active monitoring via the operation and Management (OM) cells.

  12. DATA storage representation • The form of the collected data. • Finite-size structures (counters, timers…) • Trace-streem • Counters : • Timers :be precise & and fast to access • CPU time and elapsed time (wall time)

  13. Traces • The most general form of performance data is the trace. • Header Information (event type, timestamp, size) • & event type-dependent information • Size of the data collected can be problematic • PICL • The Pablo tracing system ,Self Describing Data Format (SDDF).

  14. Resources • In this section we describe the different abstractions : • Software • Hardware • Network • Software abstraction

  15. Program Components • Granularity of the information that is reported • Collecting data at Finer granularity   increase the overhead • Procedures • Libraries • Loops • Dynamically adjust the granularity of information collected

  16. Code in execution • A Key abstraction is the different threads of control • processes • Lightweight processes • User level processes • Lightweight processes & processes are kernel visible • Creating generic instrumentation based on user-level threads is difficult

  17. Synchronization Objects • We describe 3 synchronization primitives • Messages • Barriers • Locks • Synchronization via message passing Due to Load imbalance • Message tags

  18. Barrier : In both Message passing & shared memory parallel programs • Implemented by a user-level library or by message passing • Locks : not commonly used in distributed-memory systems because • The techniques to measure synchronization time due to locks implemented on top of message passing primitives are identical to those for message-passing routines.

  19. Other software abstraction • Files • Transfers to and from disk storage • IN grid environment…? • I/O and message passing • Measure the performance of an application base on its data structure • Netzer and Shaprio

  20. Hardware abstractions • Physical components • Processor : • Time spent executing instructions • The number of instruction executed • Time spent waiting for data from other processor

  21. Memory : • Can be shared between different processors • Cache controllersornetwork interfaces • Expensive instrumentation , execution in every load & store operation • Disks :

  22. Network abstraction • Varying levels of detailed information : “clouds of connectivity”  Link and interface • Lowest level : every networking interface, Link, Switch, router • In Wide area distributed systems : • measure the amount of traffic carried by each protocol • Protocols provide a way to identify traffic by the source ,destination , and an application identifier called port .

  23. Data analyses • Quantitative Performance : • Metrics : • PAG ( program activity graph ) Nodes : significant EVENTS in the program’s execution Arcs : ordering of the events within a process • Critical path • Logical zeroing • On-line critical path analysis, by “Piggybacking”

  24. PARADYN………

More Related