E) Modeling Insights: Patterns and Anti-patterns

Size: px
Start display at page:

Download "E) Modeling Insights: Patterns and Anti-patterns"

Transcription

1 Murray Woodside, July 2002 Techniques for Deriving Performance Models from Software Designs Murray Woodside Second Part Outline ) Conceptual framework and scenarios ) Layered systems and models C) uilding models from scenarios D) utomated model-building... from Use Case Maps, UML, traces E) Modeling insights: patterns and anti-patterns F) Some examples Murray Woodside, July E) Modeling Insights: Patterns and nti-patterns recurring resource-use patterns to achieve overlapping and enhance concurrency logical resources and mutual exclusion shared pool of logical resources peer-to-peer communications patterns performance pathologies associated with some patterns software bottleneck

2 Murray Woodside, July Pattern: Overlapped execution and multithreading or virtual threads Single-threaded Multi-threaded can take a second... blocks for reply request while blocked on first... server is busy while... higher capacity blocked... each thread has a long service time... long service time... in model terms, a multiserver... saturated server,... many servers, one queue lightly loaded processor Murray Woodside, July Overlapping: Multi-threading and virtual threads Multi-threading is supported in the kernel (Mach, Solaris, Linux, NT) or by user-level thread packages Virtual threads are programmed by the user save the context of the blocked operation in a data table accept another message and deal with it if it is a reply to a previous request, get out the state of the blocked operation and resume it called an asynchronous style of programming

3 Murray Woodside, July Threading: web server needs threads Net [2] 2 Web user [.005] n TCP ck Delay Server [.0] v Srvr Disks [.0] Srvr Processor the server blocks on the disk, and for the TCP transfer to complete CPU time is a small portion of the thread service time multi-threaded, it can serve many other requests thread-per-request, fixed thread pool, adaptive pool size Murray Woodside, July Overlapping through early response, or second phase service client server phase phase 2, asynchronous and parallel Idea: Give a reply as early as possible Do postponeable work after the reply, as phase 2 E. G.: Database server update operation: write to log file before returning, execute final writes later. Second-phase model may (a) place this work right after the return (approx), or (b) send an asynchronous message to a clean-up process that queues it and does it later

4 Murray Woodside, July Overlapping through asynchronous RPC a b c can execute activity b while the remote call to server is proceeding t some point must wait for the result Modeling: the entry of is defined by: Join a b c This parallel activity defines a subthread that makes a request to and blocks Murray Woodside, July Overlapping through forwarding ta sk ta sk ta skc Forwarding interaction typical of a service dispatcher a pipeline overlapped service: a second request can enter task as soon as it has forwarded to taskc is synchronous, is not message-handling pipeline, call setups

5 Murray Woodside, July Forwarding in COR lternative interaction patterns provided by an OR:. OR acts as RPC intermediary pp OR 2. OR forwards to method pp OR method method2 3. OR provides a handle (acts as name server) method method pp OR method2 method2 Murray Woodside, July Forwarding in a web-telephony system Support automated call answering by web pages speech playout is from a file encoded in a web page user enters tones; logic of decoding is also in the web page VoiceXML standard (vxmlforum.org) Call Control Web Page Interpreter Remote Web Server Web Page Cache Playout Device

6 Murray Woodside, July 2002 Pattern of logical resources: critical sections Tasks and must enter a critical section (call it CS) for some work... this shows the call to enter CS but it doesn t express the resource context effect of CS P CS Manager P not a suitable model So: Separate out the computation within CS into Shadow Tasks CS and CS to direct the call from to CS, make CS a pseudo-task with two pseudo-entries P CS CS CS P Murray Woodside, July using the critical section pattern the shadow task CS is really part of always blocked when CS runs, so separating them does not produce false concurrency it does place CS in a separate resource context... this is a general modeling pattern for separating resource contexts both and CS can make any calls to other tasks as servers SERV P CS CS CS P

7 Murray Woodside, July Logical resources: buffers a set of pplication tasks share a pool of buffers, managed by ufmgr a task needing a buffer queues until it is provided while holding the buffer, the pplications execute operations called pp uf... the same for all of them... or different pplications pplications N applications pp pp2... pplications ufmgr threads ufentry ufentry2... ufmgr pplications pp uf P pp uf pp2 uf... P2 Murray Woodside, July Models with buffered communications Source sends a message to a finite buffer pool (space for messages) if pool is full, Source blocks until there is space uffers replies at once to source, then sends in phase 2 to Destination if Destination needs to hold the buffer, it does its work in phase if it does not, it replies at once to uffers and does its work in phase 2. Source pplications uffers (0,) Destination May be several tasks or threads threads

8 Murray Woodside, July Pattern: Peer-to-peer interaction Peers are symmetrical they make blocking requests to each other potential exists for cyclic interactions to give layered behaviour: each peer has a Main part, and a Responder part that responds to requests from others simplest case: the Responder part does not make requests to other sites more complex, with cycles: a mechanism is needed to handle possible deadlock due to cycles. Murray Woodside, July Example of peer-to-peer interaction: Distributed database (Sheikh) transform a peer-to-peer relationship to reveal layered behaviour Original view Layered view User User User User pplication pplication DataManager DataManager DataManager DataManager DataStore DataStore DataStore DataStore

9 Murray Woodside, July Communications patterns overhead execution at the sender and the receiver, to make the messages and execute the protocol protocol delays for flow control network latency as a representation network bandwidth limitation Murray Woodside, July Communications Patterns (): Overhead tasks client send-request server send-reply send-request executes the protocol overhead at the sender, in both directions send-reply executes the overhead at the server, before the logical reply gets back to the client send-reply execution is lumped together and possibly misplaced in sequence, but the total work to provide the reply is right

10 Communications Patterns (2): overhead and latency client send-request Net delay INF server send-reply Murray Woodside, July net delay is included in the send, and again in the reply one latency each way Net delay INF Murray Woodside, July Communications Patterns (3):... add a bandwidth limitation to admit messages to the network client send-request Net delay INF Rate Limiter server send-reply Net delay INF Rate Limiter RL has zero first phase, second phase is T = /rate next message is admitted only after second phase is over only shown for send if the limitation is shared between the directions, the RL task may be shared too.

11 admission admission control control Net delay admission admission control control Murray Woodside, July Communications Patterns (4):... add layered flow control W threads for window tokens client INF send-request n packets W threads server send-reply m packets all packets must complete their admission and latency before logical delivery of the request to the server INF Net delay Murray Woodside, July nti-pattern: software bottleneck potential bottleneck pattern wherever there are multiple clients and multiple servers software bottleneck must be observed via utilizations (saturated at S and above, not saturated below) S is saturated because it is blocked on other servers cure is multiplicity (e.g. multiple threads, partitioned subsystems), reducing the blocking times multiple requesters Processor Server S multiple lower servers unsaturated (saturated) Hourglass pattern of tasks

12 Murray Woodside, July Examples of software bottlenecks in general, due to serialization at the bottleneck single threaded web server routing table single exclusive lock on an entire data base small buffer pool small flow control window Murray Woodside, July Multiplicity to cure a software bottleneck server level multithread a server replicated servers (this adds processing and network resources too) data level partition the data and lock each partition separately (locks on objects or pages) copies of the entire data service (distributed replicas of a routing table) subsystem level: partition a system and manage each part separately

13 Murray Woodside, July Reduced delay to cure a software bottleneck batched requests across a network of long latency avoid retrieval across a network of long latency cache data prefetch move functions out of this server (minimize the critical section) use worker threads or parallel operations or fetches Murray Woodside, July F) Experience in building and using models Examples: web integration with telephony router software and hardware web-based application Concerns: accuracy modeling power interpretation

14 Murray Woodside, July Example: WebTalk (web server+telephony) Support automated call answering by web pages speech playout is from a file encoded in a web page user enters tones; logic of decoding is also in the web page VoiceXML standard (vxmlforum.org) User scenario for one interaction. DTMF (tone) or begin call event 2. playout begins and continues 3. user listens and enters next DTMF event 4. next playout OR forward the call WIT 2 LISTEN/THINK 3 STOP PLYOUT Web-based telephone dialogue: Scenario over system components Murray Woodside, July Call Control Web Page Interpreter Remote Web Server Web Page Cache Playout Device

15 Murray Woodside, July

Key Components of WAN Optimization Controller Functionality

Key Components of WAN Optimization Controller Functionality Key Components of WAN Optimization Controller Functionality Introduction and Goals One of the key challenges facing IT organizations relative to application and service delivery is ensuring that the applications

More information

A distributed system is defined as

A distributed system is defined as A distributed system is defined as A collection of independent computers that appears to its users as a single coherent system CS550: Advanced Operating Systems 2 Resource sharing Openness Concurrency

More information

Client/Server and Distributed Computing

Client/Server and Distributed Computing Adapted from:operating Systems: Internals and Design Principles, 6/E William Stallings CS571 Fall 2010 Client/Server and Distributed Computing Dave Bremer Otago Polytechnic, N.Z. 2008, Prentice Hall Traditional

More information

4. provide(s) an interface to the services provided by an operating system. A) Shared memory B) System calls C) Simulators D) Communication Ans: B

4. provide(s) an interface to the services provided by an operating system. A) Shared memory B) System calls C) Simulators D) Communication Ans: B 1. A(n) is the unit of work in a system. A) process B) operating system C) timer D) mode bit 2. A message-passing model is. A) easier to implement than a shared memory model for intercomputer communication

More information

Lecture Overview. Multiple Processors. Multiple processors. Continuous need for faster computers

Lecture Overview. Multiple Processors. Multiple processors. Continuous need for faster computers Lecture Overview Multiple processors Multiprocessors UMA versus NUMA Hardware configurations OS configurations Process scheduling Multicomputers Interconnection configurations Network interface User-level

More information

Network Attached Storage. Jinfeng Yang Oct/19/2015

Network Attached Storage. Jinfeng Yang Oct/19/2015 Network Attached Storage Jinfeng Yang Oct/19/2015 Outline Part A 1. What is the Network Attached Storage (NAS)? 2. What are the applications of NAS? 3. The benefits of NAS. 4. NAS s performance (Reliability

More information

Distributed Systems: Concepts and Design

Distributed Systems: Concepts and Design Distributed Systems: Concepts and Design Edition 3 By George Coulouris, Jean Dollimore and Tim Kindberg Addison-Wesley, Pearson Education 2001. Chapter 2 Exercise Solutions 2.1 Describe and illustrate

More information

ELEC 377 Operating Systems. Thomas R. Dean

ELEC 377 Operating Systems. Thomas R. Dean ELEC 377 Operating Systems Thomas R. Dean Instructor Tom Dean Office:! WLH 421 Email:! tom.dean@queensu.ca Hours:! Wed 14:30 16:00 (Tentative)! and by appointment! 6 years industrial experience ECE Rep

More information

MEASURING WORKLOAD PERFORMANCE IS THE INFRASTRUCTURE A PROBLEM?

MEASURING WORKLOAD PERFORMANCE IS THE INFRASTRUCTURE A PROBLEM? MEASURING WORKLOAD PERFORMANCE IS THE INFRASTRUCTURE A PROBLEM? Ashutosh Shinde Performance Architect ashutosh_shinde@hotmail.com Validating if the workload generated by the load generating tools is applied

More information

Networking 1 / 43. Networking

Networking 1 / 43. Networking and Operating Systems Kinds of The Stack Protocol Suites Connection-Oriented or Connectionless? Mux/Demux Layers Application Access Example: tcpdump at Link Layer Example: DHCP Example: OSPF Example: ping

More information

Windows8 Internals, Sixth Edition, Part 1

Windows8 Internals, Sixth Edition, Part 1 Microsoft Windows8 Internals, Sixth Edition, Part 1 Mark Russinovich David A. Solomon Alex lonescu Windows Internals, Sixth Edition, Part i Introduction xvii Chapter 1 Concepts and Tools 1 Windows Operating

More information

Lesson Objectives. To provide a grand tour of the major operating systems components To provide coverage of basic computer system organization

Lesson Objectives. To provide a grand tour of the major operating systems components To provide coverage of basic computer system organization Lesson Objectives To provide a grand tour of the major operating systems components To provide coverage of basic computer system organization AE3B33OSD Lesson 1 / Page 2 What is an Operating System? A

More information

ISO OSI Reference Model for Layers. Mapping Layers onto Routers and Hosts. Encapsulation. OSI Model Concepts. Layering: Internet

ISO OSI Reference Model for Layers. Mapping Layers onto Routers and Hosts. Encapsulation. OSI Model Concepts. Layering: Internet ISO OSI Reference Model for Layers CS 194: Distributed Systems Communication Protocols, RPC Computer Science Division Department of Electrical Engineering and Computer Sciences University of California,

More information

Chapter 18: Database System Architectures. Centralized Systems

Chapter 18: Database System Architectures. Centralized Systems Chapter 18: Database System Architectures! Centralized Systems! Client--Server Systems! Parallel Systems! Distributed Systems! Network Types 18.1 Centralized Systems! Run on a single computer system and

More information

Solving complex performance problems in TCP/IP and SNA environments.

Solving complex performance problems in TCP/IP and SNA environments. IBM Global Services Solving complex performance problems in TCP/IP and SNA environments. Key Topics Discusses how performance analysis of networks relates to key issues in today's business environment

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

Chapter 2 Operating System Overview

Chapter 2 Operating System Overview Operating Systems: Internals and Design Principles, 6/E William Stallings Chapter 2 Operating System Overview Dave Bremer Otago Polytechnic, N.Z. 2008, Prentice Hall Roadmap Operating System Objectives/Functions

More information

TRACE PERFORMANCE TESTING APPROACH. Overview. Approach. Flow. Attributes

TRACE PERFORMANCE TESTING APPROACH. Overview. Approach. Flow. Attributes TRACE PERFORMANCE TESTING APPROACH Overview Approach Flow Attributes INTRODUCTION Software Testing Testing is not just finding out the defects. Testing is not just seeing the requirements are satisfied.

More information

Layered Dependability Modeling of an Air Traffic Control System

Layered Dependability Modeling of an Air Traffic Control System Layered Dependability Modeling of an Air Traffic Control System Olivia Das, C. Murray Woodside Dept. of Systems and Computer Engineering, Carleton University, Ottawa, Canada email: odas@sce.carleton.ca,

More information

SAN Conceptual and Design Basics

SAN Conceptual and Design Basics TECHNICAL NOTE VMware Infrastructure 3 SAN Conceptual and Design Basics VMware ESX Server can be used in conjunction with a SAN (storage area network), a specialized high speed network that connects computer

More information

Performance Counters. Microsoft SQL. Technical Data Sheet. Overview:

Performance Counters. Microsoft SQL. Technical Data Sheet. Overview: Performance Counters Technical Data Sheet Microsoft SQL Overview: Key Features and Benefits: Key Definitions: Performance counters are used by the Operations Management Architecture (OMA) to collect data

More information

Web Server Architectures

Web Server Architectures Web Server Architectures CS 4244: Internet Programming Dr. Eli Tilevich Based on Flash: An Efficient and Portable Web Server, Vivek S. Pai, Peter Druschel, and Willy Zwaenepoel, 1999 Annual Usenix Technical

More information

Network File System (NFS) Pradipta De pradipta.de@sunykorea.ac.kr

Network File System (NFS) Pradipta De pradipta.de@sunykorea.ac.kr Network File System (NFS) Pradipta De pradipta.de@sunykorea.ac.kr Today s Topic Network File System Type of Distributed file system NFS protocol NFS cache consistency issue CSE506: Ext Filesystem 2 NFS

More information

SQL Server 2012 Optimization, Performance Tuning and Troubleshooting

SQL Server 2012 Optimization, Performance Tuning and Troubleshooting 1 SQL Server 2012 Optimization, Performance Tuning and Troubleshooting 5 Days (SQ-OPT2012-301-EN) Description During this five-day intensive course, students will learn the internal architecture of SQL

More information

ANALYSIS OF GRID COMPUTING AS IT APPLIES TO HIGH VOLUME DOCUMENT PROCESSING AND OCR

ANALYSIS OF GRID COMPUTING AS IT APPLIES TO HIGH VOLUME DOCUMENT PROCESSING AND OCR ANALYSIS OF GRID COMPUTING AS IT APPLIES TO HIGH VOLUME DOCUMENT PROCESSING AND OCR By: Dmitri Ilkaev, Stephen Pearson Abstract: In this paper we analyze the concept of grid programming as it applies to

More information

Centralized Systems. A Centralized Computer System. Chapter 18: Database System Architectures

Centralized Systems. A Centralized Computer System. Chapter 18: Database System Architectures Chapter 18: Database System Architectures Centralized Systems! Centralized Systems! Client--Server Systems! Parallel Systems! Distributed Systems! Network Types! Run on a single computer system and do

More information

Appendix A Core Concepts in SQL Server High Availability and Replication

Appendix A Core Concepts in SQL Server High Availability and Replication Appendix A Core Concepts in SQL Server High Availability and Replication Appendix Overview Core Concepts in High Availability Core Concepts in Replication 1 Lesson 1: Core Concepts in High Availability

More information

VirtualCenter Database Performance for Microsoft SQL Server 2005 VirtualCenter 2.5

VirtualCenter Database Performance for Microsoft SQL Server 2005 VirtualCenter 2.5 Performance Study VirtualCenter Database Performance for Microsoft SQL Server 2005 VirtualCenter 2.5 VMware VirtualCenter uses a database to store metadata on the state of a VMware Infrastructure environment.

More information

Performance Monitoring AlwaysOn Availability Groups. Anthony E. Nocentino aen@centinosystems.com

Performance Monitoring AlwaysOn Availability Groups. Anthony E. Nocentino aen@centinosystems.com Performance Monitoring AlwaysOn Availability Groups Anthony E. Nocentino aen@centinosystems.com Anthony E. Nocentino Consultant and Trainer Founder and President of Centino Systems Specialize in system

More information

Software Life-Cycle Management

Software Life-Cycle Management Ingo Arnold Department Computer Science University of Basel Theory Software Life-Cycle Management Architecture Styles Overview An Architecture Style expresses a fundamental structural organization schema

More information

Chapter 11 I/O Management and Disk Scheduling

Chapter 11 I/O Management and Disk Scheduling Operating Systems: Internals and Design Principles, 6/E William Stallings Chapter 11 I/O Management and Disk Scheduling Dave Bremer Otago Polytechnic, NZ 2008, Prentice Hall I/O Devices Roadmap Organization

More information

CHAPTER 1: OPERATING SYSTEM FUNDAMENTALS

CHAPTER 1: OPERATING SYSTEM FUNDAMENTALS CHAPTER 1: OPERATING SYSTEM FUNDAMENTALS What is an operating? A collection of software modules to assist programmers in enhancing efficiency, flexibility, and robustness An Extended Machine from the users

More information

GOJAN SCHOOL OF BUSINESS AND TECHNOLOGY DEPARTMENT OF INFORMATION TECHNOLOGY CS2411-OPERATING SYSTEM QUESTION BANK UNIT-I (PROCESSES AND THREADS)

GOJAN SCHOOL OF BUSINESS AND TECHNOLOGY DEPARTMENT OF INFORMATION TECHNOLOGY CS2411-OPERATING SYSTEM QUESTION BANK UNIT-I (PROCESSES AND THREADS) GOJAN SCHOOL OF BUSINESS AND TECHNOLOGY DEPARTMENT OF INFORMATION TECHNOLOGY CS2411-OPERATING SYSTEM QUESTION BANK UNIT-I (PROCESSES AND THREADS) 1. What is an Operating system? What are the various OS

More information

CS423 Spring 2015 MP4: Dynamic Load Balancer Due April 27 th at 9:00 am 2015

CS423 Spring 2015 MP4: Dynamic Load Balancer Due April 27 th at 9:00 am 2015 CS423 Spring 2015 MP4: Dynamic Load Balancer Due April 27 th at 9:00 am 2015 1. Goals and Overview 1. In this MP you will design a Dynamic Load Balancer architecture for a Distributed System 2. You will

More information

ScienceDirect. An Educational HTTP Proxy Server

ScienceDirect. An Educational HTTP Proxy Server Available online at www.sciencedirect.com ScienceDirect Procedia Engineering 69 (2014 ) 128 132 24th DAAAM International Symposium on Intelligent Manufacturing and Automation, 2013 An Educational HTTP

More information

Chapter 17: Database System Architectures

Chapter 17: Database System Architectures Chapter 17: Database System Architectures Database System Concepts, 6 th Ed. See www.db-book.com for conditions on re-use Chapter 17: Database System Architectures Centralized and Client-Server Systems

More information

Data Integrator Performance Optimization Guide

Data Integrator Performance Optimization Guide Data Integrator Performance Optimization Guide Data Integrator 11.7.2 for Windows and UNIX Patents Trademarks Copyright Third-party contributors Business Objects owns the following

More information

Introduction to Networking S Y STEMS

Introduction to Networking S Y STEMS Introduction to Networking CS 40: INTRODUCTION TO U NIX A ND L I NUX O P E R AT ING S Y STEMS Objectives Introduce networking, including what it is and what it contains, which includes: Networking layers

More information

Intel DPDK Boosts Server Appliance Performance White Paper

Intel DPDK Boosts Server Appliance Performance White Paper Intel DPDK Boosts Server Appliance Performance Intel DPDK Boosts Server Appliance Performance Introduction As network speeds increase to 40G and above, both in the enterprise and data center, the bottlenecks

More information

Agenda. Enterprise Application Performance Factors. Current form of Enterprise Applications. Factors to Application Performance.

Agenda. Enterprise Application Performance Factors. Current form of Enterprise Applications. Factors to Application Performance. Agenda Enterprise Performance Factors Overall Enterprise Performance Factors Best Practice for generic Enterprise Best Practice for 3-tiers Enterprise Hardware Load Balancer Basic Unix Tuning Performance

More information

Remote Copy Technology of ETERNUS6000 and ETERNUS3000 Disk Arrays

Remote Copy Technology of ETERNUS6000 and ETERNUS3000 Disk Arrays Remote Copy Technology of ETERNUS6000 and ETERNUS3000 Disk Arrays V Tsutomu Akasaka (Manuscript received July 5, 2005) This paper gives an overview of a storage-system remote copy function and the implementation

More information

High Performance Data-Transfers in Grid Environment using GridFTP over InfiniBand

High Performance Data-Transfers in Grid Environment using GridFTP over InfiniBand High Performance Data-Transfers in Grid Environment using GridFTP over InfiniBand Hari Subramoni *, Ping Lai *, Raj Kettimuthu **, Dhabaleswar. K. (DK) Panda * * Computer Science and Engineering Department

More information

I/O Scheduling Service for Multi-Application Clusters

I/O Scheduling Service for Multi-Application Clusters I/O Scheduling Service for Multi-Application Clusters, Guillaume Huard, Yves Denneulin {Adrien.Lebre,Guillaume.Huard,Yves.Denneulin}@imag.fr Laboratoire ID-IMAG (UMR 5132), Grenoble, France. BULL - HPC,

More information

SUBJECT CODE /NAME : CS6401 OPERATING SYSTEMS YEAR/SEM: II/04 QUESTION BANK

SUBJECT CODE /NAME : CS6401 OPERATING SYSTEMS YEAR/SEM: II/04 QUESTION BANK SUBJECT CODE /NAME : CS6401 OPERATING SYSTEMS YEAR/SEM: II/04 QUESTION BANK Unit-I OPERATING SYSTEMS OVERVIEW 1. Differentiate between tightly coupled systems and loosely coupled systems. 2. Define OS

More information

Albert Ludwigs University Freiburg Department of Computer Science Prof. Dr. Stefan Leue and Corina Apachite Distributed Systems - WS 2001/2002 Assignment 1 - Solutions Question 1.1 Give vetypes of hardware

More information

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture Last Class: OS and Computer Architecture System bus Network card CPU, memory, I/O devices, network card, system bus Lecture 3, page 1 Last Class: OS and Computer Architecture OS Service Protection Interrupts

More information

Adaptive Server Enterprise

Adaptive Server Enterprise Performance and Tuning Series: Basics Adaptive Server Enterprise 15.7 DOCUMENT ID: DC20020-01-1570-01 LAST REVISED: September 2011 Copyright 2011 by Sybase, Inc. All rights reserved. This publication pertains

More information

Operating Systems OBJECTIVES 7.1 DEFINITION. Chapter 7. Note:

Operating Systems OBJECTIVES 7.1 DEFINITION. Chapter 7. Note: Chapter 7 OBJECTIVES Operating Systems Define the purpose and functions of an operating system. Understand the components of an operating system. Understand the concept of virtual memory. Understand the

More information

Client/Server Computing Distributed Processing, Client/Server, and Clusters

Client/Server Computing Distributed Processing, Client/Server, and Clusters Client/Server Computing Distributed Processing, Client/Server, and Clusters Chapter 13 Client machines are generally single-user PCs or workstations that provide a highly userfriendly interface to the

More information

COSC 6374 Parallel Computation. Parallel I/O (I) I/O basics. Concept of a clusters

COSC 6374 Parallel Computation. Parallel I/O (I) I/O basics. Concept of a clusters COSC 6374 Parallel I/O (I) I/O basics Fall 2012 Concept of a clusters Processor 1 local disks Compute node message passing network administrative network Memory Processor 2 Network card 1 Network card

More information

Virtualization Technologies and Blackboard: The Future of Blackboard Software on Multi-Core Technologies

Virtualization Technologies and Blackboard: The Future of Blackboard Software on Multi-Core Technologies Virtualization Technologies and Blackboard: The Future of Blackboard Software on Multi-Core Technologies Kurt Klemperer, Principal System Performance Engineer kklemperer@blackboard.com Agenda Session Length:

More information

STANDPOINT FOR QUALITY-OF-SERVICE MEASUREMENT

STANDPOINT FOR QUALITY-OF-SERVICE MEASUREMENT STANDPOINT FOR QUALITY-OF-SERVICE MEASUREMENT 1. TIMING ACCURACY The accurate multi-point measurements require accurate synchronization of clocks of the measurement devices. If for example time stamps

More information

Distributed Data Management

Distributed Data Management Introduction Distributed Data Management Involves the distribution of data and work among more than one machine in the network. Distributed computing is more broad than canonical client/server, in that

More information

Tier Architectures. Kathleen Durant CS 3200

Tier Architectures. Kathleen Durant CS 3200 Tier Architectures Kathleen Durant CS 3200 1 Supporting Architectures for DBMS Over the years there have been many different hardware configurations to support database systems Some are outdated others

More information

WAN Optimization, Web Cache, Explicit Proxy, and WCCP. FortiOS Handbook v3 for FortiOS 4.0 MR3

WAN Optimization, Web Cache, Explicit Proxy, and WCCP. FortiOS Handbook v3 for FortiOS 4.0 MR3 WAN Optimization, Web Cache, Explicit Proxy, and WCCP FortiOS Handbook v3 for FortiOS 4.0 MR3 FortiOS Handbook WAN Optimization, Web Cache, Explicit Proxy, and WCCP v3 13 January 2012 01-433-96996-20120113

More information

COLO: COarse-grain LOck-stepping Virtual Machine for Non-stop Service

COLO: COarse-grain LOck-stepping Virtual Machine for Non-stop Service COLO: COarse-grain LOck-stepping Virtual Machine for Non-stop Service Eddie Dong, Yunhong Jiang 1 Legal Disclaimer INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE,

More information

PUBLIC Performance Optimization Guide

PUBLIC Performance Optimization Guide SAP Data Services Document Version: 4.2 Support Package 6 (14.2.6.0) 2015-11-20 PUBLIC Content 1 Welcome to SAP Data Services....6 1.1 Welcome.... 6 1.2 Documentation set for SAP Data Services....6 1.3

More information

Multi-Channel Clustered Web Application Servers

Multi-Channel Clustered Web Application Servers THE AMERICAN UNIVERSITY IN CAIRO SCHOOL OF SCIENCES AND ENGINEERING Multi-Channel Clustered Web Application Servers A Masters Thesis Department of Computer Science and Engineering Status Report Seminar

More information

Toward High-Performance Shadow Migration

Toward High-Performance Shadow Migration Toward High-Performance Shadow Migration Youngjin Nam, Aaron Dailey Talk Outline Learning Objectives Use cases of shadow migration in ZFSSA Shadow migration at a high level Optimization issues for higher

More information

Lessons Learned Tuning HP's SMB Server with the FSCT Benchmark

Lessons Learned Tuning HP's SMB Server with the FSCT Benchmark Lessons Learned Tuning HP's SMB Server with the FSCT Benchmark Bret McKee Hewlett-Packard bret.mckee@hp.com Vinod Eswaraprasad Wipro Technologies vinod.eswaraprasad@hp.com Disclaimers There are many people

More information

An On-line Backup Function for a Clustered NAS System (X-NAS)

An On-line Backup Function for a Clustered NAS System (X-NAS) _ An On-line Backup Function for a Clustered NAS System (X-NAS) Yoshiko Yasuda, Shinichi Kawamoto, Atsushi Ebata, Jun Okitsu, and Tatsuo Higuchi Hitachi, Ltd., Central Research Laboratory 1-28 Higashi-koigakubo,

More information

opensm2 Enterprise Performance Monitoring December 2010 Copyright 2010 Fujitsu Technology Solutions

opensm2 Enterprise Performance Monitoring December 2010 Copyright 2010 Fujitsu Technology Solutions opensm2 Enterprise Performance Monitoring December 2010 Agenda opensm2 Overview INSPECTOR ANALYZER 1 opensm2 Provides a consistent solution for the enterprise-wide performance management Supports the server

More information

CHAPTER 9 Exercises 9.1 Answer: 9.2 Ready Running Blocked Answer: 9.3

CHAPTER 9 Exercises 9.1 Answer: 9.2 Ready Running Blocked Answer: 9.3 CHAPTER 9 Virtual memory can be a very interesting subject since it has so many different aspects: page faults, managing the backing store, page replacement, frame allocation, thrashing, page size. The

More information

Contents. Chapter 1. Introduction

Contents. Chapter 1. Introduction Contents 1. Introduction 2. Computer-System Structures 3. Operating-System Structures 4. Processes 5. Threads 6. CPU Scheduling 7. Process Synchronization 8. Deadlocks 9. Memory Management 10. Virtual

More information

1. The subnet must prevent additional packets from entering the congested region until those already present can be processed.

1. The subnet must prevent additional packets from entering the congested region until those already present can be processed. Congestion Control When one part of the subnet (e.g. one or more routers in an area) becomes overloaded, congestion results. Because routers are receiving packets faster than they can forward them, one

More information

COSC 6374 Parallel Computation. Parallel I/O (I) I/O basics. Concept of a clusters

COSC 6374 Parallel Computation. Parallel I/O (I) I/O basics. Concept of a clusters COSC 6374 Parallel Computation Parallel I/O (I) I/O basics Spring 2008 Concept of a clusters Processor 1 local disks Compute node message passing network administrative network Memory Processor 2 Network

More information

CSE 544 Principles of Database Management Systems. Magdalena Balazinska Fall 2007 Lecture 5 - DBMS Architecture

CSE 544 Principles of Database Management Systems. Magdalena Balazinska Fall 2007 Lecture 5 - DBMS Architecture CSE 544 Principles of Database Management Systems Magdalena Balazinska Fall 2007 Lecture 5 - DBMS Architecture References Anatomy of a database system. J. Hellerstein and M. Stonebraker. In Red Book (4th

More information

Distributed Operating Systems Introduction

Distributed Operating Systems Introduction Distributed Operating Systems Introduction Ewa Niewiadomska-Szynkiewicz and Adam Kozakiewicz ens@ia.pw.edu.pl, akozakie@ia.pw.edu.pl Institute of Control and Computation Engineering Warsaw University of

More information

PRODUCTIVITY ESTIMATION OF UNIX OPERATING SYSTEM

PRODUCTIVITY ESTIMATION OF UNIX OPERATING SYSTEM Computer Modelling & New Technologies, 2002, Volume 6, No.1, 62-68 Transport and Telecommunication Institute, Lomonosov Str.1, Riga, LV-1019, Latvia STATISTICS AND RELIABILITY PRODUCTIVITY ESTIMATION OF

More information

Review from last time. CS 537 Lecture 3 OS Structure. OS structure. What you should learn from this lecture

Review from last time. CS 537 Lecture 3 OS Structure. OS structure. What you should learn from this lecture Review from last time CS 537 Lecture 3 OS Structure What HW structures are used by the OS? What is a system call? Michael Swift Remzi Arpaci-Dussea, Michael Swift 1 Remzi Arpaci-Dussea, Michael Swift 2

More information

Ethernet. Ethernet. Network Devices

Ethernet. Ethernet. Network Devices Ethernet Babak Kia Adjunct Professor Boston University College of Engineering ENG SC757 - Advanced Microprocessor Design Ethernet Ethernet is a term used to refer to a diverse set of frame based networking

More information

Gigabit Ethernet Design

Gigabit Ethernet Design Gigabit Ethernet Design Laura Jeanne Knapp Network Consultant 1-919-254-8801 laura@lauraknapp.com www.lauraknapp.com Tom Hadley Network Consultant 1-919-301-3052 tmhadley@us.ibm.com HSEdes_ 010 ed and

More information

Distributed File Systems

Distributed File Systems Distributed File Systems Paul Krzyzanowski Rutgers University October 28, 2012 1 Introduction The classic network file systems we examined, NFS, CIFS, AFS, Coda, were designed as client-server applications.

More information

Deploying in a Distributed Environment

Deploying in a Distributed Environment Deploying in a Distributed Environment Distributed enterprise networks have many remote locations, ranging from dozens to thousands of small offices. Typically, between 5 and 50 employees work at each

More information

Distributed Systems. REK s adaptation of Prof. Claypool s adaptation of Tanenbaum s Distributed Systems Chapter 1

Distributed Systems. REK s adaptation of Prof. Claypool s adaptation of Tanenbaum s Distributed Systems Chapter 1 Distributed Systems REK s adaptation of Prof. Claypool s adaptation of Tanenbaum s Distributed Systems Chapter 1 1 The Rise of Distributed Systems! Computer hardware prices are falling and power increasing.!

More information

Rackspace Cloud Databases and Container-based Virtualization

Rackspace Cloud Databases and Container-based Virtualization Rackspace Cloud Databases and Container-based Virtualization August 2012 J.R. Arredondo @jrarredondo Page 1 of 6 INTRODUCTION When Rackspace set out to build the Cloud Databases product, we asked many

More information

pc resource monitoring and performance advisor

pc resource monitoring and performance advisor pc resource monitoring and performance advisor application note www.hp.com/go/desktops Overview HP Toptools is a modular web-based device management tool that provides dynamic information about HP hardware

More information

Distributed Systems LEEC (2005/06 2º Sem.)

Distributed Systems LEEC (2005/06 2º Sem.) Distributed Systems LEEC (2005/06 2º Sem.) Introduction João Paulo Carvalho Universidade Técnica de Lisboa / Instituto Superior Técnico Outline Definition of a Distributed System Goals Connecting Users

More information

ReadyNAS Remote White Paper. NETGEAR May 2010

ReadyNAS Remote White Paper. NETGEAR May 2010 ReadyNAS Remote White Paper NETGEAR May 2010 Table of Contents Overview... 3 Architecture... 3 Security... 4 Remote Firewall... 5 Performance... 5 Overview ReadyNAS Remote is a software application that

More information

Study Plan Masters of Science in Computer Engineering and Networks (Thesis Track)

Study Plan Masters of Science in Computer Engineering and Networks (Thesis Track) Plan Number 2009 Study Plan Masters of Science in Computer Engineering and Networks (Thesis Track) I. General Rules and Conditions 1. This plan conforms to the regulations of the general frame of programs

More information

Swapping to Remote Memory over InfiniBand: An Approach using a High Performance Network Block Device

Swapping to Remote Memory over InfiniBand: An Approach using a High Performance Network Block Device Swapping to Remote Memory over InfiniBand: An Approach using a High Performance Network Block Device Shuang Liang, Ranjit Noronha, D.K. Panda Department of Computer Science and Engineering The Ohio State

More information

Real-Time Scheduling 1 / 39

Real-Time Scheduling 1 / 39 Real-Time Scheduling 1 / 39 Multiple Real-Time Processes A runs every 30 msec; each time it needs 10 msec of CPU time B runs 25 times/sec for 15 msec C runs 20 times/sec for 5 msec For our equation, A

More information

The Microsoft Windows Hypervisor High Level Architecture

The Microsoft Windows Hypervisor High Level Architecture The Microsoft Windows Hypervisor High Level Architecture September 21, 2007 Abstract The Microsoft Windows hypervisor brings new virtualization capabilities to the Windows Server operating system. Its

More information

Kernel comparison of OpenSolaris, Windows Vista and. Linux 2.6

Kernel comparison of OpenSolaris, Windows Vista and. Linux 2.6 Kernel comparison of OpenSolaris, Windows Vista and Linux 2.6 The idea of writing this paper is evoked by Max Bruning's view on Solaris, BSD and Linux. The comparison of advantages and disadvantages among

More information

TCP Servers: Offloading TCP Processing in Internet Servers. Design, Implementation, and Performance

TCP Servers: Offloading TCP Processing in Internet Servers. Design, Implementation, and Performance TCP Servers: Offloading TCP Processing in Internet Servers. Design, Implementation, and Performance M. Rangarajan, A. Bohra, K. Banerjee, E.V. Carrera, R. Bianchini, L. Iftode, W. Zwaenepoel. Presented

More information

Content Distribution Networks (CDNs)

Content Distribution Networks (CDNs) 229 Content Distribution Networks (CDNs) A content distribution network can be viewed as a global web replication. main idea: each replica is located in a different geographic area, rather then in the

More information

Chapter 1: Introduction. What is an Operating System?

Chapter 1: Introduction. What is an Operating System? Chapter 1: Introduction What is an operating system? Simple Batch Systems Multiprogramming Batched Systems Time-Sharing Systems Personal-Computer Systems Parallel Systems Distributed Systems Real -Time

More information

Chapter 6 Concurrency: Deadlock and Starvation

Chapter 6 Concurrency: Deadlock and Starvation Operating Systems: Internals and Design Principles, 6/E William Stallings Chapter 6 Concurrency: Deadlock and Starvation Dave Bremer Otago Polytechnic, N.Z. 2008, Prentice Hall Roadmap Principals of Deadlock

More information

Programma della seconda parte del corso

Programma della seconda parte del corso Programma della seconda parte del corso Introduction Reliability Performance Risk Software Performance Engineering Layered Queueing Models Stochastic Petri Nets New trends in software modeling: Metamodeling,

More information

Process Management. Processes. CS 502 Spring 99 WPI MetroWest/Southboro Campus

Process Management. Processes. CS 502 Spring 99 WPI MetroWest/Southboro Campus Process Management CS 502 Spring 99 WPI MetroWest/Southboro Campus Processes Process Concept Process Scheduling Operations on Processes Cooperating Processes Threads Interprocess Communication 1 1 Process

More information

Virtualization in Linux

Virtualization in Linux Virtualization in Linux Kirill Kolyshkin September 1, 2006 Abstract Three main virtualization approaches emulation, paravirtualization, and operating system-level virtualization are covered,

More information

Chapter 8 Multiple Processor Systems. 8.1 Multiprocessors 8.2 Multicomputers 8.3 Distributed systems

Chapter 8 Multiple Processor Systems. 8.1 Multiprocessors 8.2 Multicomputers 8.3 Distributed systems Chapter 8 Multiple Processor Systems 8.1 Multiprocessors 8.2 Multicomputers 8.3 Distributed systems Multiprocessor Systems Continuous need for faster computers shared memory model message passing multiprocessor

More information

Multiprocessor Systems. Chapter 8 Multiple Processor Systems. Multiprocessors. Multiprocessor Hardware (1)

Multiprocessor Systems. Chapter 8 Multiple Processor Systems. Multiprocessors. Multiprocessor Hardware (1) Chapter 8 Multiple Processor Systems Multiprocessor Systems 8.1 Multiprocessors 8.2 Multicomputers 8.3 Distributed systems Continuous need for faster computers shared memory model message passing multiprocessor

More information

Fault Tolerance in the Internet: Servers and Routers

Fault Tolerance in the Internet: Servers and Routers Fault Tolerance in the Internet: Servers and Routers Sana Naveed Khawaja, Tariq Mahmood Research Associates Department of Computer Science Lahore University of Management Sciences Motivation Client Link

More information

Chapter 6, The Operating System Machine Level

Chapter 6, The Operating System Machine Level Chapter 6, The Operating System Machine Level 6.1 Virtual Memory 6.2 Virtual I/O Instructions 6.3 Virtual Instructions For Parallel Processing 6.4 Example Operating Systems 6.5 Summary Virtual Memory General

More information

Distributed File System. MCSN N. Tonellotto Complements of Distributed Enabling Platforms

Distributed File System. MCSN N. Tonellotto Complements of Distributed Enabling Platforms Distributed File System 1 How do we get data to the workers? NAS Compute Nodes SAN 2 Distributed File System Don t move data to workers move workers to the data! Store data on the local disks of nodes

More information

Reducing File Access Overhead in Web Servers

Reducing File Access Overhead in Web Servers Reducing File Access Overhead in Web Servers Igor Tatarinov Abstract In this paper we compare performance of buffered and mapped I/O in a Web server. We show that mapped I/O is an easy way to increase

More information

SQL Server Performance Tuning for DBAs

SQL Server Performance Tuning for DBAs ASPE IT Training SQL Server Performance Tuning for DBAs A WHITE PAPER PREPARED FOR ASPE BY TOM CARPENTER www.aspe-it.com toll-free: 877-800-5221 SQL Server Performance Tuning for DBAs DBAs are often tasked

More information

Using Fuzzy Logic Control to Provide Intelligent Traffic Management Service for High-Speed Networks ABSTRACT:

Using Fuzzy Logic Control to Provide Intelligent Traffic Management Service for High-Speed Networks ABSTRACT: Using Fuzzy Logic Control to Provide Intelligent Traffic Management Service for High-Speed Networks ABSTRACT: In view of the fast-growing Internet traffic, this paper propose a distributed traffic management

More information

Agenda. Distributed System Structures. Why Distributed Systems? Motivation

Agenda. Distributed System Structures. Why Distributed Systems? Motivation Agenda Distributed System Structures CSCI 444/544 Operating Systems Fall 2008 Motivation Network structure Fundamental network services Sockets and ports Client/server model Remote Procedure Call (RPC)

More information