To appear in: Proceedings of Second International ICSC Symposium on Fuzzy Logic and Applications (ISFL'97), to be held

Size: px
Start display at page:

Download "To appear in: Proceedings of Second International ICSC Symposium on Fuzzy Logic and Applications (ISFL'97), to be held"

Transcription

1 To appear in: Proceedings of Second International ICSC Symposium on Fuzzy Logic and Applications (ISFL'97), to be held in Zurich, Switzerland, February 12-14, Fuzzy Control of Load{Balancing for Distributed DB/DC Transaction Processing Reinhard Riedl and Ralf Salomon Department of Computer Science, University of Zurich Winterthurerstrasse 190, 8057 Zurich, Switzerland FAX: Abstract The ecient use of distributed database/data communication (DB/DC) systems requires sophisticated management policies. A good management policy aims at minimizing the (average) response time or a high data throughput. Both goals can be achieved by a balanced load of the incoming transactions requiring for data manipulation over the processing units available. The well-known problem is that no algorithm exists that yields optimal performance for the entire bandwidth of the input. Two other problems are that such a complex real-world application cannot be modeled completely by means of analytical methods, and that the information available at runtime is rather imprecise. In this paper, we suggest a fuzzy switching device, which integrates dierent, simple load balancing algorithms and selects a particular algorithm depending on the actual system state expressed in fuzzy terms. The simple load balancing algorithms are selected on the basis of a cost function model. 1 Introduction Load distribution in distributed database/data communication environments is a very challenging task. Formal mathematical models can cover only particular aspects, since the entire system is too complex, even if one resorts to drastic simplications. Unfortunately, the load balancing problem cannot be decomposed into independent, simpler sub-problems, because the solutions of these sub-problems inuence each other with respect to achieving optimal performance. In this paper, we propose the development of a fuzzy switching device, which, depending on the actual system state expressed in fuzzy terms, selects an algorithm that solves one of the mentioned subproblems. To this end, Section 2 gives a brief overview of the distributed database/data communication environment as is investigated in the LYDIA project. Section 3 discusses dierent level, on which load balancing can be implemented. Section 4 presents the goal and outlines a strategy for solving the problem. The actual fuzzy switching device is outlined in Section 5. Finally, the paper is concluded with a discussion. 2 The distributed DB/DC Environment In this section, we briey describe the database/data communication (DB/DC) environment that is given in the LYDIA project. The hardware under consideration is a distributed system, which consists of a considerably large number of processing nodes. Each node has its own operating system, address space, main memory, and hard disk environment, which may or may not be shared among other nodes. All nodes can communicate with each other via a high speed network, which supplies the node-to-node connections. User terminals are connected via frontend systems, which allow the connection to all nodes in the distributed system. An example of a distributed DB/DC system is shown in Figure 1. The data communication system provides all basic communication functions to remote processing nodes. It treats terminal sessions as well-dened connections between terminals and applications running on arbitrarily chosen nodes of the distributed system. A terminal session is opened and closed from the terminal by suitable commands. A database in general is a huge repository for data items representing information to be maintained and to be made available on demand. Physically, 1

2 the database is stored on several disks of the distributed system. In the database-sharing mode, all disks are shared among all nodes, whereas in the shared-nothing mode, each disk is accessed by only one node. In order to reduce the data access time, the distributed DB/DC environment caches data units in node-specic main memory buers and allows the replication of data units, i.e., several copies of the same data unit may exist in dierent buers. An appropriate coherence protocol preserves the consistency of all replicated data units. The user accesses the database via a database handler, which oers essentially the four basic operations insert, delete, update, and select. From the user's perspective, transactions are the basic database operations. By denition, a transaction is a sequence of basic database operations, which transforms a consistent and integer state of the database into another consistent and integer state. A transaction implies four fundamental (ACID) requirements: atomicity, consistency, isolation, and durability. The transaction monitor provides the user with the basic functionality for the implementation of transactions, namely recovery control and concurrency control. The transaction monitor's recovery component allows for complete rollbacks of any transaction that did not succeed in physically storing all its updated data items on the disk. The transaction monitor's concurrency control component guarantees the correct interleaved or parallel execution of transactions. To handle this task, the given DB/DC environment adopts a (pessimistic) two-phase locking protocol. In any acquisition phase, CPU 1 CPU 2 CPU 3 CPU n Data Storage 1 User Terminals Data Storage n Figure 1: An example of a distributed DB/DC environment. a lock has to be acquired for each data item to be accessed by the transaction. For read-only accesses, a lock may be shared, i.e., granted to more than one transaction simultaneously; otherwise a lock must be exclusive. In the locking-release phase, a transaction releases all its acquired locks. In the following, we shall assume a pessimistic protocol that releases all locks only at the end of the execution of a transaction, since, with respect to load distribution, this case is the more general; Optimistic protocols may be embedded straightforwardly. 3 Levels of Load Distribution In a distributed DB/DC-transaction processing system, the load can be distributed on dierent levels, and the following ve, hierarchically-ordered levels can be identied: Dialog steps: a dialogue step is the time between a user input and the next terminal output. Transactions: as depicted above, a transaction is an atomic unit of work, which is processed on the base of a transaction program (TAP). Conversations: a conversation is a consecutive execution of several transaction programs with additional support and data representation from the transaction monitor. A communication buer and a conversation-specic memory forward all context data from one transaction to the next. Note that in general a conversation is not atomic, i.e., it does not have the ACID-properties. Terminal Sessions: a terminal session lasts for the duration of a connection of a terminal with a node and may enclose various conversations. Application Sessions: during a terminal session, each user of the terminal will be connected to the same transaction monitor application session, where dierent transaction programs are bound together, each of which is identied by a transaction program code (TAC). Obviously, the coarser the load granules to be distributed are, the easier the implementation of the algorithm is. For the identication of the load granules, the following two requirements are essential. First, a transaction in a multi-computer system must not be less reliable (with respect to the ACID-properties) 2

3 than a transaction in a single node system. Second, a load distribution ought to support a higher availability of the distributed system as compared with a single node system. Both requirements suggest that load distribution should be supported on the level of transactions. The choice of a ner load distribution granulation would dramatically increase the costs of implementation, as it leads to conicts with transactions dened by the monitor. The choice of a coarser load distribution granulation would demand the support of partial roll backs of these units by single transactions, which means that load distribution were implemented again on the level of transactions. The chosen level for an actual load distribution algorithm may be higher though. Indeed, in practice, it will depend on the actual workload and the system's situation. Besides the costs for processing the distribution, the main load distribution overhead is generated by the transfer costs, which depend on the amount of context data that are necessary for processing the load unit. As context data are stored in local buers, they have to be transferred from node to node in case of a distribution. The ner the workload is partitioned, the higher these costs are. In this paper, we characterize workload on the level of transactions. Thus in a natural way, there may be assigned two types of observables to each transaction, a priori observables whose knowledge may be used for load distribution, and a posteriori observables, which decide on the relative success of load distribution decisions. The a priori observables are the user identicator (UID), the terminal identicator (TID), the transaction code (TAC), the conversation identicator (CID), and the application identicator (AID). A posteriori observables are a list of pages accessed by write accesses and a list of pages accessed by readonly accesses. For the a posteriori observables, we can ignore the order of accesses, as there is little chance to exploit statistic knowledge about them, and we ignore the number of accesses to the same data object by the same transaction, as this is rather irrelevant for performance issues. Workload analysis of customer traces in the LYDIA-project [2] has provided the following results: apart from hot spots, which have to be dealt with on the level of data partitioning and data distribution, there is some considerable correlation between a priori and a posteriori observables in the customer traces analyzed. Analyses indicate that, according to these correlations, load distribution algorithms preferably perform load assignment primarily on the level of conversation instances in case of load situations similar to those used for drawing the customer traces. 4 Load Balancing The goal of load balancing to distribute the workload such that the system yields optimal performance. In distributed DB/DC systems, load balancing concentrates on the minimization of the response time as the critical performance criterion. Each load unit that is initiated by the user is routed to the node to which the terminal is connected. At that `host node', it has to be decided where the execution of the load unit is to take place. For cost reasons, we shall exclude redistribution except for server breakdowns. Moreover, in order to make the burden of the conceptual framework easier, we shall assume that every load unit can be executed at every node. Note that an appropriate data organization for supporting load balancing is not considered here, since this is an o-line problem. In a general data processing system, the response time of requests depends mainly on the actual throughput; the response time increases with increasing throughput. This phenomenon does not contradict Little's formula at all, since the number of transactions in the system is a superlinear function of the throughput. For a DB/DC system to work properly, it is necessary that the throughput is not less than the input. Thus, the throughput may be considered as an independent variable, and the response time then is considered as the dependent variable. The eectivity of load balancing may be expressed by the response-time throughput graph. Algorithms that yield the lowest response time in the whole bandwidth of throughput are considered optimal. Obviously, for a given set of load balancing algorithms, no complete ordering of the corresponding graphs exist. Instead, graphs will show crossing points as is exemplied in Figure 2. An optimal algorithm can be obtained { at least theoretically { by switching between algorithms at crossing points. In practice, the crossing points heavily depend on workload properties represented by the actual relations between a priori and a posteriori observables. Also, the crossing points dynamically vary in time. 3

4 Response time Algorithm 2 Algorithm 1 Crossing Point Throughput Figure 2: An example of two response time vs. throughput graphs for dierent load balancing algorithms Both properties make it hard to predict appropriate switching points. Related analysis of thrashing phenomena due to lock contentions, as it may already be observed in single node systems, shows that even slightest dierences of otherwise identical inputs can move thrashing borders considerably. Therefore, the only hope for detecting crossing points at runtime is the usage of heuristic dynamical control algorithms. In summary, the main objective of load balancing is the minimization of the response-time throughput graph by dynamically switching between load algorithms that yield good performance in particular sections of the bandwidth of throughput. However, even for subintervals, no simple optimizing algorithms exist, since many dierent phenomena inuence the response time as has been shown in the description of the environment and its workload presented above. 5 Fuzzy Load Balancing In order to proceed toward the development of load balancing algorithms, we adopt an approach in the spirit of classical control theory and then combine it with new design principles as have been developed in fuzzy control theory (see, for example, [6]). We shall rst identify a possible complete set of state variables and then dene a formal framework, in which design principle from fuzzy control may be used. For a more general description of how the concept of state variables can be integrated in fuzzy control, the reader is kindly referred to [6]. In the discussion presented above, we have identied the primary objective of load balancing as the minimization of response time as a function of throughput. In order to obtain a set of state variables, we now have to identify those parts of the response time that are inuenced by the node choice and can be exploited for feedback control of load distribution. As was shown in [2], these parts are the CPU processing time the data access time the costs due to lock contention the waiting time for CPU-processing the costs due to context transfer. In [2], it was also shown that, in order to deal with page access times, the introduction of a workload partition into workload classes is a conditio sine qua non, as data access times may only be reduced by the exploitation of the correlation of a priori and a posteriori observables. Relying on the results presented in [2] and [5], load distribution may be based on a cost function model. The associated cost function is to be minimized and consists of ve terms, which estimate the ve components depicted above as a function of the a priori observables. Unfortunately, these terms are partly positively correlated and partly negatively correlated. These correlations are rather dicult to assess and the order of magnitude is partly unknown. Therefore, in [5] it was suggested that for each of these terms an optimal algorithm is to be found, which minimizes it. Then, these principal algorithms are to be combined to a meta algorithm. As it was pointed out there, one way to combine algorithms is to switch between them according to the actual load state. In this paper, we suggest a fuzzy switching device that is based on design principles similar to those developed in [6]. From the above, we conclude that an appropriate choice for the state variables are functions which represent performance with respect to the various terms of the cost function. These state variables can be used to implement a fuzzy load balancing mechanism, which relies on the implicit feedback of state variables. The main dierence to [6] is that here the objective is optimal control. The state variables can be chosen in two dierent ways. Either, one denes a performance goal for each of the cost terms and measures the relative success in 4

5 achieving the desired goal as the quotient of actual and desired performance. Or, for each cost term, one denes a basic one-theme algorithm, which achieves optimal performance, and derives the state variables from the themes used for achieving the minimization. For a discussion of a transposed version of the rst approach, the reader is referred to [1]. The results given in [1] apply mutatis mutandis to some extent to our situation, because user classes may be interpreted as cost function terms. The second approach relies on the identication of optimal algorithms for individual cost terms, and has been investigated in [5]. Before we present the results obtained there, let us rst discuss the costs due to lock contention. Costs due to lock contention consists of waiting times for locks momentarily assigned to other transactions as well as the overhead resulting from lock misses, e.g., the costs for suspending a transaction. The control of lock contention is a wellknown problem for local scheduling in single node systems. A discussion of this problem can be found, for example, in [3]. Furthermore, industrial experience shows that costs due to lock conicts arise only if the system is already severely overloaded. In such a situation, these costs can be neglected, since the real problems are others. Therefore, we consider costs due to lock conicts as a global `local scheduling' problem. Care has to be taken that the lock conict rate stays below critical values, but this is a problem apart from the load distribution problem. In [5], the one-theme algorithms that minimize the other terms for immediate sender-initiated load distribution (and given connections between terminals and nodes) were identied as follows: JFN = `join the fastest node' for minimizing the CPU processing times JMAN = `join the most data ane node' for minimizing data access times JSQ = `join the shortest queue' for minimizing waiting times `process at the node the terminal is connected to' for minimizing costs of contest transfer The only nontrivial algorithm from a heuristic point of view is JMAN as it relies on the concept of data anity and some specication to grasp data anities dynamically at run time. We shall not discuss these problems here, but refer to the paper mentioned above. Let us just note that the most (data) ane node for a transaction from a given workload class is that node that is expected to have the highest cache hit ratio and the lowest percentage of remote data accesses. Consequently, the state variables resulting from these four algorithms are s 1 (t):= average observed processing speed (for a unit of processing work) in the whole system observed in the recent past s 2 (t):= average observed data anity (for a transaction routing decision) in the whole system observed in the recent past s 3 (t):= current imbalance of waiting queues s 4 (t):= average observed amount of context transfer (for a transaction routing decision) in the whole system observed in the recent past. In order to formally deal with these quantities, we introduce fuzzy anity matrices for each of the four cost terms. Assume that we have got N workload classes and M nodes. Assume further that we perform immediate sender-initiated load distribution at single nodes, and some node is given. Then the aliated anity matrix A i (t) := (a(t) i;j ); i 2 f1; 2; 3; 4g at time t is an N times M matrix with N lines corresponding to the workload classes and M columns corresponding to the executing nodes. Updates of anity matrices take place only upon arrival of new load units. Of course, other formalization are equally possible. A fuzzy entry in that anity matrix is a number from the interval [0; 1], which describes the anity between the workload class and the node with respect to the cost function term i. The higher the entry is the more advisable the choice of the node is. In [5], methods for the calculation of these fuzzy entries are presented. Note that only in case of data anity, lines will differ in general. In case of waiting costs, entries may be dened as the inverses of the queue length increased by one, normalized such that the maximal entry is one. In case of data anity, a possible choice would be the normalized sum of all time points, when an according routing decision was taken, divided by the corresponding sum for all load unit entries. Another 5

6 choice, which is more appropriate for fuzzy algorithm switching, is the average cache miss ratio in the recent past at the corresponding node for the corresponding workload class. A detailed discussion of the appropriate choice is beyond the scope of this small paper. In case of processing times, the processing speed relative to the fastest node may be taken. As background load may be present, actual measurements have to provide these values dynamically at runtime. Before a routing decision is to be taken, the value of the state variable at the node may be calculated as the sum of all routing decisions exponentially weighted according to the time they took place (and possibly with appropriate normalization). More precisely, we sum up over all anity entries aliated with a routing decision, each multiplied by the exponential of the time it was taken (and possibly perform some normalization, respectively). This procedure works well for three state variables, but in case of waiting costs the state variable ought to reect the current imbalance rather than the quality of past decisions. Therefore, we dene s 3 instead as the average of all entries (or alternatively, as the average of the entries in the line aliated with the workload class under consideration). Note that an analogous denition is equally possible for s 2 : we may dene it as the quotient of the average anity for the workload class under consideration and the maximal anity for that class. Having identied the state variables, we may design the fuzzy controller relying on some implicit feedback mechanism as described in detail in [6]. There, it has been shown that independently associating one fuzzy rule set for each state variable is sucient. That is, given n state variables, one has to design n onedimensional fuzzy rule sets. Exploiting this, we introduce four fuzzy rules corresponding to the four state variables: Note that these rules correspond in a one-to-one manner to the single theme algorithms enumerated above. Note further, that contrary to the problem discussed in [6], care has to be taken when choosing the sign in the feedback procedure. We may now design various types of fuzzy controllers: fuzzy superposition of single theme algorithms according to the fuzzy fulllment of the rules above, or fuzzy algorithm switching according to the fuzzy fulllment of the rules above. The rst design approach is applicable, if the algorithms aliated with the above rules are represented by the anity matrices dened above in such a way that they always choose the node with the maximally aliated anity entry. In the second design approach, the resulting fuzzy meta algorithm makes the routing decision according to the algorithm with the maximal aliated state variable. Further performance studies of the load balancing problem are necessary in order to develop the expert knowledge, which is required for any further development of a fuzzy controller. Eventually, this knowledge may help to understand which fuzzy design is to be preferably chosen. Of course, there are alternative approaches to the identication of state variables and the consecutive fuzzy design principle for a load distribution algorithm: for example, even in case of completely distributed load distribution, the global system state as represented by the anity matrices may be considered. If average processing speeds are low, improve them. If data anity routing is prospective, choose it. If the load imbalance is high, decrease it. If context transfer is high, decrease it. The extent to which each of the rules has to be applied, i.e., the relative importance of each of the rules, is given by the value of the aliated state variable. 6 Conclusion In this paper, we have presented a principal design strategy for the design of fuzzy controllers for load balancing in a distributed DB/DC transaction processing system. The resulting algorithms are capable of explicitly dealing with the essential causes for response delays, and in a parallel manner. Due to the systematic approach taken future developments in mathematical modeling may be easily integrated. 6

7 LB 1 TAC, UID, TAP,... Fuzzy Switch Device LB 2 LB 3 LB 4 Decision Figure 3: Depending on the actual system state, the fuzzy switching device chooses the load balancing algorithm (LBx) that is expected to yield the best performance. Fourth Euromicro Workshop on Parallel and Distributed Processing, IEEE Computer Society Press, (1996). [5] Riedl R., Richter L., Born E., Delica T.: Dynamic Adaptive Load Balancing Algorithms for High Performance Processing Deliverable WP3, T3.2, ESPRIT III P8144, URL: LYDIA/year2-deliv.html (1996). [6] Salomon R., Riedl R.: How Fuzzy Control can Benet from Classical Control Theory: The Fuzzy State Controller, accepted for publication in the same proceedings (1997). Acknowledgements This work stems in part from intense discussions and joint work (of the rst author) in the LYDIA Esprit-project grant P8144, in particular with Eike Born, Thomas Delica, Werner Ehrl (all Siemens Nixdorf Information Systems AG, Munich), and Lutz Richter (Computer Systems Architecture and Software Group, University of Zurich). This work was also supported in part by a Human Capital and Mobility fellowship of the European Union, grant ER- BCHBICT Special thanks are due to Rolf Pfeifer (AI Lab, University of Zurich) for his support. References [1] Bhattacharya P., Georgiadis L., Tsoucas P., Viniotis I.: Adaptive Lexicographic Optimization in Multi-class M/G/1 queues, Mathematics of Operations Research (1992) [2] Born E., Delica T., Ehrl W., Richter L., Riedl R.: Characterization of Workload for Distributed Processing { Methodology and Guide, Deliverable WP2/T2.1 ESPRIT III P8144, URL: LYDIA/year2-deliv.html (1996). [3] Moenkberg A., Weikum G.,: Performance Evaluation of an Adaptive and Robust Load Control Method for the Avoidance of Data-Contention Thrashing, Proceedings 18th VLDB Conference, Vancouver, British Columbia, Canada, pp (1993). [4] Riedl R., Richter L.: Classication of Load Distribution Algorithms, Proceedings of the 7

(Preliminary Version 2 ) Jai-Hoon Kim Nitin H. Vaidya. Department of Computer Science. Texas A&M University. College Station, TX

(Preliminary Version 2 ) Jai-Hoon Kim Nitin H. Vaidya. Department of Computer Science. Texas A&M University. College Station, TX Towards an Adaptive Distributed Shared Memory (Preliminary Version ) Jai-Hoon Kim Nitin H. Vaidya Department of Computer Science Texas A&M University College Station, TX 77843-3 E-mail: fjhkim,vaidyag@cs.tamu.edu

More information

Algorithms Implementing Distributed Shared Memory. Michael Stumm and Songnian Zhou. University of Toronto. Toronto, Canada M5S 1A4

Algorithms Implementing Distributed Shared Memory. Michael Stumm and Songnian Zhou. University of Toronto. Toronto, Canada M5S 1A4 Algorithms Implementing Distributed Shared Memory Michael Stumm and Songnian Zhou University of Toronto Toronto, Canada M5S 1A4 Email: stumm@csri.toronto.edu Abstract A critical issue in the design of

More information

and therefore the system throughput in a distributed database system [, 1]. Vertical fragmentation further enhances the performance of database transa

and therefore the system throughput in a distributed database system [, 1]. Vertical fragmentation further enhances the performance of database transa Vertical Fragmentation and Allocation in Distributed Deductive Database Systems Seung-Jin Lim Yiu-Kai Ng Department of Computer Science Brigham Young University Provo, Utah 80, U.S.A. Email: fsjlim,ngg@cs.byu.edu

More information

CHAPTER 7 CONCLUSION AND FUTURE SCOPE

CHAPTER 7 CONCLUSION AND FUTURE SCOPE 121 CHAPTER 7 CONCLUSION AND FUTURE SCOPE This research has addressed the issues of grid scheduling, load balancing and fault tolerance for large scale computational grids. To investigate the solution

More information

A taxonomy of race. D. P. Helmbold, C. E. McDowell. September 28, University of California, Santa Cruz. Santa Cruz, CA

A taxonomy of race. D. P. Helmbold, C. E. McDowell. September 28, University of California, Santa Cruz. Santa Cruz, CA A taxonomy of race conditions. D. P. Helmbold, C. E. McDowell UCSC-CRL-94-34 September 28, 1994 Board of Studies in Computer and Information Sciences University of California, Santa Cruz Santa Cruz, CA

More information

Design of Parallel Algorithms. Models of Parallel Computation

Design of Parallel Algorithms. Models of Parallel Computation + Design of Parallel Algorithms Models of Parallel Computation + Chapter Overview: Algorithms and Concurrency n Introduction to Parallel Algorithms n Tasks and Decomposition n Processes and Mapping n Processes

More information

9.4 SOME CHARACTERISTICS OF INTEGER PROGRAMS A SAMPLE PROBLEM

9.4 SOME CHARACTERISTICS OF INTEGER PROGRAMS A SAMPLE PROBLEM 9.4 SOME CHARACTERISTICS OF INTEGER PROGRAMS A SAMPLE PROBLEM Whereas the simplex method is effective for solving linear programs, there is no single technique for solving integer programs. Instead, a

More information

Memory hierarchy. 1. Module structure. 2. Basic cache memory. J. Daniel García Sánchez (coordinator) David Expósito Singh Javier García Blas

Memory hierarchy. 1. Module structure. 2. Basic cache memory. J. Daniel García Sánchez (coordinator) David Expósito Singh Javier García Blas Memory hierarchy J. Daniel García Sánchez (coordinator) David Expósito Singh Javier García Blas Computer Architecture ARCOS Group Computer Science and Engineering Department University Carlos III of Madrid

More information

T ransaction Management 4/23/2018 1

T ransaction Management 4/23/2018 1 T ransaction Management 4/23/2018 1 Air-line Reservation 10 available seats vs 15 travel agents. How do you design a robust and fair reservation system? Do not enough resources Fair policy to every body

More information

Network. Department of Statistics. University of California, Berkeley. January, Abstract

Network. Department of Statistics. University of California, Berkeley. January, Abstract Parallelizing CART Using a Workstation Network Phil Spector Leo Breiman Department of Statistics University of California, Berkeley January, 1995 Abstract The CART (Classication and Regression Trees) program,

More information

UNIT-IV TRANSACTION PROCESSING CONCEPTS

UNIT-IV TRANSACTION PROCESSING CONCEPTS 1 Transaction UNIT-IV TRANSACTION PROCESSING CONCEPTS A Transaction refers to a logical unit of work in DBMS, which comprises a set of DML statements that are to be executed atomically (indivisibly). Commit

More information

CHAPTER 4 AN INTEGRATED APPROACH OF PERFORMANCE PREDICTION ON NETWORKS OF WORKSTATIONS. Xiaodong Zhang and Yongsheng Song

CHAPTER 4 AN INTEGRATED APPROACH OF PERFORMANCE PREDICTION ON NETWORKS OF WORKSTATIONS. Xiaodong Zhang and Yongsheng Song CHAPTER 4 AN INTEGRATED APPROACH OF PERFORMANCE PREDICTION ON NETWORKS OF WORKSTATIONS Xiaodong Zhang and Yongsheng Song 1. INTRODUCTION Networks of Workstations (NOW) have become important distributed

More information

Exploiting a database to predict the in-flight stability of the F-16

Exploiting a database to predict the in-flight stability of the F-16 Exploiting a database to predict the in-flight stability of the F-16 David Amsallem and Julien Cortial December 12, 2008 1 Introduction Among the critical phenomena that have to be taken into account when

More information

second_language research_teaching sla vivian_cook language_department idl

second_language research_teaching sla vivian_cook language_department idl Using Implicit Relevance Feedback in a Web Search Assistant Maria Fasli and Udo Kruschwitz Department of Computer Science, University of Essex, Wivenhoe Park, Colchester, CO4 3SQ, United Kingdom fmfasli

More information

Egemen Tanin, Tahsin M. Kurc, Cevdet Aykanat, Bulent Ozguc. Abstract. Direct Volume Rendering (DVR) is a powerful technique for

Egemen Tanin, Tahsin M. Kurc, Cevdet Aykanat, Bulent Ozguc. Abstract. Direct Volume Rendering (DVR) is a powerful technique for Comparison of Two Image-Space Subdivision Algorithms for Direct Volume Rendering on Distributed-Memory Multicomputers Egemen Tanin, Tahsin M. Kurc, Cevdet Aykanat, Bulent Ozguc Dept. of Computer Eng. and

More information

The problem of minimizing the elimination tree height for general graphs is N P-hard. However, there exist classes of graphs for which the problem can

The problem of minimizing the elimination tree height for general graphs is N P-hard. However, there exist classes of graphs for which the problem can A Simple Cubic Algorithm for Computing Minimum Height Elimination Trees for Interval Graphs Bengt Aspvall, Pinar Heggernes, Jan Arne Telle Department of Informatics, University of Bergen N{5020 Bergen,

More information

Real-Time Scalability of Nested Spin Locks. Hiroaki Takada and Ken Sakamura. Faculty of Science, University of Tokyo

Real-Time Scalability of Nested Spin Locks. Hiroaki Takada and Ken Sakamura. Faculty of Science, University of Tokyo Real-Time Scalability of Nested Spin Locks Hiroaki Takada and Ken Sakamura Department of Information Science, Faculty of Science, University of Tokyo 7-3-1, Hongo, Bunkyo-ku, Tokyo 113, Japan Abstract

More information

TRANSACTION PROCESSING CONCEPTS

TRANSACTION PROCESSING CONCEPTS 1 Transaction CHAPTER 9 TRANSACTION PROCESSING CONCEPTS A Transaction refers to a logical unit of work in DBMS, which comprises a set of DML statements that are to be executed atomically (indivisibly).

More information

Graph Theory for Modelling a Survey Questionnaire Pierpaolo Massoli, ISTAT via Adolfo Ravà 150, Roma, Italy

Graph Theory for Modelling a Survey Questionnaire Pierpaolo Massoli, ISTAT via Adolfo Ravà 150, Roma, Italy Graph Theory for Modelling a Survey Questionnaire Pierpaolo Massoli, ISTAT via Adolfo Ravà 150, 00142 Roma, Italy e-mail: pimassol@istat.it 1. Introduction Questions can be usually asked following specific

More information

Henning Koch. Dept. of Computer Science. University of Darmstadt. Alexanderstr. 10. D Darmstadt. Germany. Keywords:

Henning Koch. Dept. of Computer Science. University of Darmstadt. Alexanderstr. 10. D Darmstadt. Germany. Keywords: Embedding Protocols for Scalable Replication Management 1 Henning Koch Dept. of Computer Science University of Darmstadt Alexanderstr. 10 D-64283 Darmstadt Germany koch@isa.informatik.th-darmstadt.de Keywords:

More information

Lecture 9 - Matrix Multiplication Equivalences and Spectral Graph Theory 1

Lecture 9 - Matrix Multiplication Equivalences and Spectral Graph Theory 1 CME 305: Discrete Mathematics and Algorithms Instructor: Professor Aaron Sidford (sidford@stanfordedu) February 6, 2018 Lecture 9 - Matrix Multiplication Equivalences and Spectral Graph Theory 1 In the

More information

Deadlocks. Prepared By: Kaushik Vaghani

Deadlocks. Prepared By: Kaushik Vaghani Deadlocks Prepared By : Kaushik Vaghani Outline System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection & Recovery The Deadlock Problem

More information

Transaction Processing: Concurrency Control ACID. Transaction in SQL. CPS 216 Advanced Database Systems. (Implicit beginning of transaction)

Transaction Processing: Concurrency Control ACID. Transaction in SQL. CPS 216 Advanced Database Systems. (Implicit beginning of transaction) Transaction Processing: Concurrency Control CPS 216 Advanced Database Systems ACID Atomicity Transactions are either done or not done They are never left partially executed Consistency Transactions should

More information

What is the role of teletraffic engineering in broadband networks? *

What is the role of teletraffic engineering in broadband networks? * OpenStax-CNX module: m13376 1 What is the role of teletraffic engineering in broadband networks? * Jones Kalunga This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution

More information

Thunks (continued) Olivier Danvy, John Hatcli. Department of Computing and Information Sciences. Kansas State University. Manhattan, Kansas 66506, USA

Thunks (continued) Olivier Danvy, John Hatcli. Department of Computing and Information Sciences. Kansas State University. Manhattan, Kansas 66506, USA Thunks (continued) Olivier Danvy, John Hatcli Department of Computing and Information Sciences Kansas State University Manhattan, Kansas 66506, USA e-mail: (danvy, hatcli)@cis.ksu.edu Abstract: Call-by-name

More information

PROJECTION MODELING SIMPLIFICATION MARKER EXTRACTION DECISION. Image #k Partition #k

PROJECTION MODELING SIMPLIFICATION MARKER EXTRACTION DECISION. Image #k Partition #k TEMPORAL STABILITY IN SEQUENCE SEGMENTATION USING THE WATERSHED ALGORITHM FERRAN MARQU ES Dept. of Signal Theory and Communications Universitat Politecnica de Catalunya Campus Nord - Modulo D5 C/ Gran

More information

Ch 4 : CPU scheduling

Ch 4 : CPU scheduling Ch 4 : CPU scheduling It's the basis of multiprogramming operating systems. By switching the CPU among processes, the operating system can make the computer more productive In a single-processor system,

More information

Main Points of the Computer Organization and System Software Module

Main Points of the Computer Organization and System Software Module Main Points of the Computer Organization and System Software Module You can find below the topics we have covered during the COSS module. Reading the relevant parts of the textbooks is essential for a

More information

Routing and Ad-hoc Retrieval with the. Nikolaus Walczuch, Norbert Fuhr, Michael Pollmann, Birgit Sievers. University of Dortmund, Germany.

Routing and Ad-hoc Retrieval with the. Nikolaus Walczuch, Norbert Fuhr, Michael Pollmann, Birgit Sievers. University of Dortmund, Germany. Routing and Ad-hoc Retrieval with the TREC-3 Collection in a Distributed Loosely Federated Environment Nikolaus Walczuch, Norbert Fuhr, Michael Pollmann, Birgit Sievers University of Dortmund, Germany

More information

) Intel)(TX)memory):) Transac'onal) Synchroniza'on) Extensions)(TSX))) Transac'ons)

) Intel)(TX)memory):) Transac'onal) Synchroniza'on) Extensions)(TSX))) Transac'ons) ) Intel)(TX)memory):) Transac'onal) Synchroniza'on) Extensions)(TSX))) Transac'ons) Goal A Distributed Transaction We want a transaction that involves multiple nodes Review of transactions and their properties

More information

General Objectives: To understand the process management in operating system. Specific Objectives: At the end of the unit you should be able to:

General Objectives: To understand the process management in operating system. Specific Objectives: At the end of the unit you should be able to: F2007/Unit5/1 UNIT 5 OBJECTIVES General Objectives: To understand the process management in operating system Specific Objectives: At the end of the unit you should be able to: define program, process and

More information

Distributed minimum spanning tree problem

Distributed minimum spanning tree problem Distributed minimum spanning tree problem Juho-Kustaa Kangas 24th November 2012 Abstract Given a connected weighted undirected graph, the minimum spanning tree problem asks for a spanning subtree with

More information

RTC: Language Support for Real-Time Concurrency

RTC: Language Support for Real-Time Concurrency RTC: Language Support for Real-Time Concurrency Insup Lee, Susan Davidson, and Victor Wolfe 1 Introduction The RTC (Real-Time Concurrency) programming concepts and language constructs for expressing timing

More information

Computer Technology Institute. Patras, Greece. In this paper we present a user{friendly framework and a

Computer Technology Institute. Patras, Greece. In this paper we present a user{friendly framework and a MEASURING SOFTWARE COMPLEXITY USING SOFTWARE METRICS 1 2 Xenos M., Tsalidis C., Christodoulakis D. Computer Technology Institute Patras, Greece In this paper we present a user{friendly framework and a

More information

Start of Lecture: February 10, Chapter 6: Scheduling

Start of Lecture: February 10, Chapter 6: Scheduling Start of Lecture: February 10, 2014 1 Reminders Exercise 2 due this Wednesday before class Any questions or comments? 2 Scheduling so far First-Come-First Serve FIFO scheduling in queue without preempting

More information

Database Management System Prof. D. Janakiram Department of Computer Science & Engineering Indian Institute of Technology, Madras Lecture No.

Database Management System Prof. D. Janakiram Department of Computer Science & Engineering Indian Institute of Technology, Madras Lecture No. Database Management System Prof. D. Janakiram Department of Computer Science & Engineering Indian Institute of Technology, Madras Lecture No. # 20 Concurrency Control Part -1 Foundations for concurrency

More information

Telecommunication and Informatics University of North Carolina, Technical University of Gdansk Charlotte, NC 28223, USA

Telecommunication and Informatics University of North Carolina, Technical University of Gdansk Charlotte, NC 28223, USA A Decoder-based Evolutionary Algorithm for Constrained Parameter Optimization Problems S lawomir Kozie l 1 and Zbigniew Michalewicz 2 1 Department of Electronics, 2 Department of Computer Science, Telecommunication

More information

FCM 710: Architecture of Secure Operating Systems

FCM 710: Architecture of Secure Operating Systems FCM 710: Architecture of Secure Operating Systems Practice Exam, Spring 2010 Email your answer to ssengupta@jjay.cuny.edu March 16, 2010 Instructor: Shamik Sengupta Multiple-Choice 1. operating systems

More information

DB2 Lecture 10 Concurrency Control

DB2 Lecture 10 Concurrency Control DB2 Lecture 10 Control Jacob Aae Mikkelsen November 28, 2012 1 / 71 Jacob Aae Mikkelsen DB2 Lecture 10 Control ACID Properties Properly implemented transactions are commonly said to meet the ACID test,

More information

On the Relationships between Zero Forcing Numbers and Certain Graph Coverings

On the Relationships between Zero Forcing Numbers and Certain Graph Coverings On the Relationships between Zero Forcing Numbers and Certain Graph Coverings Fatemeh Alinaghipour Taklimi, Shaun Fallat 1,, Karen Meagher 2 Department of Mathematics and Statistics, University of Regina,

More information

The Deadlock Problem (1)

The Deadlock Problem (1) Deadlocks The Deadlock Problem (1) A set of blocked processes each holding a resource and waiting to acquire a resource held by another process in the set. Example System has 2 disk drives. P 1 and P 2

More information

Tilings of the Euclidean plane

Tilings of the Euclidean plane Tilings of the Euclidean plane Yan Der, Robin, Cécile January 9, 2017 Abstract This document gives a quick overview of a eld of mathematics which lies in the intersection of geometry and algebra : tilings.

More information

Performance Extrapolation for Load Testing Results of Mixture of Applications

Performance Extrapolation for Load Testing Results of Mixture of Applications Performance Extrapolation for Load Testing Results of Mixture of Applications Subhasri Duttagupta, Manoj Nambiar Tata Innovation Labs, Performance Engineering Research Center Tata Consulting Services Mumbai,

More information

CS370 Operating Systems Midterm Review

CS370 Operating Systems Midterm Review CS370 Operating Systems Midterm Review Yashwant K Malaiya Fall 2015 Slides based on Text by Silberschatz, Galvin, Gagne 1 1 What is an Operating System? An OS is a program that acts an intermediary between

More information

From Static to Dynamic Routing: Efficient Transformations of Store-and-Forward Protocols

From Static to Dynamic Routing: Efficient Transformations of Store-and-Forward Protocols SIAM Journal on Computing to appear From Static to Dynamic Routing: Efficient Transformations of StoreandForward Protocols Christian Scheideler Berthold Vöcking Abstract We investigate how static storeandforward

More information

[8] that this cannot happen on the projective plane (cf. also [2]) and the results of Robertson, Seymour, and Thomas [5] on linkless embeddings of gra

[8] that this cannot happen on the projective plane (cf. also [2]) and the results of Robertson, Seymour, and Thomas [5] on linkless embeddings of gra Apex graphs with embeddings of face-width three Bojan Mohar Department of Mathematics University of Ljubljana Jadranska 19, 61111 Ljubljana Slovenia bojan.mohar@uni-lj.si Abstract Aa apex graph is a graph

More information

Valmir C. Barbosa. Programa de Engenharia de Sistemas e Computac~ao, COPPE. Caixa Postal Abstract

Valmir C. Barbosa. Programa de Engenharia de Sistemas e Computac~ao, COPPE. Caixa Postal Abstract The Interleaved Multichromatic Number of a Graph Valmir C. Barbosa Universidade Federal do Rio de Janeiro Programa de Engenharia de Sistemas e Computac~ao, COPPE Caixa Postal 685 2945-970 Rio de Janeiro

More information

Database Management System

Database Management System Database Management System Lecture 9 Transaction, Concurrency Control * Some materials adapted from R. Ramakrishnan, J. Gehrke and Shawn Bowers Basic Database Architecture Database Management System 2

More information

Multi-threaded, discrete event simulation of distributed computing systems

Multi-threaded, discrete event simulation of distributed computing systems Multi-threaded, discrete event simulation of distributed computing systems Iosif C. Legrand California Institute of Technology, Pasadena, CA, U.S.A Abstract The LHC experiments have envisaged computing

More information

Foundation of Database Transaction Processing. Copyright 2012 Pearson Education, Inc.

Foundation of Database Transaction Processing. Copyright 2012 Pearson Education, Inc. Foundation of Database Transaction Processing Copyright 2012 Pearson Education, Inc. Chapter Outline - 17.1 Introduction to Transaction Processing - 17.2 Transaction and System Concepts - 17.3 Desirable

More information

Performance Evaluation of Two New Disk Scheduling Algorithms. for Real-Time Systems. Department of Computer & Information Science

Performance Evaluation of Two New Disk Scheduling Algorithms. for Real-Time Systems. Department of Computer & Information Science Performance Evaluation of Two New Disk Scheduling Algorithms for Real-Time Systems Shenze Chen James F. Kurose John A. Stankovic Don Towsley Department of Computer & Information Science University of Massachusetts

More information

Probabilistic Worst-Case Response-Time Analysis for the Controller Area Network

Probabilistic Worst-Case Response-Time Analysis for the Controller Area Network Probabilistic Worst-Case Response-Time Analysis for the Controller Area Network Thomas Nolte, Hans Hansson, and Christer Norström Mälardalen Real-Time Research Centre Department of Computer Engineering

More information

Databases - Transactions

Databases - Transactions Databases - Transactions Gordon Royle School of Mathematics & Statistics University of Western Australia Gordon Royle (UWA) Transactions 1 / 34 ACID ACID is the one acronym universally associated with

More information

CPS352 Lecture - The Transaction Concept

CPS352 Lecture - The Transaction Concept Objectives: CPS352 Lecture - The Transaction Concept Last Revised March 3, 2017 1. To introduce the notion of a transaction and the ACID properties of a transaction 2. To introduce the notion of the state

More information

Data Partitioning. Figure 1-31: Communication Topologies. Regular Partitions

Data Partitioning. Figure 1-31: Communication Topologies. Regular Partitions Data In single-program multiple-data (SPMD) parallel programs, global data is partitioned, with a portion of the data assigned to each processing node. Issues relevant to choosing a partitioning strategy

More information

Enhancing Integrated Layer Processing using Common Case. Anticipation and Data Dependence Analysis. Extended Abstract

Enhancing Integrated Layer Processing using Common Case. Anticipation and Data Dependence Analysis. Extended Abstract Enhancing Integrated Layer Processing using Common Case Anticipation and Data Dependence Analysis Extended Abstract Philippe Oechslin Computer Networking Lab Swiss Federal Institute of Technology DI-LTI

More information

Advanced Topics UNIT 2 PERFORMANCE EVALUATIONS

Advanced Topics UNIT 2 PERFORMANCE EVALUATIONS Advanced Topics UNIT 2 PERFORMANCE EVALUATIONS Structure Page Nos. 2.0 Introduction 4 2. Objectives 5 2.2 Metrics for Performance Evaluation 5 2.2. Running Time 2.2.2 Speed Up 2.2.3 Efficiency 2.3 Factors

More information

CS352 Lecture - The Transaction Concept

CS352 Lecture - The Transaction Concept CS352 Lecture - The Transaction Concept Last Revised 11/7/06 Objectives: 1. To introduce the notion of a transaction and the ACID properties of a transaction 2. To introduce the notion of the state of

More information

What are Transactions? Transaction Management: Introduction (Chap. 16) Major Example: the web app. Concurrent Execution. Web app in execution (CS636)

What are Transactions? Transaction Management: Introduction (Chap. 16) Major Example: the web app. Concurrent Execution. Web app in execution (CS636) What are Transactions? Transaction Management: Introduction (Chap. 16) CS634 Class 14, Mar. 23, 2016 So far, we looked at individual queries; in practice, a task consists of a sequence of actions E.g.,

More information

Hyperplane Ranking in. Simple Genetic Algorithms. D. Whitley, K. Mathias, and L. Pyeatt. Department of Computer Science. Colorado State University

Hyperplane Ranking in. Simple Genetic Algorithms. D. Whitley, K. Mathias, and L. Pyeatt. Department of Computer Science. Colorado State University Hyperplane Ranking in Simple Genetic Algorithms D. Whitley, K. Mathias, and L. yeatt Department of Computer Science Colorado State University Fort Collins, Colorado 8523 USA whitley,mathiask,pyeatt@cs.colostate.edu

More information

The Improvement and Implementation of the High Concurrency Web Server Based on Nginx Baiqi Wang1, a, Jiayue Liu2,b and Zhiyi Fang 3,*

The Improvement and Implementation of the High Concurrency Web Server Based on Nginx Baiqi Wang1, a, Jiayue Liu2,b and Zhiyi Fang 3,* Computing, Performance and Communication systems (2016) 1: 1-7 Clausius Scientific Press, Canada The Improvement and Implementation of the High Concurrency Web Server Based on Nginx Baiqi Wang1, a, Jiayue

More information

APPLICATION OF THE FUZZY MIN-MAX NEURAL NETWORK CLASSIFIER TO PROBLEMS WITH CONTINUOUS AND DISCRETE ATTRIBUTES

APPLICATION OF THE FUZZY MIN-MAX NEURAL NETWORK CLASSIFIER TO PROBLEMS WITH CONTINUOUS AND DISCRETE ATTRIBUTES APPLICATION OF THE FUZZY MIN-MAX NEURAL NETWORK CLASSIFIER TO PROBLEMS WITH CONTINUOUS AND DISCRETE ATTRIBUTES A. Likas, K. Blekas and A. Stafylopatis National Technical University of Athens Department

More information

3 No-Wait Job Shops with Variable Processing Times

3 No-Wait Job Shops with Variable Processing Times 3 No-Wait Job Shops with Variable Processing Times In this chapter we assume that, on top of the classical no-wait job shop setting, we are given a set of processing times for each operation. We may select

More information

Consistent Logical Checkpointing. Nitin H. Vaidya. Texas A&M University. Phone: Fax:

Consistent Logical Checkpointing. Nitin H. Vaidya. Texas A&M University. Phone: Fax: Consistent Logical Checkpointing Nitin H. Vaidya Department of Computer Science Texas A&M University College Station, TX 77843-3112 hone: 409-845-0512 Fax: 409-847-8578 E-mail: vaidya@cs.tamu.edu Technical

More information

Course Description. Audience. Prerequisites. At Course Completion. : Course 40074A : Microsoft SQL Server 2014 for Oracle DBAs

Course Description. Audience. Prerequisites. At Course Completion. : Course 40074A : Microsoft SQL Server 2014 for Oracle DBAs Module Title Duration : Course 40074A : Microsoft SQL Server 2014 for Oracle DBAs : 4 days Course Description This four-day instructor-led course provides students with the knowledge and skills to capitalize

More information

Chapter 14 Performance and Processor Design

Chapter 14 Performance and Processor Design Chapter 14 Performance and Processor Design Outline 14.1 Introduction 14.2 Important Trends Affecting Performance Issues 14.3 Why Performance Monitoring and Evaluation are Needed 14.4 Performance Measures

More information

Transaction Management: Introduction (Chap. 16)

Transaction Management: Introduction (Chap. 16) Transaction Management: Introduction (Chap. 16) CS634 Class 14 Slides based on Database Management Systems 3 rd ed, Ramakrishnan and Gehrke What are Transactions? So far, we looked at individual queries;

More information

ECE 669 Parallel Computer Architecture

ECE 669 Parallel Computer Architecture ECE 669 Parallel Computer Architecture Lecture 9 Workload Evaluation Outline Evaluation of applications is important Simulation of sample data sets provides important information Working sets indicate

More information

ADAPTIVE AND DYNAMIC LOAD BALANCING METHODOLOGIES FOR DISTRIBUTED ENVIRONMENT

ADAPTIVE AND DYNAMIC LOAD BALANCING METHODOLOGIES FOR DISTRIBUTED ENVIRONMENT ADAPTIVE AND DYNAMIC LOAD BALANCING METHODOLOGIES FOR DISTRIBUTED ENVIRONMENT PhD Summary DOCTORATE OF PHILOSOPHY IN COMPUTER SCIENCE & ENGINEERING By Sandip Kumar Goyal (09-PhD-052) Under the Supervision

More information

Database Systems Concepts *

Database Systems Concepts * OpenStax-CNX module: m28156 1 Database Systems Concepts * Nguyen Kim Anh This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License 3.0 Abstract This module introduces

More information

A Capacity Planning Methodology for Distributed E-Commerce Applications

A Capacity Planning Methodology for Distributed E-Commerce Applications A Capacity Planning Methodology for Distributed E-Commerce Applications I. Introduction Most of today s e-commerce environments are based on distributed, multi-tiered, component-based architectures. The

More information

Enumeration of Full Graphs: Onset of the Asymptotic Region. Department of Mathematics. Massachusetts Institute of Technology. Cambridge, MA 02139

Enumeration of Full Graphs: Onset of the Asymptotic Region. Department of Mathematics. Massachusetts Institute of Technology. Cambridge, MA 02139 Enumeration of Full Graphs: Onset of the Asymptotic Region L. J. Cowen D. J. Kleitman y F. Lasaga D. E. Sussman Department of Mathematics Massachusetts Institute of Technology Cambridge, MA 02139 Abstract

More information

International Journal of Foundations of Computer Science c World Scientic Publishing Company DFT TECHNIQUES FOR SIZE ESTIMATION OF DATABASE JOIN OPERA

International Journal of Foundations of Computer Science c World Scientic Publishing Company DFT TECHNIQUES FOR SIZE ESTIMATION OF DATABASE JOIN OPERA International Journal of Foundations of Computer Science c World Scientic Publishing Company DFT TECHNIQUES FOR SIZE ESTIMATION OF DATABASE JOIN OPERATIONS KAM_IL SARAC, OMER E GEC_IO GLU, AMR EL ABBADI

More information

The Encoding Complexity of Network Coding

The Encoding Complexity of Network Coding The Encoding Complexity of Network Coding Michael Langberg Alexander Sprintson Jehoshua Bruck California Institute of Technology Email: mikel,spalex,bruck @caltech.edu Abstract In the multicast network

More information

Distributed Scheduling of Recording Tasks with Interconnected Servers

Distributed Scheduling of Recording Tasks with Interconnected Servers Distributed Scheduling of Recording Tasks with Interconnected Servers Sergios Soursos 1, George D. Stamoulis 1 and Theodoros Bozios 2 1 Department of Informatics, Athens University of Economics and Business

More information

CSc33200: Operating Systems, CS-CCNY, Fall 2003 Jinzhong Niu December 10, Review

CSc33200: Operating Systems, CS-CCNY, Fall 2003 Jinzhong Niu December 10, Review CSc33200: Operating Systems, CS-CCNY, Fall 2003 Jinzhong Niu December 10, 2003 Review 1 Overview 1.1 The definition, objectives and evolution of operating system An operating system exploits and manages

More information

Addressed Issue. P2P What are we looking at? What is Peer-to-Peer? What can databases do for P2P? What can databases do for P2P?

Addressed Issue. P2P What are we looking at? What is Peer-to-Peer? What can databases do for P2P? What can databases do for P2P? Peer-to-Peer Data Management - Part 1- Alex Coman acoman@cs.ualberta.ca Addressed Issue [1] Placement and retrieval of data [2] Server architectures for hybrid P2P [3] Improve search in pure P2P systems

More information

LOGICAL OPERATOR USAGE IN STRUCTURAL MODELLING

LOGICAL OPERATOR USAGE IN STRUCTURAL MODELLING LOGICAL OPERATOR USAGE IN STRUCTURAL MODELLING Ieva Zeltmate (a) (a) Riga Technical University, Faculty of Computer Science and Information Technology Department of System Theory and Design ieva.zeltmate@gmail.com

More information

University of Maryland. fzzj, basili, Empirical studies (Desurvire, 1994) (Jeries, Miller, USABILITY INSPECTION

University of Maryland. fzzj, basili, Empirical studies (Desurvire, 1994) (Jeries, Miller, USABILITY INSPECTION AN EMPIRICAL STUDY OF PERSPECTIVE-BASED USABILITY INSPECTION Zhijun Zhang, Victor Basili, and Ben Shneiderman Department of Computer Science University of Maryland College Park, MD 20742, USA fzzj, basili,

More information

task object task queue

task object task queue Optimizations for Parallel Computing Using Data Access Information Martin C. Rinard Department of Computer Science University of California, Santa Barbara Santa Barbara, California 9316 martin@cs.ucsb.edu

More information

Load Balancing for Problems with Good Bisectors, and Applications in Finite Element Simulations

Load Balancing for Problems with Good Bisectors, and Applications in Finite Element Simulations Load Balancing for Problems with Good Bisectors, and Applications in Finite Element Simulations Stefan Bischof, Ralf Ebner, and Thomas Erlebach Institut für Informatik Technische Universität München D-80290

More information

CSL373: Lecture 5 Deadlocks (no process runnable) + Scheduling (> 1 process runnable)

CSL373: Lecture 5 Deadlocks (no process runnable) + Scheduling (> 1 process runnable) CSL373: Lecture 5 Deadlocks (no process runnable) + Scheduling (> 1 process runnable) Past & Present Have looked at two constraints: Mutual exclusion constraint between two events is a requirement that

More information

V 1. volume. time. t 1

V 1. volume. time. t 1 On-line Trac Contract Renegotiation for Aggregated Trac R. Andreassen and M. Stoer a a Telenor AS, P.O.Box 83, 2007 Kjeller, Norway. Email: fragnar.andreassen, mechthild.stoerg@fou.telenor.no Consider

More information

Database Management Systems 2010/11

Database Management Systems 2010/11 DMS 2010/11 J. Gamper 1/30 Database Management Systems 2010/11 Chapter 6: Transactions J. Gamper Transaction Concept ACID Properties Atomicity and Durability Concurrent Execution Serializability Recoverability

More information

Mobile and Heterogeneous databases Distributed Database System Transaction Management. A.R. Hurson Computer Science Missouri Science & Technology

Mobile and Heterogeneous databases Distributed Database System Transaction Management. A.R. Hurson Computer Science Missouri Science & Technology Mobile and Heterogeneous databases Distributed Database System Transaction Management A.R. Hurson Computer Science Missouri Science & Technology 1 Distributed Database System Note, this unit will be covered

More information

Workload Characterization Techniques

Workload Characterization Techniques Workload Characterization Techniques Raj Jain Washington University in Saint Louis Saint Louis, MO 63130 Jain@cse.wustl.edu These slides are available on-line at: http://www.cse.wustl.edu/~jain/cse567-08/

More information

Modeling and Simulating Discrete Event Systems in Metropolis

Modeling and Simulating Discrete Event Systems in Metropolis Modeling and Simulating Discrete Event Systems in Metropolis Guang Yang EECS 290N Report December 15, 2004 University of California at Berkeley Berkeley, CA, 94720, USA guyang@eecs.berkeley.edu Abstract

More information

Implementation and modeling of two-phase locking concurrency control a performance study

Implementation and modeling of two-phase locking concurrency control a performance study INFSOF 4047 Information and Software Technology 42 (2000) 257 273 www.elsevier.nl/locate/infsof Implementation and modeling of two-phase locking concurrency control a performance study N.B. Al-Jumah a,

More information

CSE 120. Fall Lecture 8: Scheduling and Deadlock. Keith Marzullo

CSE 120. Fall Lecture 8: Scheduling and Deadlock. Keith Marzullo CSE 120 Principles of Operating Systems Fall 2007 Lecture 8: Scheduling and Deadlock Keith Marzullo Aministrivia Homework 2 due now Next lecture: midterm review Next Tuesday: midterm 2 Scheduling Overview

More information

Multiprocessor System. Multiprocessor Systems. Bus Based UMA. Types of Multiprocessors (MPs) Cache Consistency. Bus Based UMA. Chapter 8, 8.

Multiprocessor System. Multiprocessor Systems. Bus Based UMA. Types of Multiprocessors (MPs) Cache Consistency. Bus Based UMA. Chapter 8, 8. Multiprocessor System Multiprocessor Systems Chapter 8, 8.1 We will look at shared-memory multiprocessors More than one processor sharing the same memory A single CPU can only go so fast Use more than

More information

DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI

DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI Department of Computer Science and Engineering CS6302- DATABASE MANAGEMENT SYSTEMS Anna University 2 & 16 Mark Questions & Answers Year / Semester: II / III

More information

Introducing Network Delays in a Distributed Real- Time Transaction Processing System

Introducing Network Delays in a Distributed Real- Time Transaction Processing System Association for Information Systems AIS Electronic Library (AISeL) AMCIS 1996 Proceedings Americas Conference on Information Systems (AMCIS) 8-16-1996 Introducing Network Delays in a Distributed Real-

More information

Database Management Systems Concurrency Control

Database Management Systems Concurrency Control atabase Management Systems Concurrency Control B M G 1 BMS Architecture SQL INSTRUCTION OPTIMIZER MANAGEMENT OF ACCESS METHOS CONCURRENCY CONTROL BUFFER MANAGER RELIABILITY MANAGEMENT Index Files ata Files

More information

TRANSACTION PROPERTIES

TRANSACTION PROPERTIES Transaction Is any action that reads from and/or writes to a database. A transaction may consist of a simple SELECT statement to generate a list of table contents; it may consist of series of INSERT statements

More information

CMSC Computer Architecture Lecture 12: Multi-Core. Prof. Yanjing Li University of Chicago

CMSC Computer Architecture Lecture 12: Multi-Core. Prof. Yanjing Li University of Chicago CMSC 22200 Computer Architecture Lecture 12: Multi-Core Prof. Yanjing Li University of Chicago Administrative Stuff! Lab 4 " Due: 11:49pm, Saturday " Two late days with penalty! Exam I " Grades out on

More information

E-Companion: On Styles in Product Design: An Analysis of US. Design Patents

E-Companion: On Styles in Product Design: An Analysis of US. Design Patents E-Companion: On Styles in Product Design: An Analysis of US Design Patents 1 PART A: FORMALIZING THE DEFINITION OF STYLES A.1 Styles as categories of designs of similar form Our task involves categorizing

More information

Cache Investment Strategies. Univ. of MD Technical Report CS-TR-3803 and UMIACS-TR May Abstract

Cache Investment Strategies. Univ. of MD Technical Report CS-TR-3803 and UMIACS-TR May Abstract Cache Investment Strategies Michael J. Franklin University of Maryland franklin@cs.umd.edu Donald Kossmann University of Passau kossmann@db.fmi.uni-passau.de Univ. of MD Technical Report CS-TR-3803 and

More information

Degrees of Transaction Isolation in SQL*Cache: A Predicate-based Client-side Caching System. Oracle Corporation Palo Alto, CA

Degrees of Transaction Isolation in SQL*Cache: A Predicate-based Client-side Caching System. Oracle Corporation Palo Alto, CA Degrees of Transaction Isolation in SQL*Cache: A Predicate-based Client-side Caching System Julie Basu Arthur M. Keller Stanford University Stanford University and Computer Science Department Oracle Corporation

More information

Maximum CPU utilization obtained with multiprogramming. CPU I/O Burst Cycle Process execution consists of a cycle of CPU execution and I/O wait

Maximum CPU utilization obtained with multiprogramming. CPU I/O Burst Cycle Process execution consists of a cycle of CPU execution and I/O wait Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Thread Scheduling Operating Systems Examples Java Thread Scheduling Algorithm Evaluation CPU

More information

LP-Modelling. dr.ir. C.A.J. Hurkens Technische Universiteit Eindhoven. January 30, 2008

LP-Modelling. dr.ir. C.A.J. Hurkens Technische Universiteit Eindhoven. January 30, 2008 LP-Modelling dr.ir. C.A.J. Hurkens Technische Universiteit Eindhoven January 30, 2008 1 Linear and Integer Programming After a brief check with the backgrounds of the participants it seems that the following

More information