Network


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

Hotspot


Dive into the research topics where Robert P. Fitzgerald is active.

Publication


Featured researches published by Robert P. Fitzgerald.


Software - Practice and Experience | 2000

Marmot: an optimizing compiler for Java

Robert P. Fitzgerald; Todd B. Knoblock; Erik Ruf; Bjarne Steensgaard; David Tarditi

The Marmot system is a research platform for studying the implementation of high level programming languages. It currently comprises an optimizing native‐code compiler, runtime system, and libraries for a large subset of Java. Marmot integrates well‐known representation, optimization, code generation, and runtime techniques with a few Java‐specific features to achieve competitive performance. This paper contains a description of the Marmot system design, along with highlights of our experience applying and adapting traditional implementation techniques to Java. A detailed performance evaluation assesses both Marmots overall performance relative to other Java and C++ implementations, and the relative costs of various Java language features in Marmot‐compiled code. Our experience with Marmot has demonstrated that well‐known compilation techniques can produce very good performance for static Java applications – comparable or superior to other Java systems, and approaching that of C++ in some cases. Copyright


symposium on operating systems principles | 1997

Distributed schedule management in the Tiger video fileserver

William J. Bolosky; Robert P. Fitzgerald; John R. Douceur

Tiger is a scalable, fault-tolerant video file server constructed from a collection of computers connected by a switched network. All content files are striped across all of the computers and disks in a Tiger system. In order to prevent conflicts for a particular resource between two viewers, Tiger schedules viewers so that they do not require access to the same resource at the same time. In the abstract, there is a single, global schedule that describes all of the viewers in the system. In practice, the schedule is distributed among all of the computers in the system, each of which has a possibly partially inconsistent view of a subset of the schedule. By using such a relaxed consistency model for the schedule, Tiger achieves scalability and fault tolerance while still providing the consistent, coordinated service required by viewers.


international symposium on memory management | 2000

The case for profile-directed selection of garbage collectors

Robert P. Fitzgerald; David Tarditi

Many garbage-collected systems use a single garbage collection algorithm across all applications. It has long been known that this can produce poor performance on applications for which that collector is not well suited. In some systems, such as those that execute stand-alone compiled executables, an appropriate collector for each application can be selected from a pool of available collectors and tuned by using profile information. In a study of 20 benchmarks and several collectors, compiled with the Marmot optimizing Java-to-native compiler, for every collector there was at least one benchmark that would have been at least 15% faster with a more appropriate collector. The collectors are a copying collector, a generational copying collector, which is combined with each of 4 different write barriers, and the null collector, which allocates but never collects. A detailed analysis of storage management costs shows how they vary by application and collector.


workshop on hot topics in operating systems | 1997

Operating system directions for the next Millennium

William J. Bolosky; Richard P. Draves; Robert P. Fitzgerald; Christopher W. Fraser; Michael B. Jones; Todd B. Knoblock; Richard F. Rashid

We believe it is time to reexamine the operating systems role in computing. Operating systems exist to create an environment in which compelling applications come to life. They do that by providing abstractions built on the services provided by hardware. We argue that advances in hardware and networking technology enable a new kind of operating system to support tomorrows applications. Such an operating system would raise the level of abstraction for developers and users, so that individual computers, file systems, and networks become unimportant to most computations in the same way that processor registers, disk sectors, and physical pages are today.


Archive | 1993

Video on demand system comprising stripped data across plural storable devices with time multiplex scheduling

Robert P. Fitzgerald; Joseph S. Barrera; William J. Bolosky; Richard P. Draves; Michael B. Jones; Steven P. Levi; Nathan P. Myhrvold; Richard F. Rashid; Garth A. Gibson


Archive | 1995

Method and system for scheduling the use of a computer system resource using a resource planner and a resource provider

Michael B. Jones; Paul J. Leach; Richard P. Draves; Joseph S. Barrera; Steven P. Levi; Richard F. Rashid; Robert P. Fitzgerald


Archive | 1995

Method and system for scheduling the execution of threads using optional time-specific scheduling constraints

Michael B. Jones; Paul J. Leach; Richard P. Draves; Joseph S. Barrera; Steven P. Levi; Richard F. Rashid; Robert P. Fitzgerald


Archive | 1994

Method and system for combining data from multiple servers into a single continuous data stream using a switch

Richard F. Rashid; William J. Bolosky; Robert P. Fitzgerald


Archive | 2004

Wire protocol for a media server system

William J. Bolosky; Craig M. Dowell; Robert P. Fitzgerald; Steven P. Levi; Jan de Rie; Richard F. Rashid


Archive | 1997

Method and system for incrementally improving a program layout

John Miller; John R. Douceur; Robert P. Fitzgerald

Collaboration


Dive into the Robert P. Fitzgerald's collaboration.

Researchain Logo
Decentralizing Knowledge