PDM: Programmable Monitoring For Distributed Applications

Size: px
Start display at page:

Download "PDM: Programmable Monitoring For Distributed Applications"

Transcription

1 PDM: Programmable Monitoring For Distributed Applications Michael D. Rogers James E. Lumpp Jr. James Griffioen Department of Computer Science Department of Electrical Engineering University of Kentucky Lexington, KY Abstract We have constructed PDM, a Programmable, Distributed Monitoring system for building performance monitoring/analysis, steering, and adaptive systems for largescale, parallel applications. PDM takes advantage of mobile languages to reduce monitoring overheads and offers new monitoring capabilities. PDM monitoring code is currently written in Tcl. PDM is capable of decomposing and distributing the monitoring code to the nodes in the system where the performance data is generated, thereby reducing the amount of network traffic required to collect monitoring information. Furthermore, PDM scripts can monitor and bound their own resource usage, further reducing monitoring overheads. Keywords: Performance Monitoring, Distributed Computing, Parallel Applications, Steering, Reactive Systems 1 Introduction Multi-processor systems have been used to solve many computationally intensive problems [3, 14, 15, 16, 19]. However, these systems often fail to achieve the magnitude of expected speedup. Monitoring systems have been used to debug and optimize performance. The PDM system extends the abilities and features of past systems with efficient mobile and extensible code that can be decomposed and migrated to any node in the system. As a result, PDM offers the following new features: Reduced Monitoring Overhead. Because the monitoring code can be decomposed and migrated to collect and analyze the performance data where it originates, network monitoring traffic can be reduced. This research was supported by the National Science Foundation under Grant CDA , the Advanced Research Projects Agency under Grant DAAH , and the Experimental Program to Stimulate Competitive Research under Grant EPS Extensibility. Because monitoring code is written in an expressive and extensible language, new application-specific monitoring functions can be added to the system to collect application specific information. Bounded Resource Usage. Because the monitoring code can make local decisions about what data to record and transmit, monitoring overhead can be limited by dynamically adjusting the amount of information recorded by the system. Dynamic Buffering. PDM can adjust network buffering based on monitoring-overhead feedback. PDM provides more buffering when network utilization is high and less buffering when network utilization is low. The remainder of this paper is organized as follows. Section 2 discusses related work on performance monitoring tools. Section 3 describes the PDM monitoring abstractions and introduces PDM s programming language. Section 4 describes the implementation of PDM. Section 5 discusses how programming PDM with movable scripts provides opportunities to enhanced monitoring performance. Lastly, Section 6 describes experimental results. 2 Related Work A variety of performance monitoring tools exist to aid programmers in determining the source of performance problems. One class of monitoring tools is software Profilers such as Gprof [4], Prof [7], and Quartz [1] that collect information via sampling. Unfortunately, profiling tools record a limited number of metrics, which restricts the amount of insight a user can gain from such tools [6]. Performance visualization and instrumentation tools such as Pablo [13], Paradyn [11], and AIMS [10] allow programmers to instrument the application code to collect

2 runtime information. Interactive steering tools such as Falcon [2, 5] and Progress [17] take monitoring a step further by allowing the user to modify a running application. However, users cannot insert new code into the system to analyze performance once the application is running. Meta [8, 9] and Magellan [18] allow programmers to associate conditions based on performance parameters with one or more actions. When a condition becomes TRUE, the corresponding action executes. As we describe in section 5.1, Meta cannot evaluate conditions locally that are used to compute global state. The expression parser in Magellan is somewhat more sophistocated. If a Magellan condition and its associated actions reference steering objects local to a machine, Magellan migrates the code to that machine. However, all of the steering objects referenced by a condition and it actions must be local to a particular machine for Magellan to take advantage of this optimization. Both Magellan and Meta use languages specific to the domain of performance analysis and steering instead of general programming languages, and, thus, the languages have limited flexibility and extensibility. 3 Programmable Monitoring PDM collects and presents information about the distributed state of the operating system (distributed, shared memory or message passing) and the application. Examples of operating system state include average CPU load across all machines, longest time that any process waits at a particular barrier, and total network traffic caused by a shared-memory region. Examples of application state include average time spent in a particular function or the average number of times a particular loop iterates. PDM defines a set of monitoring abstractions for collecting this distributed state. Furthermore, PDM provides a programming language to query those abstractions. The following sections discuss the abstractions and introduces the PDM programming language. 3.1 PDM Monitoring Abstractions PDM has four basic abstractions: events, samples, metrics, and resources. Events occur during program execution and fall into two types, system events and application events. System events are operating-system actions such as transmitting a network packet, triggering a system alarm, and faulting in a virtual memory page. Application events depend on the application and include such things as ending a computation phase, invoking a procedure, or referencing a variable. A programmer must instrument application code to generate application events. PDM samples are measures of system state. That is, PDM uses a statistical sampling approach to find the state of the system from periodic instantaneous measurements. Examples of samples include CPU ready-queue length, memory utilization, and other system state. Metrics represent performance information computed from event and sample data. PDM maintains two types of metrics, system metrics and application metrics. System metrics can be sample-based or event-based. System metrics are predefined by PDM. PDM computes sample-based metrics by incorporating (averaging) samples into the associated system metrics. For example, PDM updates the average CPU load metric by averaging samples of the system s ready-queue length. PDM maintains system event-based metrics through instrumented event points in the operating system code. The instrumentation code updates the metric each time it is invoked. For example, the network driver may generate a packet-sent event containing the size of the packet being sent. PDM then updates its bytestransferred metric. Unlike system metrics, PDM only computes application metrics from application events (not sampling). An application writer instruments the application to generate application events. When PDM receives an application event, PDM updates the metric associated with the event. A resource is an application abstraction such as a function, a data structure, a code block, or a system abstraction such as a lock, barrier, or shared-memory region. PDM associates every metric with a resource, and every metric is uniquely identified by a (resource,metric id) pair. For example, (CPU,LOAD) represents the load metric associated with the CPU resource. Assigning metrics to resources allows PDM to attribute resource usage to each resource. For example, when a distributed shared-memory system sends updates for a particular segment, PDM can update the number of bytes sent for that segment by updating the bytestransferred metric associated with the segment. 3.2 The PDM Programming Language An application communicates with PDM via expressions specified in the Tcl [12] language. Expressions can be either queries or predicates. Figure 1 lists some example queries and predicates. An application can submit a query to PDM to request information about the state of the distributed system, and can submit a predicate so that the application will be notified when the state of the distributed system changes. A query can evaluate to a numeric value, a string value, a (Tcl) list, or a boolean value (TRUE or FALSE). A predicate is a boolean expression that will evaluate to TRUE or FALSE. In the next section, we describe how PDM makes use of a two level architecture to evaluate queries and predicates.

3 Query Examples 1) [worker 6 {$metric(cpu,load)}] "What is the CPU load on process 6?" 2) [average [worker {1 2 3} {$metric(segment3,bytesxfered)}]] "What is the average of bytes transferred for processes 1, 2, and 3 for segment 3?" 3) [worker 3 {$metric(worktree,numnodes)}] "How many nodes does process 3 have in its work tree? " Predicate Examples 4) [worker 6 {$metric(barrier1,lastwait)}] > [avg [worker {7 8} {$metric(barrier1,lastwait)}]] * 1.10 "Did process 6 wait on barrier 1 at least ten percent longer than the average time processes 7 and 8 waited on that barrier" 5) [worker 6 {$metric(cpu,load) > 1}] "Is the average CPU load on process 6 greater than 1 6) [any [worker ALL {$metric(worktree,numnodes) > 50)}]] "Does any process have more than 50 nodes in its work tree?" Figure 1: Example queries and predicates and their corresponding English statements. $METRIC is a reference to a particular metric followed by a (resource,metric id) pair. The WORKER clause takes a list of processes and a subexpression. When the predicate or query is evaluated, the WORKER clause will be replaced by a list of values of the subexpression evaluated at each process. 4 The PDM Monitoring Architecture PDM collects distributed state constructed from local state information at each machine. However, continuously updating distributed state from local state can impose a heavy load on the network. PDM reduces network load by filtering out information (at the local site) that is not important to the distributed state being queried. The PDM architecture is represented in Figure 2. PDM Machine 1 Machine 2 Machine 3 D i s t r i b u t e d A p p l i c a t i o n evaluated locally on each machine. The LSL does not immediately evaluate the subexpression. Instead, the LSL stores the subexpression for future evaluations. The LSL continuously gathers performance data about the underlying system. If the state of a local machine changes, the LSL re-evaluates, on that machine, all subexpressions that depend on the changed state. If the value of the subexpression changes, the LSL sends a notification to the DSL containing its new value. When the DSL receives a notification from the LSL, it re-evaluates all registered predicates that have terms containing the subexpression, using the value that the LSL sent in the notification. If a predicate fires, the DSL invokes a callback in the application. PDM Local State Layer D i s t r i s t r i b u t e d S t a te L a y e r Local State Layer D i s t r i b u t e d O S Local State Layer Figure 2: Layered implementation of PDM. The Distributes State Layer (DSL) collects information about the state of the distributed system and the Local State Layer (LSL) collects information about the individual machines. consists of two layers: a Distributed State Layer (DSL) and a Local State Layer (LSL). The DSL is responsible for collecting information about the distributed system and presenting it to the application. The DSL collects information about the distributed system by aggregating information from the LSL (see Figure 3). In Figure 3, the DSL s Tcl interpreter parses the predicate and decomposes it into subexpressions that will be sent, installed, and eventually 5 Controlling Monitoring Overhead PDM s integration of a flexible, mobile programming language provides the opportunity to reduce monitoring overhead. Specifically, migrating subexpressions can reduce network traffic by eliminating unimportant monitoring information. Furthermore, PDM scripts can monitor and bound their own resource usage, thus further reducing monitoring overheads. 5.1 Migrating Subexpressions PDM s ability to evaluate expressions with terms local to a particular machine differentiates it from other monitoring subsystems, such as Meta [8, 9]. PDM hides the decomposition and distribution tasks from the programmer. Because the language is easily decomposable and mobile, PDM provides this service automatically. Local subexpression evaluation has two major benefits. First, The subexpressions can be computed in parallel, reducing the amount of time required to evaluate the parent query or predicate. Second, processes send notifications only when the value

4 Is the CPU load on any worker greater than 3? Is the CPU load on any worker greater than 3? True True False False CPU Load > 3? CPU Load > 3? CPU Load > 3? Cpu Load = 4 Cpu Load = 4 Cpu Load = 4 CPU Load > 3? CPU Load > 3? CPU Load > 3? Cpu Load = 4 Cpu Load = 1 Cpu Load = 2 (a) The DSL parses the predicate and passes local subexpressions to the LSL (b) The LSL evaluates the local subexpression and returns the answer to the DSL Figure 3: PDM registering and evaluating a predicate. of one of the subexpressions changes, reducing both network traffic and the number of times a predicate needs to be evaluated. As an example, in Figure 4, the expression labeled a shows a representation of the condition part of a Meta guarded command that references sensors on more that one process and thus does not take advantage of locality. Each time the load changes on process 1 or on process 2, the new load is sent to the process that registered the predicate. Not only does the changing load generate network traffic, but the process re-evaluates the predicate each time, which wastes CPU cycles. The predicate labeled b is a similar expression rewritten for PDM and takes full advantage of locality. The process that registered the predicate will only evaluate the predicate when the value of the expression $metric(cpu,load) 2 or the value of the expression $metric(cpu,load) 2 changes. a) p.load > 2 && q.load < 2 b) [worker 1 $metric(cpu,load) > 2] && [worker 2 $metric(cpu,load) < 2] Figure 4: The expression in a represents the condition part of a guarded command that references the Load sensor in two different contexts, labeled p and q. Expression b is the PDM expression restructured to take full advantage of locality. 5.2 Bounding Resource Usage And Controlling Buffering Each time a subexpression is evaluated on a local machine, it consumes CPU, memory, and, possibly, network resources. Because PDM s programming language is flexible, programmers can write predicates that monitor their own resource consumption and limit them to some predefined maximum monitoring overhead. Consider the flow of control for evaluating a subexpression that monitors its own resources that is depicted in Figure 5. First, PDM updates the current CPU and memory resource consumption for this subexpression. Next, PDM determines if the CPU and/or memory resource utilizations for this subexpression are below given thresholds. If not, the flow of control exits and the subexpression is not evaluated, which wastes no resources for evaluating this subexpression. If resource consumption is below the thresholds, the subexpression is evaluated. Start Update CPU/ memory Statistics CPU/ memory threashold violated? No Evaluate Subexpression Yes Sub expression Value Changed? Network threashold violated? No No Yes Buffer Notification Send Notification Update Network Statistics Legend: Required Tcl predicate Optional Tcl code to bound resource usage Optional Tcl code to track specific resource usage Figure 5: Flow of control for evaluating a subexpression that monitors its own resources. Note that the value of the subexpression may or may not have changed since its last evaluation. If not, the subexpression evaluation code terminates. However, if the subexpression s value has changed, PDM then determines if the network resources consumed by this subexpression are below a given threshold. If so, a notification is immediately sent to the DSL. However, if network resources have exceeded the threshold, the notification is buffered and no

5 network traffic is generated. Lastly, if needed, PDM updates the network resource utilization for the subexpression. This flow of control provides both resource monitoring and buffering based upon feedback information. PDM provides the necessary hooks to update persubexpression memory utilization and control buffering. PDM also automatically updates per-subexpression CPU and network utilization. Therefore, constructing a predicate that does its own resource monitoring and dynamic buffering can be done simply, as shown in Figure 6. Note that the?: conditional operator in Tcl is similar to that of the C programming language. The subexpression in this predicate contains an outer conditional that evaluates the inner conditional if the CPU resource usage, i.e. the $perf($this,evalspersec) variable, is below the given evaluations-per-second threshold. The inner conditional evaluates the predicate and sets the $buffer($this) variable if the network usage, stored in the $perf($this,bytespersec) variable, violates the given bytes-per-second threshold. PDM buffers the notification if the $buffer($this) variable is set and value of the expression has changed. [worker ALL {$perf($this,evalspersec) < $ethresh? [expr {$perf($this,bytespersec) < $bthresh? [expr $subex] : [expr {[set buffer($this) 1]? [expr {$subex}] : 0}]}] : $Lastval($this)}] Figure 6: This script monitors its own CPU and network performance. The script will not evaluate the subexpression ($subex) once the EvalPerSec threshold is exceeded. Furthermore, PDM buffers the notification for this subexpression if the network threshold is exceeded. 6 Experimentation We evaluated network overhead by measuring network traffic generated by PDM for runs of a Successive Over- Relaxation (SOR) benchmark written for a DSM system that has been instrumented to interact with PDM. We modified the benchmark to register an alarm that was triggered whenever a machine performed its task exceptionally fast or exceptionally slow. The pseudo-code for registering the alarm is shown in Figure 7. Specifically, the SOR object registers alarms that are triggered when the amount of time any process spends waiting at the barrier is above or below a certain threshold. The SOR object initially obtains an estimate of how long a process should wait at the barrier by recording the maximum, minimum, and average wait times over the first ten iterations. It then sets a lowval and a highval threshold to detect outliers; machines that took for each worker i Answer[i] = Query("How much time did worker i spend waiting on the barrier") max = maximum of all Answer[i], where i = 1 to number of workers min = minimum of all Answer[i], where i = 1 to number of workers avg = (sum of all Answer[i], where i = 1 to number of workers) / 2 RegisterAlarm("Tell me if any workers barrier wait time is less than lowval") RegisterAlarm("Tell me if any workers barrier wait time is greater than highval") Figure 7: Pseudo-code for the SOR predicate. to long or completed too fast (see Figure 7). The system then registers an alarm to be triggered when an outlier is detected. When the alarm occurs, the system adjusts the load. To show the benefits of subexpression locality, we performed two sets of runs. In the first set of runs, the SOR application registers alarms with predicates that allow PDM to evaluate subexpressions locally. In the second set of runs, the SOR application registers alarms with predicates that do not take advantage of subexpression locality. The predicates for the two sets of runs are shown in Figure 8. The results of the runs is shown in Figure 9. The graph Central Evaluation [smallest [worker ALL {$metric(barrier, WaitTime)}]] < $lowval] [largest [worker ALL {$metric(barrier, WaitTime)}]] > $highval] Local Evaluation [anytrue [worker ALL {$metric(barrier, WaitTime) < $lowval}]] [anytrue [worker ALL {$metric(barrier, WaitTime) > $highval}]] Figure 8: Predicates used in the SOR runs. shows the number of packets PDM transferred as we increased the number of processes at each new run. PDM transmits substantially fewer network packets for the second set of runs, i.e. when PDM evaluates subexpressions locally. Less network traffic is generated because the values of the subexpressions change more slowly than the metrics themselves. Therefore, the processes evaluating the subexpression send fewer notifications to the process that registered the alarm. For eight processes, PDM network traffic was reduced by an order of magnitude. In addition, Figure 9 shows that as the number of processes increases, evaluating expressions locally scales better than the centralized approach. Note that these results are for a single metric. For applications with many metrics the results would be even more dramatic, i.e. network traffic for the centralized approach would increase proportionate to the number of metrics, while traffic for the local approach would grow relatively slowly.

6 Number Of Packets PDM Packets Transferred / SOR benchmark No Local Evaluations Local Evaluations Number Of Workers Figure 9: Number of PDM packets transferred during runs of SOR. 7 Summary PDM is a generalized toolkit for creating monitoring/analysis, steering and reactive systems. PDM collects system and application performance metrics that an application can use to improve its performance. Applications can construct metric expressions to query the state of the application and the operating system. Applications can also register alarms that PDM triggers when the value of a metric expression (predicate) becomes true. What differentiates PDM from other monitoring systems is its mobile scripting language. The scripts are portable, i.e. PDM migrates scripts to the machine where performance data is generated. We have presented performance results which show that migrating scripts can reduce network traffic, thereby reducing monitoring overhead. Furthermore, PDM scripts can monitor and bound their own resource usage, further reducing monitoring overheads. References [1] T. E. Anderson and E. D. Lazowska. Quartz: A tool for tuning parallel program performance. In 1990 ACM SIGMET- RICS Conference On Measurment and Modeling of Computer Systems, volume 18, pages 22 25, May [2] G. Eisenhaur, W. Gu, K. Schwan, and N. Mattavarupu. Falcon - Toward Interactive Parallel Programs: The Online Steering of a Molecular Dynamics Application. High Performance Distributed Computing, August [3] A. Geist, A. Beguelin, J. Dongarra, R. Manchek, W. Jiangand, and V. Sunderam. PVM: A Users Guide and Tutorial for Networked Parallel Computing. MIT Press, [4] S. L. Graham, P. B. Kessler, and M. K. McKusick. gprof: A call graph execution profiler. In Proceedings of the SIGPLAN 82 Symposium on Compiler Construction, volume 17, pages , [5] W. Gu, G. Eisenhaur, and K. Schwan. Falcon: On-line monitoring and steering of parallel programs. IEEE Transactions on Parallel and Distributed Systems, November [6] J. K. Hollingsworth and B P. Miller. Parallel Program Performance Metrics: A Comparison and Validation. In Supercomputing 92 Proceedings, Minneapolis, MN, November ACM and IEEE. [7] Unix Programmer s Manual. prof command. Technical Report section 1, Bell Laboratories, January [8] K. Marzullo and M. D. Wood. Tools for Constructing Distributed Reactive Systems. Technical report, Cornell Univerity, Department of Computer Science, Ithaca, New York 14853, february [9] K. Marzullo and M. D. Wood. Tools for Monitoring and Controlling Distributed Applications. In IEEE Computer, volume 24, pages 42 51, [10] P. Mehra, B. VanVoorst, and J. C. Yan. Automated instrumentation, monitoring and visualization of pvm programs. In Proceedings of the 7th SIAM Conference on Parallel Processing for Scientific Computing, pages , [11] B. P. Miller, M. D. Callaghan, J. M. Cargille, J. K. Hollingsworth, R. B. Irvin, K. L. Karavanic, K. Kunchithapadam, and T. Newhal. The Paradyn Parallel Performance Measurement Tools. In IEEE Computer, volume 28, pages 37 46, November [12] J. K. OusterHout. Tcl: An embedable command language. In 1990 Winter Usenix Conference Proceedings, [13] D. A. Reed, R. A. Aydt, T. M. Madhyastha, R. J Noe, K. A. Shields, and B. W. Schwartz. An Overview of the Pablo Performance Analysis Environment. Technical report, University of Illinois, November [14] J. Reuther. Aerodynamic shape optimization of supersonic aircraft configurations via anadjoint formulation on distributed memory parallel computers. Computers and Fluids, 28(4 5): , MAY-JUNE [15] I. Rosenblum. Multi-processor molecular dynamics using the Brenner potential: Parallelization of an implicit multibody potential. International Journal of Modern Physics C, 10(1): , FEBRUARY [16] V. N. Vatsa. Parallelization of a multiblock flow code: an engineering implementation. Computers and Fluids, 38(4 5): , MAY-JUNE [17] J. Vetter and K. Schwan. Progress: A Toolkit for Interactive Program Steering. Technical report, Georgia Institute of Technology, August [18] J. Vetter and K. Schwan. Techniques for high-performance computational steering. IEEE Concurrency, pages 63 74, October-December [19] P. Wang. Parallel multigrid finite volume computation of three-dimensional thermal convection. Computers and Mathematics with Applications, 37(9):49 60, MAY 1999.

Grindstone: A Test Suite for Parallel Performance Tools

Grindstone: A Test Suite for Parallel Performance Tools CS-TR-3703 UMIACS-TR-96-73 Grindstone: A Test Suite for Parallel Performance Tools Jeffrey K. Hollingsworth Michael Steele Institute for Advanced Computer Studies Computer Science Department and Computer

More information

Performance Monitoring on an HPVM Cluster

Performance Monitoring on an HPVM Cluster Performance Monitoring on an HPVM Cluster Geetanjali Sampemane geta@csag.ucsd.edu Scott Pakin pakin@cs.uiuc.edu Department of Computer Science University of Illinois at Urbana-Champaign 1304 W Springfield

More information

Online Performance Observation of Large-Scale Parallel Applications

Online Performance Observation of Large-Scale Parallel Applications 1 Online Observation of Large-Scale Parallel Applications Allen D. Malony and Sameer Shende and Robert Bell {malony,sameer,bertie}@cs.uoregon.edu Department of Computer and Information Science University

More information

Overlapping Data Transfer With Application Execution on Clusters

Overlapping Data Transfer With Application Execution on Clusters Overlapping Data Transfer With Application Execution on Clusters Karen L. Reid and Michael Stumm reid@cs.toronto.edu stumm@eecg.toronto.edu Department of Computer Science Department of Electrical and Computer

More information

Performance Measurement of Dynamically Compiled Java Executions

Performance Measurement of Dynamically Compiled Java Executions Performance Measurement of Dynamically Compiled Java Executions Tia Newhall and Barton P. Miller University of Wisconsin Madison Madison, WI 53706-1685 USA +1 (608) 262-1204 {newhall,bart}@cs.wisc.edu

More information

A Framework for Online Performance Analysis and Visualization of Large-Scale Parallel Applications

A Framework for Online Performance Analysis and Visualization of Large-Scale Parallel Applications A Framework for Online Performance Analysis and Visualization of Large-Scale Parallel Applications Kai Li, Allen D. Malony, Robert Bell, and Sameer Shende University of Oregon, Eugene, OR 97403 USA, {likai,malony,bertie,sameer}@cs.uoregon.edu

More information

ILI: An Adaptive Infrastructure For Dynamic Interactive Distributed Applications

ILI: An Adaptive Infrastructure For Dynamic Interactive Distributed Applications ILI: An Adaptive Infrastructure For Dynamic Interactive Distributed Applications Vernard Martin Karsten Schwan College of Computing Georgia Institute of Technology Atlanta, Georgia 3033 e-mail: fvernard,

More information

DESIGN AND IMPLEMENTATION OF A DISTRIBUTED MONITOR FOR SEMI-ON-LINE MONITORING OF VISUALMP APPLICATIONS 1

DESIGN AND IMPLEMENTATION OF A DISTRIBUTED MONITOR FOR SEMI-ON-LINE MONITORING OF VISUALMP APPLICATIONS 1 DESIGN AND IMPLEMENTATION OF A DISTRIBUTED MONITOR FOR SEMI-ON-LINE MONITORING OF VISUALMP APPLICATIONS 1 Norbert Podhorszki and Peter Kacsuk MTA SZTAKI H-1518, Budapest, P.O.Box 63, Hungary {pnorbert,

More information

Parallel Processing over Mobile Ad Hoc Networks of Handheld Machines

Parallel Processing over Mobile Ad Hoc Networks of Handheld Machines Parallel Processing over Mobile Ad Hoc Networks of Handheld Machines Michael J Jipping Department of Computer Science Hope College Holland, MI 49423 jipping@cs.hope.edu Gary Lewandowski Department of Mathematics

More information

MODEL DRIVEN DEVELOPMENT OF BUSINESS PROCESS MONITORING AND CONTROL SYSTEMS

MODEL DRIVEN DEVELOPMENT OF BUSINESS PROCESS MONITORING AND CONTROL SYSTEMS MODEL DRIVEN DEVELOPMENT OF BUSINESS PROCESS MONITORING AND CONTROL SYSTEMS Tao Yu Department of Computer Science, University of California at Irvine, USA Email: tyu1@uci.edu Jun-Jang Jeng IBM T.J. Watson

More information

Scientific Computing Programming with Parallel Objects

Scientific Computing Programming with Parallel Objects Scientific Computing Programming with Parallel Objects Esteban Meneses, PhD School of Computing, Costa Rica Institute of Technology Parallel Architectures Galore Personal Computing Embedded Computing Moore

More information

Integrating PVaniM into WAMM for Monitoring Meta-Applications

Integrating PVaniM into WAMM for Monitoring Meta-Applications Integrating PVaniM into WAMM for Monitoring Meta-Applications R. Baraglia, M. Cosso, D. Laforenza, M. Nicosia CNUCE - Institute of the Italian National Research Council Via S. Maria, 36 - I56100 Pisa (Italy)

More information

PTC System Monitor Solution Training

PTC System Monitor Solution Training PTC System Monitor Solution Training Patrick Kulenkamp June 2012 Agenda What is PTC System Monitor (PSM)? How does it work? Terminology PSM Configuration The PTC Integrity Implementation Drilling Down

More information

3 Performance Contracts

3 Performance Contracts Performance Contracts: Predicting and Monitoring Grid Application Behavior Fredrik Vraalsen SINTEF Telecom and Informatics, Norway E-mail: fredrik.vraalsen@sintef.no October 15, 2002 1 Introduction The

More information

Dynamic Control of Performance Monitoring on Large Scale Parallel Systems

Dynamic Control of Performance Monitoring on Large Scale Parallel Systems To Appear International Conference on Supercomputing (Tokyo, July 19-23, 1993). Dynamic Control of Performance Monitoring on Large Scale Parallel Systems Jeffrey K. Hollingsworth hollings@cs.wisc.edu Barton

More information

Resource Utilization of Middleware Components in Embedded Systems

Resource Utilization of Middleware Components in Embedded Systems Resource Utilization of Middleware Components in Embedded Systems 3 Introduction System memory, CPU, and network resources are critical to the operation and performance of any software system. These system

More information

Course Development of Programming for General-Purpose Multicore Processors

Course Development of Programming for General-Purpose Multicore Processors Course Development of Programming for General-Purpose Multicore Processors Wei Zhang Department of Electrical and Computer Engineering Virginia Commonwealth University Richmond, VA 23284 wzhang4@vcu.edu

More information

Improving Online Performance Diagnosis by the Use of Historical Performance Data 1

Improving Online Performance Diagnosis by the Use of Historical Performance Data 1 Improving Online Performance Diagnosis by the Use of Historical Performance Data 1 Karen L. Karavanic and Barton P. Miller {karavan,bart}@cs.wisc.edu Computer Sciences Department University of Wisconsin

More information

A NOVEL RESOURCE EFFICIENT DMMS APPROACH

A NOVEL RESOURCE EFFICIENT DMMS APPROACH A NOVEL RESOURCE EFFICIENT DMMS APPROACH FOR NETWORK MONITORING AND CONTROLLING FUNCTIONS Golam R. Khan 1, Sharmistha Khan 2, Dhadesugoor R. Vaman 3, and Suxia Cui 4 Department of Electrical and Computer

More information

A Thread Monitoring System for Multithreaded Java Programs

A Thread Monitoring System for Multithreaded Java Programs A Thread Monitoring System for Multithreaded Java Programs Sewon Moon and Byeong-Mo Chang Department of Computer Science Sookmyung Women s University, Seoul 140-742, Korea wonsein@nate.com, chang@sookmyung.ac.kr

More information

Monitoring Message-Passing Parallel Applications in the

Monitoring Message-Passing Parallel Applications in the Monitoring Message-Passing Parallel Applications in the Grid with GRM and Mercury Monitor Norbert Podhorszki, Zoltán Balaton and Gábor Gombás MTA SZTAKI, Budapest, H-1528 P.O.Box 63, Hungary pnorbert,

More information

An Implementation of the POMP Performance Monitoring Interface for OpenMP Based on Dynamic Probes

An Implementation of the POMP Performance Monitoring Interface for OpenMP Based on Dynamic Probes An Implementation of the POMP Performance Monitoring Interface for OpenMP Based on Dynamic Probes Luiz DeRose Bernd Mohr Seetharami Seelam IBM Research Forschungszentrum Jülich University of Texas ACTC

More information

InfiniteGraph: The Distributed Graph Database

InfiniteGraph: The Distributed Graph Database A Performance and Distributed Performance Benchmark of InfiniteGraph and a Leading Open Source Graph Database Using Synthetic Data Objectivity, Inc. 640 West California Ave. Suite 240 Sunnyvale, CA 94086

More information

FPGA area allocation for parallel C applications

FPGA area allocation for parallel C applications 1 FPGA area allocation for parallel C applications Vlad-Mihai Sima, Elena Moscu Panainte, Koen Bertels Computer Engineering Faculty of Electrical Engineering, Mathematics and Computer Science Delft University

More information

Embedded Systems. Review of ANSI C Topics. A Review of ANSI C and Considerations for Embedded C Programming. Basic features of C

Embedded Systems. Review of ANSI C Topics. A Review of ANSI C and Considerations for Embedded C Programming. Basic features of C Embedded Systems A Review of ANSI C and Considerations for Embedded C Programming Dr. Jeff Jackson Lecture 2-1 Review of ANSI C Topics Basic features of C C fundamentals Basic data types Expressions Selection

More information

WhatsUp Gold v11 Features Overview

WhatsUp Gold v11 Features Overview WhatsUp Gold v11 Features Overview This guide provides an overview of the core functionality of WhatsUp Gold v11, and introduces interesting features and processes that help users maximize productivity

More information

Profiling and Tracing in Linux

Profiling and Tracing in Linux Profiling and Tracing in Linux Sameer Shende Department of Computer and Information Science University of Oregon, Eugene, OR, USA sameer@cs.uoregon.edu Abstract Profiling and tracing tools can help make

More information

A Performance Monitor based on Virtual Global Time for Clusters of PCs

A Performance Monitor based on Virtual Global Time for Clusters of PCs A Performance Monitor based on Virtual Global Time for Clusters of PCs Michela Taufer Scripps Institute & UCSD Dept. of CS San Diego, USA Thomas Stricker Cluster 2003, 12/2/2003 Hong Kong, SAR, China Lab.

More information

White Paper. How Streaming Data Analytics Enables Real-Time Decisions

White Paper. How Streaming Data Analytics Enables Real-Time Decisions White Paper How Streaming Data Analytics Enables Real-Time Decisions Contents Introduction... 1 What Is Streaming Analytics?... 1 How Does SAS Event Stream Processing Work?... 2 Overview...2 Event Stream

More information

Survey of execution monitoring tools for computer clusters

Survey of execution monitoring tools for computer clusters Survey of execution monitoring tools for computer clusters Espen S. Johnsen Otto J. Anshus John Markus Bjørndalen Lars Ailo Bongo Department of Computer Science, University of Tromsø September 29, 2003

More information

The Complete Performance Solution for Microsoft SQL Server

The Complete Performance Solution for Microsoft SQL Server The Complete Performance Solution for Microsoft SQL Server Powerful SSAS Performance Dashboard Innovative Workload and Bottleneck Profiling Capture of all Heavy MDX, XMLA and DMX Aggregation, Partition,

More information

Managing Latency in IPS Networks

Managing Latency in IPS Networks Application Note Revision B McAfee Network Security Platform Managing Latency in IPS Networks Managing Latency in IPS Networks McAfee Network Security Platform provides you with a set of pre-defined recommended

More information

MAGENTO HOSTING Progressive Server Performance Improvements

MAGENTO HOSTING Progressive Server Performance Improvements MAGENTO HOSTING Progressive Server Performance Improvements Simple Helix, LLC 4092 Memorial Parkway Ste 202 Huntsville, AL 35802 sales@simplehelix.com 1.866.963.0424 www.simplehelix.com 2 Table of Contents

More information

A Pattern-Based Approach to. Automated Application Performance Analysis

A Pattern-Based Approach to. Automated Application Performance Analysis A Pattern-Based Approach to Automated Application Performance Analysis Nikhil Bhatia, Shirley Moore, Felix Wolf, and Jack Dongarra Innovative Computing Laboratory University of Tennessee (bhatia, shirley,

More information

Search Strategies for Automatic Performance Analysis Tools

Search Strategies for Automatic Performance Analysis Tools Search Strategies for Automatic Performance Analysis Tools Michael Gerndt and Edmond Kereku Technische Universität München, Fakultät für Informatik I10, Boltzmannstr.3, 85748 Garching, Germany gerndt@in.tum.de

More information

Semester Thesis Traffic Monitoring in Sensor Networks

Semester Thesis Traffic Monitoring in Sensor Networks Semester Thesis Traffic Monitoring in Sensor Networks Raphael Schmid Departments of Computer Science and Information Technology and Electrical Engineering, ETH Zurich Summer Term 2006 Supervisors: Nicolas

More information

Monitoring.NET Framework with Verax NMS

Monitoring.NET Framework with Verax NMS Monitoring.NET Framework with Verax NMS Table of contents Abstract... 3 1. Adding.NET Framework to device inventory... 4 2. Adding sensors for.net Framework... 7 3. Adding performance counters for.net

More information

MS SQL Performance (Tuning) Best Practices:

MS SQL Performance (Tuning) Best Practices: MS SQL Performance (Tuning) Best Practices: 1. Don t share the SQL server hardware with other services If other workloads are running on the same server where SQL Server is running, memory and other hardware

More information

Chapter 3 Application Monitors

Chapter 3 Application Monitors Chapter 3 Application Monitors AppMetrics utilizes application monitors to organize data collection and analysis per application server. An application monitor is defined on the AppMetrics manager computer

More information

DNS (Domain Name System) is the system & protocol that translates domain names to IP addresses.

DNS (Domain Name System) is the system & protocol that translates domain names to IP addresses. Lab Exercise DNS Objective DNS (Domain Name System) is the system & protocol that translates domain names to IP addresses. Step 1: Analyse the supplied DNS Trace Here we examine the supplied trace of a

More information

Resource Management and Containment for Active Services

Resource Management and Containment for Active Services Resource Management and Containment for Active Services M. Ranganathan, Doug Montgomery, Kevin Mills Advanced Networking Technologies Division National Inst. Of Standards and Technology Gaithersburg, MD

More information

Spring 2011 Prof. Hyesoon Kim

Spring 2011 Prof. Hyesoon Kim Spring 2011 Prof. Hyesoon Kim Today, we will study typical patterns of parallel programming This is just one of the ways. Materials are based on a book by Timothy. Decompose Into tasks Original Problem

More information

A Survey Study on Monitoring Service for Grid

A Survey Study on Monitoring Service for Grid A Survey Study on Monitoring Service for Grid Erkang You erkyou@indiana.edu ABSTRACT Grid is a distributed system that integrates heterogeneous systems into a single transparent computer, aiming to provide

More information

Cloud Computing for Control Systems CERN Openlab Summer Student Program 9/9/2011 ARSALAAN AHMED SHAIKH

Cloud Computing for Control Systems CERN Openlab Summer Student Program 9/9/2011 ARSALAAN AHMED SHAIKH Cloud Computing for Control Systems CERN Openlab Summer Student Program 9/9/2011 ARSALAAN AHMED SHAIKH CONTENTS Introduction... 4 System Components... 4 OpenNebula Cloud Management Toolkit... 4 VMware

More information

Using Predictive Adaptive Parallelism to Address Portability and Irregularity

Using Predictive Adaptive Parallelism to Address Portability and Irregularity Using Predictive Adaptive Parallelism to Address Portability and Irregularity avid L. Wangerin and Isaac. Scherson {dwangeri,isaac}@uci.edu School of Computer Science University of California, Irvine Irvine,

More information

FDVis: the Interactive Visualization and Steering Environment for the Computational Processes Using the Finite-Difference Method

FDVis: the Interactive Visualization and Steering Environment for the Computational Processes Using the Finite-Difference Method Nonlinear Analysis: Modelling and Control, 2003, Vol. 8, No. 2, 71 82 FDVis: the Interactive Visualization and Steering Environment for the Computational Processes Using the Finite-Difference Method A.

More information

Performance Monitoring of Parallel Scientific Applications

Performance Monitoring of Parallel Scientific Applications Performance Monitoring of Parallel Scientific Applications Abstract. David Skinner National Energy Research Scientific Computing Center Lawrence Berkeley National Laboratory This paper introduces an infrastructure

More information

Real-Time Monitoring Framework for Parallel Processes

Real-Time Monitoring Framework for Parallel Processes International Journal of scientific research and management (IJSRM) Volume 3 Issue 6 Pages 3134-3138 2015 \ Website: www.ijsrm.in ISSN (e): 2321-3418 Real-Time Monitoring Framework for Parallel Processes

More information

Oracle Database In-Memory The Next Big Thing

Oracle Database In-Memory The Next Big Thing Oracle Database In-Memory The Next Big Thing Maria Colgan Master Product Manager #DBIM12c Why is Oracle do this Oracle Database In-Memory Goals Real Time Analytics Accelerate Mixed Workload OLTP No Changes

More information

Studying Code Development for High Performance Computing: The HPCS Program

Studying Code Development for High Performance Computing: The HPCS Program Studying Code Development for High Performance Computing: The HPCS Program Jeff Carver 1, Sima Asgari 1, Victor Basili 1,2, Lorin Hochstein 1, Jeffrey K. Hollingsworth 1, Forrest Shull 2, Marv Zelkowitz

More information

gprof: a Call Graph Execution Profiler 1

gprof: a Call Graph Execution Profiler 1 gprof A Call Graph Execution Profiler PSD:18-1 gprof: a Call Graph Execution Profiler 1 by Susan L. Graham Peter B. Kessler Marshall K. McKusick Computer Science Division Electrical Engineering and Computer

More information

Load Imbalance Analysis

Load Imbalance Analysis With CrayPat Load Imbalance Analysis Imbalance time is a metric based on execution time and is dependent on the type of activity: User functions Imbalance time = Maximum time Average time Synchronization

More information

THE NAS KERNEL BENCHMARK PROGRAM

THE NAS KERNEL BENCHMARK PROGRAM THE NAS KERNEL BENCHMARK PROGRAM David H. Bailey and John T. Barton Numerical Aerodynamic Simulations Systems Division NASA Ames Research Center June 13, 1986 SUMMARY A benchmark test program that measures

More information

Monitoring PostgreSQL database with Verax NMS

Monitoring PostgreSQL database with Verax NMS Monitoring PostgreSQL database with Verax NMS Table of contents Abstract... 3 1. Adding PostgreSQL database to device inventory... 4 2. Adding sensors for PostgreSQL database... 7 3. Adding performance

More information

How to Design and Create Your Own Custom Ext Rep

How to Design and Create Your Own Custom Ext Rep Combinatorial Block Designs 2009-04-15 Outline Project Intro External Representation Design Database System Deployment System Overview Conclusions 1. Since the project is a specific application in Combinatorial

More information

Enhancing the Performance of Live Migration of Virtual Machine s with WSClock Replacement Algorithm

Enhancing the Performance of Live Migration of Virtual Machine s with WSClock Replacement Algorithm Enhancing the Performance of Live Migration of Virtual Machine s with WSClock Replacement Algorithm C.Sagana M.Geetha Dr R.C.Suganthe PG student, Assistant Professor, Professor, Dept of CSE, Dept of CSE

More information

Scaling 10Gb/s Clustering at Wire-Speed

Scaling 10Gb/s Clustering at Wire-Speed Scaling 10Gb/s Clustering at Wire-Speed InfiniBand offers cost-effective wire-speed scaling with deterministic performance Mellanox Technologies Inc. 2900 Stender Way, Santa Clara, CA 95054 Tel: 408-970-3400

More information

Monitoring Infrastructure (MIS) Software Architecture Document. Version 1.1

Monitoring Infrastructure (MIS) Software Architecture Document. Version 1.1 Monitoring Infrastructure (MIS) Software Architecture Document Version 1.1 Revision History Date Version Description Author 28-9-2004 1.0 Created Peter Fennema 8-10-2004 1.1 Processed review comments Peter

More information

A Tool for Tuning Parallel Program Performance

A Tool for Tuning Parallel Program Performance Quartz: A Tool for Tuning Parallel Program Performance Thomas E. Anderson and Edward D. Lazowska Department of Computer Science and Engineering University of Washington Seattle WA 98195 September 1989

More information

A Chromium Based Viewer for CUMULVS

A Chromium Based Viewer for CUMULVS A Chromium Based Viewer for CUMULVS Submitted to PDPTA 06 Dan Bennett Corresponding Author Department of Mathematics and Computer Science Edinboro University of PA Edinboro, Pennsylvania 16444 Phone: (814)

More information

LOAD BALANCING FOR MULTIPLE PARALLEL JOBS

LOAD BALANCING FOR MULTIPLE PARALLEL JOBS European Congress on Computational Methods in Applied Sciences and Engineering ECCOMAS 2000 Barcelona, 11-14 September 2000 ECCOMAS LOAD BALANCING FOR MULTIPLE PARALLEL JOBS A. Ecer, Y. P. Chien, H.U Akay

More information

Reinforcement Learning of Task Plans for Real Robot Systems

Reinforcement Learning of Task Plans for Real Robot Systems Reinforcement Learning of Task Plans for Real Robot Systems Pedro Tomás Mendes Resende pedro.resende@ist.utl.pt Instituto Superior Técnico, Lisboa, Portugal October 2014 Abstract This paper is the extended

More information

DAG based In-Network Aggregation for Sensor Network Monitoring

DAG based In-Network Aggregation for Sensor Network Monitoring DAG based In-Network Aggregation for Sensor Network Monitoring Shinji Motegi, Kiyohito Yoshihara and Hiroki Horiuchi KDDI R&D Laboratories Inc. {motegi, yosshy, hr-horiuchi}@kddilabs.jp Abstract Wireless

More information

Chapter 5 More SQL: Complex Queries, Triggers, Views, and Schema Modification

Chapter 5 More SQL: Complex Queries, Triggers, Views, and Schema Modification Chapter 5 More SQL: Complex Queries, Triggers, Views, and Schema Modification Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 5 Outline More Complex SQL Retrieval Queries

More information

A Comparative Study on Vega-HTTP & Popular Open-source Web-servers

A Comparative Study on Vega-HTTP & Popular Open-source Web-servers A Comparative Study on Vega-HTTP & Popular Open-source Web-servers Happiest People. Happiest Customers Contents Abstract... 3 Introduction... 3 Performance Comparison... 4 Architecture... 5 Diagram...

More information

One of the database administrators

One of the database administrators THE ESSENTIAL GUIDE TO Database Monitoring By Michael Otey SPONSORED BY One of the database administrators (DBAs) most important jobs is to keep the database running smoothly, which includes quickly troubleshooting

More information

The Key Technology Research of Virtual Laboratory based On Cloud Computing Ling Zhang

The Key Technology Research of Virtual Laboratory based On Cloud Computing Ling Zhang International Conference on Advances in Mechanical Engineering and Industrial Informatics (AMEII 2015) The Key Technology Research of Virtual Laboratory based On Cloud Computing Ling Zhang Nanjing Communications

More information

Service and Resource Discovery in Smart Spaces Composed of Low Capacity Devices

Service and Resource Discovery in Smart Spaces Composed of Low Capacity Devices Service and Resource Discovery in Smart Spaces Composed of Low Capacity Devices Önder Uzun, Tanır Özçelebi, Johan Lukkien, Remi Bosman System Architecture and Networking Department of Mathematics and Computer

More information

Table of Contents INTRODUCTION... 3. Prerequisites... 3 Audience... 3 Report Metrics... 3

Table of Contents INTRODUCTION... 3. Prerequisites... 3 Audience... 3 Report Metrics... 3 Table of Contents INTRODUCTION... 3 Prerequisites... 3 Audience... 3 Report Metrics... 3 IS MY TEST CONFIGURATION (DURATION / ITERATIONS SETTING ) APPROPRIATE?... 4 Request / Response Status Summary...

More information

Server Consolidation with SQL Server 2008

Server Consolidation with SQL Server 2008 Server Consolidation with SQL Server 2008 White Paper Published: August 2007 Updated: July 2008 Summary: Microsoft SQL Server 2008 supports multiple options for server consolidation, providing organizations

More information

Performance Monitoring and Visualization of Large-Sized and Multi- Threaded Applications with the Pajé Framework

Performance Monitoring and Visualization of Large-Sized and Multi- Threaded Applications with the Pajé Framework Performance Monitoring and Visualization of Large-Sized and Multi- Threaded Applications with the Pajé Framework Mehdi Kessis France Télécom R&D {Mehdi.kessis}@rd.francetelecom.com Jean-Marc Vincent Laboratoire

More information

5 Performance Management for Web Services. Rolf Stadler School of Electrical Engineering KTH Royal Institute of Technology. stadler@ee.kth.

5 Performance Management for Web Services. Rolf Stadler School of Electrical Engineering KTH Royal Institute of Technology. stadler@ee.kth. 5 Performance Management for Web Services Rolf Stadler School of Electrical Engineering KTH Royal Institute of Technology stadler@ee.kth.se April 2008 Overview Service Management Performance Mgt QoS Mgt

More information

IC2D: Interactive Control and Debugging of Distribution

IC2D: Interactive Control and Debugging of Distribution IC2D: Interactive Control and Debugging of Distribution Françoise Baude, Alexandre Bergel, Denis Caromel, Fabrice Huet, Olivier Nano, and Julien Vayssière INRIA Sophia Antipolis, CNRS - I3S - Univ. Nice

More information

Achieving a High-Performance Virtual Network Infrastructure with PLUMgrid IO Visor & Mellanox ConnectX -3 Pro

Achieving a High-Performance Virtual Network Infrastructure with PLUMgrid IO Visor & Mellanox ConnectX -3 Pro Achieving a High-Performance Virtual Network Infrastructure with PLUMgrid IO Visor & Mellanox ConnectX -3 Pro Whitepaper What s wrong with today s clouds? Compute and storage virtualization has enabled

More information

Taboret Management Application Builder

Taboret Management Application Builder Taboret Management Application Builder INTRODUCTION Management Application Builders allow network-knowledgeable people to build their own solutions to management problems. More important, these new tools

More information

SIMULATION OF LOAD BALANCING ALGORITHMS: A Comparative Study

SIMULATION OF LOAD BALANCING ALGORITHMS: A Comparative Study SIMULATION OF LOAD BALANCING ALGORITHMS: A Comparative Study Milan E. Soklic Abstract This article introduces a new load balancing algorithm, called diffusive load balancing, and compares its performance

More information

1 Introduction This document describes the service Performance monitoring for the GTS Virtual Hosting service.

1 Introduction This document describes the service Performance monitoring for the GTS Virtual Hosting service. 1 Introduction This document describes the service for the GTS Virtual Hosting service. 2 Description of Performance Monitoring System The Performance Monitoring System is operated on a BaseN solution

More information

Monitoring Clusters and Grids

Monitoring Clusters and Grids JENNIFER M. SCHOPF AND BEN CLIFFORD Monitoring Clusters and Grids One of the first questions anyone asks when setting up a cluster or a Grid is, How is it running? is inquiry is usually followed by the

More information

Linux Distributed Security Module 1

Linux Distributed Security Module 1 Linux Distributed Security Module 1 By Miroslaw Zakrzewski and Ibrahim Haddad This article describes the implementation of Mandatory Access Control through a Linux kernel module that is targeted for Linux

More information

Database Programming with PL/SQL: Learning Objectives

Database Programming with PL/SQL: Learning Objectives Database Programming with PL/SQL: Learning Objectives This course covers PL/SQL, a procedural language extension to SQL. Through an innovative project-based approach, students learn procedural logic constructs

More information

Monitoring MySQL database with Verax NMS

Monitoring MySQL database with Verax NMS Monitoring MySQL database with Verax NMS Table of contents Abstract... 3 1. Adding MySQL database to device inventory... 4 2. Adding sensors for MySQL database... 7 3. Adding performance counters for MySQL

More information

Performance And Scalability In Oracle9i And SQL Server 2000

Performance And Scalability In Oracle9i And SQL Server 2000 Performance And Scalability In Oracle9i And SQL Server 2000 Presented By : Phathisile Sibanda Supervisor : John Ebden 1 Presentation Overview Project Objectives Motivation -Why performance & Scalability

More information

Optimizing Your Database Performance the Easy Way

Optimizing Your Database Performance the Easy Way Optimizing Your Database Performance the Easy Way by Diane Beeler, Consulting Product Marketing Manager, BMC Software and Igy Rodriguez, Technical Product Manager, BMC Software Customers and managers of

More information

Performance Tuning Guide for ECM 2.0

Performance Tuning Guide for ECM 2.0 Performance Tuning Guide for ECM 2.0 Rev: 20 December 2012 Sitecore ECM 2.0 Performance Tuning Guide for ECM 2.0 A developer's guide to optimizing the performance of Sitecore ECM The information contained

More information

Oracle Database 10g. Page # The Self-Managing Database. Agenda. Benoit Dageville Oracle Corporation benoit.dageville@oracle.com

Oracle Database 10g. Page # The Self-Managing Database. Agenda. Benoit Dageville Oracle Corporation benoit.dageville@oracle.com Oracle Database 10g The Self-Managing Database Benoit Dageville Oracle Corporation benoit.dageville@oracle.com Agenda Oracle10g: Oracle s first generation of self-managing database Oracle s Approach to

More information

CA Insight Database Performance Monitor for DB2 for z/os

CA Insight Database Performance Monitor for DB2 for z/os PRODUCT SHEET CA Insight Database Performance Monitor for DB2 for z/os CA Insight Database Performance Monitor for DB2 for z/os CA Insight Database Performance Monitor for DB2 for z/os (CA Insight DPM)

More information

{emery,browne}@cs.utexas.edu ABSTRACT. Keywords scalable, load distribution, load balancing, work stealing

{emery,browne}@cs.utexas.edu ABSTRACT. Keywords scalable, load distribution, load balancing, work stealing Scalable Load Distribution and Load Balancing for Dynamic Parallel Programs E. Berger and J. C. Browne Department of Computer Science University of Texas at Austin Austin, Texas 78701 USA 01-512-471-{9734,9579}

More information

Trace-Based and Sample-Based Profiling in Rational Application Developer

Trace-Based and Sample-Based Profiling in Rational Application Developer Trace-Based and Sample-Based Profiling in Rational Application Developer This document is aimed at highlighting the importance of profiling in software development and talks about the profiling tools offered

More information

VMWARE WHITE PAPER 1

VMWARE WHITE PAPER 1 1 VMWARE WHITE PAPER Introduction This paper outlines the considerations that affect network throughput. The paper examines the applications deployed on top of a virtual infrastructure and discusses the

More information

Monitoring Microsoft Exchange to Improve Performance and Availability

Monitoring Microsoft Exchange to Improve Performance and Availability Focus on Value Monitoring Microsoft Exchange to Improve Performance and Availability With increasing growth in email traffic, the number and size of attachments, spam, and other factors, organizations

More information

A Review of Customized Dynamic Load Balancing for a Network of Workstations

A Review of Customized Dynamic Load Balancing for a Network of Workstations A Review of Customized Dynamic Load Balancing for a Network of Workstations Taken from work done by: Mohammed Javeed Zaki, Wei Li, Srinivasan Parthasarathy Computer Science Department, University of Rochester

More information

A Static Analyzer for Large Safety-Critical Software. Considered Programs and Semantics. Automatic Program Verification by Abstract Interpretation

A Static Analyzer for Large Safety-Critical Software. Considered Programs and Semantics. Automatic Program Verification by Abstract Interpretation PLDI 03 A Static Analyzer for Large Safety-Critical Software B. Blanchet, P. Cousot, R. Cousot, J. Feret L. Mauborgne, A. Miné, D. Monniaux,. Rival CNRS École normale supérieure École polytechnique Paris

More information

Coscheduling Techniques and Monitoring Tools for Non-Dedicated Cluster Computing. Abstract. 1 Introduction

Coscheduling Techniques and Monitoring Tools for Non-Dedicated Cluster Computing. Abstract. 1 Introduction Coscheduling Techniques and Monitoring Tools for Non-Dedicated Cluster Computing Francesc Solsona 1, Francesc Giné 1, Porfidio Hernández 2 and Emilio Luque 2 1 Departamento de Informática e Ingeniería

More information

Instrumentation Software Profiling

Instrumentation Software Profiling Instrumentation Software Profiling Software Profiling Instrumentation of a program so that data related to runtime performance (e.g execution time, memory usage) is gathered for one or more pieces of the

More information

A Comparison of General Approaches to Multiprocessor Scheduling

A Comparison of General Approaches to Multiprocessor Scheduling A Comparison of General Approaches to Multiprocessor Scheduling Jing-Chiou Liou AT&T Laboratories Middletown, NJ 0778, USA jing@jolt.mt.att.com Michael A. Palis Department of Computer Science Rutgers University

More information

A Performance Data Storage and Analysis Tool

A Performance Data Storage and Analysis Tool A Performance Data Storage and Analysis Tool Steps for Using 1. Gather Machine Data 2. Build Application 3. Execute Application 4. Load Data 5. Analyze Data 105% Faster! 72% Slower Build Application Execute

More information

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces Software Engineering, Lecture 4 Decomposition into suitable parts Cross cutting concerns Design patterns I will also give an example scenario that you are supposed to analyse and make synthesis from The

More information

PATROL From a Database Administrator s Perspective

PATROL From a Database Administrator s Perspective PATROL From a Database Administrator s Perspective September 28, 2001 Author: Cindy Bean Senior Software Consultant BMC Software, Inc. 3/4/02 2 Table of Contents Introduction 5 Database Administrator Tasks

More information

MapReduce. MapReduce and SQL Injections. CS 3200 Final Lecture. Introduction. MapReduce. Programming Model. Example

MapReduce. MapReduce and SQL Injections. CS 3200 Final Lecture. Introduction. MapReduce. Programming Model. Example MapReduce MapReduce and SQL Injections CS 3200 Final Lecture Jeffrey Dean and Sanjay Ghemawat. MapReduce: Simplified Data Processing on Large Clusters. OSDI'04: Sixth Symposium on Operating System Design

More information

ENHANCEMENTS TO SQL SERVER COLUMN STORES. Anuhya Mallempati #2610771

ENHANCEMENTS TO SQL SERVER COLUMN STORES. Anuhya Mallempati #2610771 ENHANCEMENTS TO SQL SERVER COLUMN STORES Anuhya Mallempati #2610771 CONTENTS Abstract Introduction Column store indexes Batch mode processing Other Enhancements Conclusion ABSTRACT SQL server introduced

More information