Network


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

Hotspot


Dive into the research topics where Lawrence A. Crowl is active.

Publication


Featured researches published by Lawrence A. Crowl.


IFAC Proceedings Volumes | 1996

Running control engineering experiments over the internet

Carisa Bohus; Lawrence A. Crowl; Burçin Aktan; Molly H. Shor

Abstract An important, issue in engineering education is the availability of laboratory resources for student use. Using a computer network to link geographically distant students with laboratory teaching resources makes expensive and innovative equipment available to more students. A working environment is now available where remotely-located students can develop and run controllers on experiments in the Oregon State University (OSU) control engineering laboratory. Remote users can watch the experiment in real time from a remote workstation, hear the sounds in the laboratory, and interact with other laboratory users. Remote power control, network reliability, and safety features are integrated into the experimental hardware and software design.


Software - Practice and Experience | 1989

The Elmwood multiprocessor operating system

Thomas J. LeBlanc; John M. Mellor-Crummey; Neal Gafter; Lawrence A. Crowl; Peter Dibble

Elmwood is an object‐oriented, multiprocessor operating system designed and implemented during a graduate seminar. It consists of a minimal kernel and a collection of user‐implemented services. The kernel provides two major abstractions: objects, which consist of code and data, and processes, which represent asynchronous activity. Objects, like programs, are passive. To operate on an abstraction or to request a service, processes invoke an entry procedure defined by the corresponding object. Objects implement their own protection and synchronization policies using minimal kernel mechanisms. We describe the Elmwood kernel interface, an implementation on the BBN Butterfly parallel processor, and our experiences in developing a multiprocessor operating system under rigid time constraints. These experiences illustrate several general lessons regarding kernel design and trade‐offs for implementation expedience.


international conference on computational logistics | 1992

Control abstraction in parallel programming languages

Lawrence A. Crowl; Thomas J. LeBlanc

Control abstraction is the process by which programmers define new control constructs, specifying a statement ordering separately from an implementation of that ordering. It is argued that control abstraction can and should play a central role in parallel programming. Control abstraction can be used to build new control constructs for the expression of parallelism. A control construct can have several implementations, representing the varying degrees of parallelism to be exploited on different architectures. Control abstraction also reduces the need for explicit synchronization, since it admits a precise specification of control flow. Several examples are used to illustrate the benefits of control abstraction. It is also shown that one can efficiently implement a parallel programming language based on control abstraction. It is argued that, because of the enormous benefits and reasonable costs of control abstraction, it should be included in explicitly parallel programming languages.<<ETX>>


ACM Transactions on Programming Languages and Systems | 1994

Parallel programming with control abstraction

Lawrence A. Crowl; Thomas J. LeBlanc

Parallel programming involves finding the potential parallelism in an application and mapping it to the architecture at hand. Since a typical application has more potential parallelism than any single architecture can exploit effectively, programmers usually limit their focus to the parallelism that the available control constructs express easily and that the given architecture exploits efficiently. This approach produces programs that exhibit much less parallelism that exists in the application, and whose performance depends critically on the underlying hardware and software. We argue for an alternative approach based on control abstraction. Control abstraction is the process by which programmers define new control constructs, specifying constraints on statement ordering separately from an implementation of that ordering. With control abstraction programmers can define and use a rich variety of control constructs to represent an algorithms potential parallelism. Since control abstraction separates the definition of a construct from its implementation, a construct may have several different implementations, each exploiting a different subset of the parallelism admitted by the construct. By selecting an implementation for each control construct using annotations, a programmer can vary the parallelism in a program to best exploit the underlying hardware without otherwise changing the source code. This approach produces programs that exhibit most of the potential parallelism in an algorithm, and whose performance can be tuned simply by choosing among the various implementations for the control constructs in use.


Archive | 1986

DARPA Parallel Architecture Benchmark Study

Christopher M. Brown; Robert J. Fowler; Thomas J. LeBlanc; Michael L. Scott; Mandayam Srinivas; Liudvikas Bukys; John Costanzo; Lawrence A. Crowl; Peter Dibble; Neal Gafter; Brian D. Marsh; Thomas Olson; Laura Sanchis


Journal of Parallel and Distributed Computing | 1994

The advantages of multiple parallelizations in combinatorial search

Lawrence A. Crowl; Mark Crovella; Thomas J. LeBlanc; Michael L. Scott


conference on object oriented programming systems languages and applications | 1989

A uniform object model for parallel programming

Lawrence A. Crowl


IEEE Transactions on Reliability | 1992

Beyond Data Parallelism: The Advantages of Multiple Parallelizations in Combinatorial Search

Lawrence A. Crowl; Mark Crovella; Thomas J. LeBlanc; Michael L. Scott


Archive | 1991

Architectural Adaptability in Parallel Programming via Control Abstraction

Lawrence A. Crowl; Thomas J. LeBlanc


IEEE Transactions on Reliability | 1987

An Interface between Object-Oriented Systems.

Lawrence A. Crowl

Collaboration


Dive into the Lawrence A. Crowl's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Neal Gafter

University of Rochester

View shared research outputs
Top Co-Authors

Avatar

Peter Dibble

University of Rochester

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Carisa Bohus

Oregon State University

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge