| S. Jagannathan and J. Philbin. A foundation for an efficient multi-threaded Scheme system. In Proc. 1992 ACM Conference on Lisp and Functional Programming, pages 345--357, June 1992. |
....difference in processor speed, locking and unlocking an MP mutex takes only 6sec on the SGI versus 46sec on the Sequent. in Multilisp) and rely on sophisticated runtime system support; they don t attempt to be extensible or portable. The Lisp based system most closely resembling ours is STING [20, 21], a concurrent dialect of Scheme specifically intended as a substrate for building higher level parallel computing environments. STING s basic data types are threads and virtual processors; the system provides flexibility in scheduling, storage allocation and thread migration policies while ....
S. Jagannathan and J. Philbin. A foundation for an efficient multi-threaded Scheme system. In Proc. 1992 ACM Conference on Lisp and Functional Programming, pages 345--357, June 1992.
....of languages with dynamic parallelism, and by the fact that parallel computations are often memory limited. A poor schedule can require exponentially more space than a good schedule [11] Early solutions to the space problem considered various heuristics to reduce the number of active threads [10, 23, 34, 16, 26]. More recent work has considered provable bounds on space usage. The idea is to relate the space required by the parallel execution to the space s1 required by the sequential execution. Burton [11] first showed that for a certain class of computations the space required by a parallel ....
S. Jagannathan and J. Philbin. A foundation for an efficient multi-threaded Scheme system. In Proc. 1992 ACM Conf. on Lisp and Functional Programming, pages 345--357, June 1992.
....may use Theta(n 3 ) space for task bookkeeping, in order to keep track of tasks ready to be scheduled. Note that the standard depth first sequential schedule of this graph uses only Theta(n 2 ) space, counting the space for the input and output matrices. used [BS81, Hal85, RS87, CA88, JP92] but these are not guaranteed to be space efficient in general. There have been several recent works [BL93, BL94, BS94, Bur96] presenting scheduling algorithms with guaranteed performance bounds, both in terms of time and space. Blumofe and Leiserson [BL93, BL94] consider the class of ....
S. Jagannathan and J. Philbin. A foundation for an efficient multi-threaded Scheme system. In Proc. 1992 ACM Conf. on Lisp and Functional Programming, pages 345--357, June 1992.
....are multiplexed on top of kernel threads. However, PCR does not allow the thread package or its scheduling policy to be customized. Since PCR must work with a variety of languages, it uses a conservative, non copying garbage collector. The goals of Jagannathan and Philbin s STING system [26, 27] closely resemble ours. STING is a dialect of Scheme enhanced with primitive concurrency operators to form a substrate for custom design of concurrent symbolic computing environments. The basic data types are threads and virtual processors; the system provides flexibility in scheduling, storage ....
S. Jagannathan and J. Philbin. A foundation for an efficient multi-threaded scheme system. In Proc. 1992 ACM Conference on Lisp and Functional Programming, pages 345--357, June 1992.
....is the restructuring of the traditional monolithic operating system kernel into independent servers running on top of a minimal micro kernel [50] This approach results in modular and flexible operating systems. Also operating systems can be written in high level programming languages like Scheme [65]. However, these advantages come at a price: microkernel based modular operating systems do not provide performance comparable to monolithic ones. With the Synthesis kernel, Pu and his group have shown that microkernel based operating systems can be optimized by generating specialized kernel ....
S. Jagannathan and J. Philbin. A foundation for an efficient multi-threaded Scheme system. In ACM Conference on Lisp and Functional Programming, pages 345--357, 1992.
....processor, operations to manage its state, and spin locks for mutual exclusion. Various concurrency abstractions, including threads, are implemented using first class continuations on top of this interface. Some systems provide native support for both threads and continuations. For example, Sting [20, 21] is a dialect of Scheme that provides general, low level support for concurrency. Cooper et al. 5] describe a Mach based multiprocessor threads implementation for Standard ML. Their package is based on the Modula 2 threads package [2] It includes mechanisms for mutual exclusion, synchronization ....
Jagannathan, Suresh and Philbin, James. A foundation for an efficient multi-threaded Scheme system. In Proceedings of the 1992 Conference on Lisp and Functional Programming (June 1992). THREADS YIELD CONTINUATIONS 19
....such as MulT[13] and the higher order events of Concurrent ML[21] but have been implemented under a shared address space model. At the opposite end, traditional threads packages have been used to augment ML (MLThreads [19] but again under a shared address space model. The language STING[12], a parallel version of Scheme, falls between CML and paraML. Other 11 concurrent parallel dialects of ML include Matthews work on Concurrent Poly ML[16] and the work on LCS[3] which both resemble CML in being based on a shared global address space and synchronous communications. Extensions ....
Jagannathan, S. and Philbin, J. A Foundation for an Efficient Multi-Threaded Scheme System. In Proceedings of the ACM Conferenc on Lisp and Functional Programming, pp. 345-357, San Francisco, (1992).
....thread of control for each tuple element in its tuple argument. The runtime kernel is responsible for managing the creation and scheduling of these threads. T S k operations on tuple spaces are implemented in terms of sos operations on threads. The detailed design of sos is described elsewhere[13]; we list the salient properties of the system relevant to our discussion below: 1. Threads are treated as a Scheme abstraction with a well defined representation. As a result, most thread management routines are expressed in terms of ordinary Scheme procedures. The implementation relies heavily ....
Suresh Jagannathan and Jim Philbin. A foundation for an efficient multi-threaded scheme system. Technical Report 91-009-3-0050-2, NEC Research Institute, 1991.
....and more flexible communication abstraction. Other parallel systems that operate over separate address spaces and which support message based communication (e.g. PVM [Sunderam 1990] have similar differences. Most parallel dialects of higher order languages such as Scheme or ML (e.g. Jagannathan and Philbin [1992] and Morrisett and Tolmach [1993] execute in a single address space. These systems do not provide primitives to allow threads explicitly to communicate across disjoint address spaces. Consequently, their semantics, implementation, and targeted applications differ in many important respects from ....
Jagannathan, S. and Philbin, J. 1992. A foundation for an efficient multi-threaded scheme system. In Proceedings of the 1992 Conference on Lisp and Functional Programming. ACM, New York, 345--357.
No context found.
Suresh Jagannathan and James Philbin. A Foundation for an Efficient Multi-Threaded Scheme System. In Proceedings of the 1992 Conf. on Lisp and Functional Programming, June 1992.
....The next section provides a description of the language, and gives an informal semantics of tuple spaces and the operations permissible on them. Section 2.6 gives an example of how tuple spaces may be used to build concurrent object based systems. Section 3 gives a brief overview of Sting[22] [23], a high level operating system kernel for symbolic computing on which ts scheme is implemented. Section 4 provides benchmark results. 2. The Language Concurrency and coordination is introduced in ts scheme via the make ts primitive procedure. When applied, this procedure returns a reference to a ....
....via efficient process throttling and scheduling protocols, and (d) storage management capabilities sensitive to tuples and tuple spaces. Sting is an operating system kernel for high level symbolic programming languages that provides these capabilities. Details of the system are given in [22] [23]. The system is implemented entirely in Scheme with the exception of a few operations to save and restore thread state, and to manipulate hardware locks. Tuple space operations translate to operations on threads and ordinary Scheme data structures. Threads and virtual processors are two novel ....
Suresh Jagannathan and James Philbin. A Foundation for an Efficient Multi-Threaded Scheme System. In Proceedings of the 1992 Conf. on Lisp and Functional Programming, June 1992.
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC