Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Gary J. Nutt is active.

Publication


Featured researches published by Gary J. Nutt.


applications and theory of petri nets | 1993

Modeling and Enactment of Workflow Systems

Clarence A. Ellis; Gary J. Nutt

Petri net models and variants thereof have primarily been used to model structured systems such as computer programs, factory production lines, and engineering hardware. In contrast, this paper discusses the issues and challenges in the modeling of human activity in the workplace. This type of activity frequently has a large component that is unstructured, creative work. It is dynamic and difficult to capture via traditional Petri nets. Our research group at the University of Colorado has been investigating Information Control Nets (ICNs), derived from high level Petri nets, as a tool for modeling office workflow. After carefully explaining the notion of Workflow, this paper presents a formal (and also an informal) definition of ICN. We illustrate the utility of ICNs via an office analysis example.


real time systems symposium | 1998

A dynamic quality of service middleware agent for mediating application resource usage

Scott A. Brandt; Gary J. Nutt; Toby Berk; James E. Mankovich

High bandwidth applications with time-dependent resource requirements demand certain resource level assurances in order to operate correctly. Quality of service resource management techniques are being successfully developed that allow network systems to provide such assurances. These solutions generally assume that the operating system at either end of the network is capable of handling the throughput requirements of the applications. However, real operating systems have to manage many concurrent applications with varying resource requirements. Without specialized support, the operating system cannot guarantee the resources needed for any particular application. In support of these kinds of applications we have developed a middleware agent called a dynamic QoS manager (DQM) that mediates application resource usage so as to ensure that applications get the resources they need in order to provide adequate performance. The DQM employs a variety of algorithms to determine application resource allocations. Using application QoS levels, it provides for resource availability based algorithmic variation within applications and varying application periods. It also allows for inaccurate application resource usage estimates through a technique we have developed called dynamic estimate refinement. The paper discusses new developments in the design of the DQM and presents results showing DQM performance with both real and synthetic applications.


Journal of the ACM | 2004

A unified theory of shared memory consistency

Robert C. Steinke; Gary J. Nutt

The traditional assumption about memory is that a read returns the value written by the most recent write. However, in a shared memory multiprocessor several processes independently and simultaneously submit reads and writes resulting in a partial order of memory operations. In this partial order, the definition of most recent write may be ambiguous. Memory consistency models have been developed to specify what values may be returned by a read given that memory operations may only be partially ordered. Before this work, consistency models were defined independently. Each model followed a set of rules which was separate from the rules of every other model. In our work, we have defined a set of four consistency properties. Any subset of the four properties yields a set of rules which constitute a consistency model. Every consistency model previously described in the literature can be defined based on our four properties. Therefore, we present these properties as a unfied theory of shared memory consistency.Our unified theory provides several benefits. First, we claim that these four properties capture the underlying structure of memory consistency. That is, the goal of memory consistency is to ensure certain declarative properties which can be intuitively understood by a programmer, and hence allow him or her to write a correct program. Our unified theory provides a uniform, formal definition of all previously described consistency models, and in addition some combinations of properties produce new models that have not yet been described. We believe these new models will prove to be useful because they are based on declarative properties which programmers desire to be enforced. Finally, we introduce the idea of selecting a consistency model as an on-line activity. Before our work, a shared memory program would run start to finish under a single consistency model. Our unified theory allows the consistency model to change as the program runs while maintaining a consistent definition of what values may be returned by each read.


Distributed Systems Engineering | 1996

The evolution towards flexible workflow systems

Gary J. Nutt

The simultaneous evolution of personal computing tools and networks has focused attention on the notion of harnessing computer technology to assist in human collaboration on group work. While personal productivity tool technology and use have reached a high level of sophistication, the most basic ideas for how computer technology should assist in collaboration across the network have not yet converged. The approaches range from ones where coordination of work is uniquely human-controlled, to workflow-based approaches where the computer is involved in scheduling the groups work. This survey paper describes how workflow technology has evolved from a modelling focus to flexible model-based systems to support collaborative work across this range of work styles.


Real-time Systems | 2002

Flexible Soft Real-Time Processing in Middleware

Scott A. Brandt; Gary J. Nutt

As desktop computer computational power continues to increase dramatically, it is becoming commonplace to run a combination of deadline-sensitive applications. Despite the proliferation of computational power, the detailed nature of these applications causes new problems for the system resource allocation mechanisms. First, these applications are designed to meet their deadlines as long as nearly all the systems resources are available to them; once the system approaches saturation, the collective applications will fail to meet their deadlines. To aggravate the situation, conventional best effort managers will allocate resources to the competing applications based on a static form of equitability rather than addressing the dynamic relative benefit provided by each application. Second, the applications differ from conventional real-time applications: though members of this new class of desktop applications are sensitive to deadlines, their constraints are non-critical. They are also typically designed to use the full spectrum of functions provided by a general purpose system call interface rather than the more limited interface of a real-time operating system (OS). This paper describes a flexible soft real-time system design that addresses these two problems. The CPU scheduling strategy accommodates the community of applications by taking application benefit into account during times of heavy load. Applications are written to use the full interface of a general purpose system call interface, yet the system is able to schedule them according to their deadlines and resource reservation and availability. This paper describes the theoretical foundation of the approach, additional application responsibilities, the design of a middleware system to implement the approach, and then it presents an extensive set of experimental studies that demonstrate the behavior of the approach. The Dynamic QoS Manager middleware (implemented on top of two different versions of Unix), is shown to be a highly effective system for supporting contemporary soft real-time desktop applications.


international workshop on quality of service | 1998

Soft real-time application execution with dynamic quality of service assurance

Scott A. Brandt; Gary J. Nutt; Toby Berk; Marty Humphrey

There is an emerging set of research operating systems that provide specialized support for continuous media and other soft real-time applications. A number of these systems provide QoS scheduling abstractions, some of which may dynamically change the QoS allocations to applications during application execution. The tools and environments that allow application developers to take advantage of these abstractions generally do not exist. This paper describes a dynamic QoS resource manager (DQM), which is a middleware application that abstracts these new operating system interfaces so that they can be easily used in contemporary application environments.


international symposium on computer architecture | 1977

Microprocessor implementation of a parallel processor

Gary J. Nutt

A wide variety of uses have been proposed for the spectrum of currently available microprocessor systems. Included in this set of applications is the use of microprocessors for implementing larger systems; here, the possibility of employing bit slice microprocessors for various parts of a multiple control unit SIMD processor is discussed. A brief summary of bit slice microprocessor architecture is given, followed by an outline of individual applications to various components such as control units and arithmetic/logic units of the SIMD processor.A wide variety of uses have been proposed for the spectrum of currently available microprocessor systems. Included in this set of applications is the use of microprocessors for implementing larger systems; here, the possibility of employing bit slice microprocessors for various parts of a multiple control unit SIMD processor is discussed. A brief summary of bit slice microprocessor architecture is given, followed by an outline of individual applications to various components such as control units and arithmetic/logic units of the SIMD processor.


ieee symposium on visual languages | 1994

Escalante: an environment for the rapid construction of visual language applications

Jeffrey D. McWhirter; Gary J. Nutt

The paper describes Escalante, an environment that supports the iterative design, rapid prototyping and generation of complex visual language applications. Escalante enables the developer to visually specify and generate applications for a wide variety of graph based visual languages. A set of example applications are presented that serve to demonstrate the range of languages to which Escalante is applicable.<<ETX>>


IEEE Transactions on Software Engineering | 1977

A Parallel Processor Operating System Comparison

Gary J. Nutt

Three different operating system strategies for a parallel processor computer system are compared, and the most effective strategy for given job loads is determined. The three strategies compare uniprogramming versus multiprogramming and distributed operating systems versus dedicated processor operating systems. The level of evaluation includes I/O operations, resource allocation, and interprocess communication. The results apply to architectures where jobs may be scheduled to processors on the basis of processor availability, memory availability, and the availability of one other resource used by all jobs.


IEEE Transactions on Knowledge and Data Engineering | 2000

Dynamically negotiated resource management for data intensive application suites

Gary J. Nutt; Scott A. Brandt; Adam J. Griff; Sam Siewert; Marty Humphrey; Toby Berk

In contemporary computers and networks of computers, various application domains are making increasing demands on the system to move data from one place to another, particularly under some form of soft real-time constraint. A brute force technique for implementing applications in this type of domain demands excessive system resources, even though the actual requirements by different parts of the application vary according to the way it is being used at the moment. A more sophisticated approach is to provide applications with the ability to dynamically adjust resource requirements according to their precise needs, as well as the availability of system resources. This paper describes a set of principles for designing systems to provide support for soft real-time applications using dynamic negotiation. Next, the execution level abstraction is introduced as a specific mechanism for implementing the principles. The utility of the principles and the execution level abstraction is then shown in the design of three resource managers that facilitate dynamic application adaptation: Gryphon, EPA/RT-PCIP, and the DQM architectures.

Collaboration


Dive into the Gary J. Nutt's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Jeffrey D. McWhirter

University of Colorado Boulder

View shared research outputs
Top Co-Authors

Avatar

Sam Siewert

University of Colorado Boulder

View shared research outputs
Top Co-Authors

Avatar

Zulah K.F. Eckert

University of Colorado Boulder

View shared research outputs
Top Co-Authors

Avatar

Dirk Grunwald

University of Colorado Boulder

View shared research outputs
Top Co-Authors

Avatar

Adam J. Griff

University of Colorado Boulder

View shared research outputs
Top Co-Authors

Avatar

Adam Beguelin

University of Colorado Boulder

View shared research outputs
Top Co-Authors

Avatar

James E. Mankovich

University of Colorado Boulder

View shared research outputs
Researchain Logo
Decentralizing Knowledge