Gregory D. Benson

Learn More
Panda is a virtual machine designed to support portable implementations of parallel programming systems. It provides communication primitives and thread support to higher-level layers (such as a runtime system). We have used Panda to implement four parallel programming systems: Orca, data parallel Orca, PVM, and SR. The paper describes our experiences in(More)
This study evaluates the performance of MPI_Allgather() in MPICH 1.2.5 on a Linux cluster. This implementation of MPICH improves on the performance of allgather compared to previous versions by using a recursive doubling algorithm. We have developed a dissemination allgather based on the dissemination barrier algorithm. This algorithm takes log 2 p stages(More)
This paper presents research t o wards the formal speciication and veriication of a secure distributed system and secure application programs that run on it. We refer to the whole system | from hardware to application programs written in a concurrent programming language | as the Silo, and to a simpliied view of the Silo as the miniSilo. Both miniSilo and(More)
Despite several language features and development tools geared toward assisting the implementation of Java-based distributed applications, writing such applications is still cumbersome. Middleware approaches, such as Java RMI and CORBA, place a heavy burden on the programmer to specify unnatural and restricted interfaces for existing classes. To address(More)
In general, networked and distributed operating systems are still programmed using a sequential language like C, even though the underlying programming model is that of multithreaded programs that communicate using some form of message passing. In a distributed environment it is more natural to program using a distributed programming language. In addition,(More)
This paper presents research towards the formal speciication and veriication of a secure distributed system and secure application programs that run on it. We refer to the whole system | from hardware to application programs written in a concurrent programming language | as the Silo, and to a simpliied view of the Silo as the miniSilo. Both miniSilo and(More)
Despite an increasing need for thread support in language run-time systems and parallel libraries such as in Java and OpenMP, there is limited support for custom, multiproces-sor capable, user-level thread systems in the Linux kernel. To address this lack of support we have developed the virtual processor interface (VPI) for Linux. Our VPI implementation(More)