Results 11 - 20
of
246
Flow and Stretch Metrics for Scheduling Continuous Job Streams
- In Proceedings of the 9th Annual ACM-SIAM Symposium on Discrete Algorithms
, 1998
"... this paper, we isolate and study the problem of scheduling a continuous stream of requests of varying sizes. More precisely, assume a request or job j has ..."
Abstract
-
Cited by 108 (9 self)
- Add to MetaCart
this paper, we isolate and study the problem of scheduling a continuous stream of requests of varying sizes. More precisely, assume a request or job j has
SVR4UNIX Scheduler Unacceptable for Multimedia Applications
, 1993
"... This paper provides a quantitative analysis of real system behavior, demonstrates why it is not possible to obtain the kind of behavior desired with the mechanisms currently provided by the system, and presents modifications to improve the situation. 1 Introduction ..."
Abstract
-
Cited by 101 (7 self)
- Add to MetaCart
This paper provides a quantitative analysis of real system behavior, demonstrates why it is not possible to obtain the kind of behavior desired with the mechanisms currently provided by the system, and presents modifications to improve the situation. 1 Introduction
A Fair Share Scheduler.
- Communications of the ACM
, 1988
"... CPU schedulers are usually designed to allocate resources fairly among processes. In this paper, we describe Share, a scheduler that allocates resources so that users get their fair machine share over a long period. We also describe an hierarchical form of Share that supports sharing, not only betwe ..."
Abstract
-
Cited by 91 (0 self)
- Add to MetaCart
CPU schedulers are usually designed to allocate resources fairly among processes. In this paper, we describe Share, a scheduler that allocates resources so that users get their fair machine share over a long period. We also describe an hierarchical form of Share that supports sharing, not only between individual users, but also between groups of users. In particular, it supports the sharing of a machine between organisational groups who are independently funded and have contributed a proportion of the machine cost. The hierarchical Share ensures that each group is allocated its defined machine share in the long term. 1. Introduction One of the critical requirements of a scheduler is that is be fair . Traditionally, this has been interpreted in the context of processes, and it has meant that schedulers were designed to share resources fairly between processes. More recently, it has become clear that schedulers need to be fair to users rather than just processes. This is reflected in w...
Measuring and Characterizing System Behavior Using Kernel-Level Event Logging
, 2000
"... Analyzing the dynamic behavior and performance of complex software systems is difficult. Currently available systems either analyze each process in isolation, only provide system level cumulative statistics, or provide a fixed and limited number of process group related statistics. The Linux Trace T ..."
Abstract
-
Cited by 76 (2 self)
- Add to MetaCart
Analyzing the dynamic behavior and performance of complex software systems is difficult. Currently available systems either analyze each process in isolation, only provide system level cumulative statistics, or provide a fixed and limited number of process group related statistics. The Linux Trace Toolkit (LTT) introduced here provides a novel, modular, and extensible way of recording and analyzing complete system behavior. Because all significant system events are recorded, it is possible to analyze any desired subset of the running processes, and for instance distinguish between the time spent waiting for some relevant event (data from disk or another process) versus time spent waiting for some unrelated process to use up its time slice. Despite the
Scheduling Dependent Real-Time Activities
, 1990
"... A real-time application is typically composed of a number of cooperating activities that must execute within specific time intervals. Since there are usually more activities to be executed than there are processors on which to execute them, several activities must share a single processor. Necessari ..."
Abstract
-
Cited by 67 (1 self)
- Add to MetaCart
A real-time application is typically composed of a number of cooperating activities that must execute within specific time intervals. Since there are usually more activities to be executed than there are processors on which to execute them, several activities must share a single processor. Necessarily, satisfying the activities' timing constraints is a prime concern in making the scheduling decisions for that processor.
The Structure of a Multi-Service Operating System
, 1995
"... Data Type. A collection of operations, each with a name and a signature defining the number and types of its arguments. application domain A domain whose purpose is to execute an application program. binding An association of a name with some value; in IDC, the local data structures for invoking an ..."
Abstract
-
Cited by 66 (4 self)
- Add to MetaCart
Data Type. A collection of operations, each with a name and a signature defining the number and types of its arguments. application domain A domain whose purpose is to execute an application program. binding An association of a name with some value; in IDC, the local data structures for invoking an operation on an interface. class A set of objects sharing the same implementation. An object is an instance of exactly one class. closure The concrete realisation of an interface. A record containing two pointers, one to an operation table and the other to a state record. concrete type A data type whose structure is explicit. constructor An operation on an interface which causes the creation of an object, and returns the interfaces exported by the object. context A collection of bindings of names to values. context slot A data structure used to hold processor execution state within a domain. ix domain The entity which is activated by the kernel scheduler. Domains can be thought of a...
Managing Distributed, Shared L2 Caches through OS-Level Page Allocation
- IEEE/ACM INTERNATIONAL SYMPOSIUM ON MICROARCHITECTURE
, 2006
"... This paper presents and studies a distributed L2 cache management approach through OS-level page allocation for future many-core processors. L2 cache management is a crucial multicore processor design aspect to overcome non-uniform cache access latency for good program performance and to reduce on-c ..."
Abstract
-
Cited by 61 (9 self)
- Add to MetaCart
This paper presents and studies a distributed L2 cache management approach through OS-level page allocation for future many-core processors. L2 cache management is a crucial multicore processor design aspect to overcome non-uniform cache access latency for good program performance and to reduce on-chip network traffic and related power consumption. Unlike previously studied hardwarebased private and shared cache designs implementing a "fixed" caching policy, the proposed OS-microarchitecture approach is flexible; it can easily implement a wide spectrum of L2 caching policies without complex hardware support. Furthermore, our approach can provide differentiated execution environment to running programs by dynamically controlling data placement and cache sharing degrees. We discuss key design issues of the proposed approach and present preliminary experimental results showing the promise of our approach.
The Global File System
- Proceedings of the 5th NASA Goddard Conference on Mass Storage (MSS’96
, 1996
"... The Global File System (GFS) is a prototype design for a distributed file system in which cluster nodes physically share storage devices connected via a network like Fibre Channel. Networks and network attached storage devices have advanced to a level of performance and extensibility that the once b ..."
Abstract
-
Cited by 58 (2 self)
- Add to MetaCart
The Global File System (GFS) is a prototype design for a distributed file system in which cluster nodes physically share storage devices connected via a network like Fibre Channel. Networks and network attached storage devices have advanced to a level of performance and extensibility that the once believed disadvantages of “shared disk ” architectures are no longer valid. This shared storage architecture attempts to exploit the sophistication of device technologies where as the client–server architecture diminishes a device’s role to a simple components. GFS distributes the file system responsibilities across the processing nodes, storage across the devices, and file system resources across the entire storage pool. GFS caches data on the storage devices instead of the main memories of the machines. Consistency is established by using a locking mechanism maintained by the storage device controllers to facilitate atomic read–modify– write operations. The locking mechanism is being prototyped on Seagate disks drives and Ciprico disk arrays. GFS is implemented in the Silicon Graphics IRIX operating system and is accessed using standard Unix commands and utilities.
Disk Cache Replacement Policies for Network Fileservers
, 1993
"... Trace driven simulations are used to study the performance of several disk cache replacement policies for network fileservers. It is shown that locality based approaches, such as the common Least Recently Used (LRU) policy, which are known to work well on standalone disked workstations and at cli ..."
Abstract
-
Cited by 55 (4 self)
- Add to MetaCart
Trace driven simulations are used to study the performance of several disk cache replacement policies for network fileservers. It is shown that locality based approaches, such as the common Least Recently Used (LRU) policy, which are known to work well on standalone disked workstations and at client workstations in distributed systems, are inappropriate at a fileserver. Quite simple frequency based approaches do better.
Measuring the Capacity of a Web Server under Realistic Loads
- World Wide Web Journal (Special Issue on World Wide Web Characterization and Performance Evaluation
, 1999
"... The World Wide Web and its related applications place substantial performance demands on network servers. The ability to measure the effect of these demands is important for tuning and optimizing the various software components that make up a Web server. To measure these effects, it is necessary to ..."
Abstract
-
Cited by 48 (7 self)
- Add to MetaCart
The World Wide Web and its related applications place substantial performance demands on network servers. The ability to measure the effect of these demands is important for tuning and optimizing the various software components that make up a Web server. To measure these effects, it is necessary to generate realistic HTTP client requests in a test-bed environment. Unfortunately, the state-of-the-art approach for benchmarking Web servers is unable to generate client request rates that exceed the capacity of the server being tested, even for short periods of time. Moreover, it fails to model important characteristics of the wide area networks on which most servers are deployed (e.g. delay and packet loss). This paper examines pitfalls that one encounters when measuring Web server capacity using a synthetic workload. We propose and evaluate a new method for Web traffic generation that can generate bursty traffic, with peak loads that exceed the capacity of the server. Our method also mod...

