21 citations found. Retrieving documents...
Suresh Jagannathan and Iim Philbin. A customizable substrate for concurrent languages. In Proceedings of the ACM SIGPLAN '92 Conference on Programming Language Design and Implementation, pages 55--67, San Francisco, CA, June 1992. 160

 Home/Search   Document Details and Download   Summary   Related Articles   Check  

This paper is cited in the following contexts:
Executing Multithreaded Programs Efficiently - Blumofe (1995)   (12 citations)  (Correct)

....results specialize to match theirs. Likewise, most of the systems oriented work on multithreading has ignored the space issue. Notable exceptions include the k bounded loops of Culler and Arvind [34, 35, 36] and the throttling mechanism of Ruggiero and Sargeant [90] These techniques and others [56, 57] have met with some success, though none have any algorithmic foundation. In algorithmic work that considers space requirements or communication costs, most prior work has focused on cases like backtrack search with no synchronization or has focused on time and space to the exclusion of ....

Suresh Jagannathan and Jim Philbin. A customizable substrate for concurrent languages. In Proceedings of the ACM SIGPLAN '92 Conference on Programming Language Design and Implementation, pages 55--67, San Francisco, California, June 1992.


Pthreads for Dynamic and Irregular Parallelism - Narlikar, Blelloch (1998)   (4 citations)  (Correct)

....is their flexibility to support multiple schedulers. Therefore, it may be necessary to simplify the task of adding new schedulers to a threads implementation. A solution is to separate the scheduler from the rest of the threads implementation via a well defined interface, similar to previous work [7, 28]. Acknowledgements We would like to thank the Berkeley NOW and Clumps projects for providing us access to their UltraSPARC based workstations and Enterprise servers. ....

Suresh Jagannathan and Jim Philbin. A customizable substrate for concurrent languages. In Proceedings of ACM Symposium on Programming Language Design and Implementation, 1992.


Procs and Locks: A Portable Multiprocessing Platform for.. - Morrisett, Tolmach (2000)   (16 citations)  (Correct)

....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 customizable substrate for concurrent languages. In Proc. ACM SIGPLAN '92 Conference on Programming Language Design and Implementation, pages 55--67, June 1992. Published as SIGPLAN Notices, 27(7), July 1992.


A Concurrent Abstract Interpreter - Weeks, Jagannathan, Philbin (1994)   (Correct)

....creation, first class locations, list data structures and higher order procedures. Synchronization in the input language is mediated via first class shared locations. The analysis computes intra and inter thread control and dataflow information. The interpreter is implemented on top of Sting [12], a multi threaded dialect of Scheme that serves as a high level operating system for modern programming languages. Keywords: Abstract Interpretation, Control flow Analysis, Concurrency, Multi threaded Computing 1. Introduction Abstract interpretation [6] has been long regarded as a promising ....

....constraint that is violated; thus, the resulting runtime behavior would be very fine grained, especially if little computation is required per node. We rejected this implementation, however, because it is not amenable to runtime optimizations such as lazy task creation [18] or thread absorption [12] that can be effectively used in certain instances to obviate the cost of fine grained parallelism on stock multiprocessor platforms. These optimizations reduce the overhead of creating many execution contexts for fine grained tasks by allowing threads that exhibit manifest data dependencies with ....

[Article contains additional citation context not shown here]

Suresh Jagannathan and James Philbin. A Customizable Substrate for Concurrent Languages. In ACM SIGPLAN '91 Conference on Programming Language Design and Implementation, pages 55--67, June 1992.


Procs and Locks: A Portable Multiprocessing Platform for.. - Morrisett, Tolmach (1993)   (16 citations)  (Correct)

....di erence in processor speed, locking and unlocking an MP mutex takes only 6 sec on the SGI versus 46 sec 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 speci cally intended as a substrate for building higher level parallel computing environments. STING s basic data types are threads and virtual processors; the system provides exibility in scheduling, storage allocation and thread migration policies while ....

S. Jagannathan and J. Philbin. A customizable substrate for concurrent languages. In Proc. ACM SIGPLAN '92 Conference on Programming Language Design and Implementation, pages 55-67, June 1992. Published as SIGPLAN Notices, 27(7), July 1992.


Space-Efficient Scheduling of Multithreaded Computations - Blumofe, Leiserson (1993)   (30 citations)  (Correct)

....for Computer Science, 545 Technology Square, Cambridge, Massachusetts, 02139 (cel mit.edu) 2 R. D. BLUMOFE AND C. E. LEISERSON memory capacity of the machine [15, 22, 24, 39, 43] To date, the space requirements of multithreaded computations have been managed with heuristics or not at all [14, 15, 22, 24, 26, 32, 39, 43]. In this paper, we use algorithmic techniques to address the problem of managing storage for multithreaded computations. Our goal is to develop scheduling algorithms that expose sufficient parallelism to obtain linear speedup, but without exposing so much parallelism that the space requirements ....

S. Jagannathan and J. Philbin, A customizable substrate for concurrent languages, in Proceedings of the ACM SIGPLAN '92 Conference on Programming Language Design and Implementation, San Francisco, California, June 1992, pp. 55--67.


A Portable Multiprocessor Interface for Standard ML of New.. - Morrisett, Tolmach (1992)   (1 citation)  (Correct)

....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 customizable substrate for concurrent languages. In Proc. ACM SIGPLAN '92 Conference on Programming Language Design and Implementation, pages 55--67, June 1992. Published as SIGPLAN Notices, 27(7), July 1992.


Cilk: An Efficient Multithreaded Runtime System - Blumofe, Joerg, Kuszmaul.. (1995)   (199 citations)  (Correct)

....folding, graphic rendering, backtrack search, and the Socrates chess program, which won third prize in the 1994 ACM International Computer Chess Championship. 1 Introduction Multithreading has become an increasingly popular way to implement dynamic, highly asynchronous, concurrent programs [1, 8, 9, 10, 11, 12, 15, 19, 21, 22, 24, 25, 28, 33, 34, 36, 39, 40]. A multithreaded system provides the programmer with a means to create, synchronize, and schedule threads. Although the schedulers in many of these runtime systems seem to perform well in practice, none provide users with a guarantee of application performance. Cilk is a runtime system whose ....

Suresh Jagannathan and Jim Philbin. A customizable substrate for concurrent languages. In Proceedings of the ACM SIGPLAN '92 Conference on Programming Language Design and Implementation, pages 55--67, San Francisco, California, June 1992.


The Cilk System for Parallel Multithreaded Computing - Joerg (1996)   (33 citations)  (Correct)

....processors. For the applications we implemented this system executes our code with little overhead and achieves good speedups. Although the scheduler in PCM seems to perform well in practice, as with other runtime systems [ABLL91, CRRH93, CGH94, CAL 89, CD88, CSS 91, FLA94, Hal85, HWW93, JP92, Kal90, KC93, KHM89, Nik93, Nik94, RSL93, TBK93, VR88] the PCM system does not provide users with any guarantees of application performance. When a user writes a program, there is no way for him to know for sure what the performance of the code will be. If his code performs poorly, the user has ....

Suresh Jagannathan and Jim Philbin. A customizable substrate for concurrent languages. In Proceedings of the ACM SIGPLAN '92 Conference on Programming Language Design and Implementation, pages 55--67, San Francisco, California, June 1992.


Cilk: An Efficient Multithreaded Runtime System - Blumofe, Joerg, Kuszmaul.. (1995)   (199 citations)  (Correct)

....protein folding, graphic rendering, backtrack search, and the Socrates chess program, which won second prize in the 1995 ICCA World Computer Chess Championship. 1 Introduction Multithreading has become an increasingly popular way to implement dynamic, highly asynchronous, concurrent programs [1, 9, 10, 11, 12, 13, 16, 21, 23, 24, 26, 27, 30, 36, 37, 39, 42, 43]. This research was supported in part by the Advanced Research Projects Agency under Grants N00014 94 1 0985 and N00014 92 J 1310. Robert Blumofe was supported in part by an ARPA High Performance Computing Graduate Fellowship. Keith Randall is supported in part by a Department of Defense NDSEG ....

Jagannathan, S. and Philbin, J. A customizable substrate for concurrent languages. In Proceedings of the ACM SIGPLAN '92 Conference on Programming Language Design and Implementation, pp. 55--67, San Francisco, California, Jun. 1992.


The COLA Approach: A Coordination Language for.. - Aguilar, Hirsbrunner.. (1994)   (2 citations)  (Correct)

....creation and communication facilities (based on an unification mechanism) Although the Linda model is very attractive, our experience showed that a global space approach is not suitable for massive parallelism. Therefore, CoLa introduces locality as a fundamental paradigm. The recent work of [Ja92] is closer to CoLa in the sense that the coordination mechanisms rely on functionality offered by the new operating system generation, e.g. Mach and Chorus. Other coordination languages and programming models [Bal89, Ban91] have been proposed: ffl PROFIT [Ka92] within the context of an object ....

S. Jagannathan, Jim Philbin. "A Customizable Substrate for Concurrent Languages". SIGPLAN '92 Conference on Programming Language Design and Implementation, San Francisco, California, June 17-19, 1992. SIGPLAN Notices, vol. 27, no. 7, July 1992, pp. 55-67.


Threads Yield Continuations - Kumar, Bruggeman, Dybvig (1997)   (Correct)

....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 Customizable Substrate for Concurrent Languages. In ACM SIGPLAN '91 Conference on Programming Language Design and Implementation (June 1992).


LISP AND SYMBOLIC COMPUTATION: An International Journal.. - Ts Scheme Distributed   Self-citation (Jagannathan)   (Correct)

No context found.

Suresh Jagannathan and James Philbin. A Customizable Substrate for Concurrent Languages. In ACM SIGPLAN '92 Conf. on Programming Language Design and Implementation, June 1992.


An Overview of the STING Operating System - Philbin   Self-citation (Philbin)   (Correct)

....T is already loaded in the physical memory and caches of the processor, so evaluating in its context will cause fewer cache and page faults. Second, the value computed by T will already be in the cache when T resumes evaluating. 6. 0 Conclusion Sting is a platform for building efficient[7][8] asynchronous programming primitives and experimenting with new parallel programming paradigms. In addition, the design also allows different concurrency models to be evaluated competitively. Sting has proven to be an efficient and expressive environment for implementing both parallel ....

Suresh Jagannathan and James Philbin. A Customizable Substrate for Concurrent Languages. In ACM SIGPLAN '91 Conference on Programming Language Design and Implementation, June 1992.


High-Level Abstractions for Efficient Concurrent Systems - Jagannathan, Philbin   Self-citation (Jagannathan Philbin)   (Correct)

....Higher order procedures are used to implement thread creation and synchronization operations, message passing, and customizable thread schedulers. Continuations 2 are used to implement state transition operations, exception handling, and important storage optimizations. Earlier reports on Sting [17, 18] focussed primarily on program methodology and paradigms, discussing how one might express and use lightweight threads of control in a high level programming language such as Scheme. In this paper, we discuss systemslevel concerns within the Sting context, concentrating on the role of ....

....in this state until the invocation of its thunk yields a result, at which point its state becomes determined. Absorbed threads are an important specialization of evaluating threads used to optimize fine grained programs in which threads exhibit significant data dependencies among one another[17]. Users manipulate threads via a set of procedures and syntactic forms defined by a thread controller (TC) which implements synchronous state transitions on a thread s state. The TC is written entirely in Scheme with the exception of two primitive operations to save and restore registers. ....

[Article contains additional citation context not shown here]

Suresh Jagannathan and James Philbin. A Customizable Substrate for Concurrent Languages. In ACM SIGPLAN '91 Conference on Programming Language Design and Implementation, June 1992.


Virtual Topologies: A New Concurrency Abstraction for.. - Philbin, Jagannathan, ..   Self-citation (Jagannathan Philbin)   (Correct)

....with the value yielded by another thread T 2 , we can map T 1 and T 2 on the same virtual processor. In fine grained programs where processors are busy most of the time, the ability to schedule data dependent threads on the same processor leads to opportunities for improved thread granularity [10, 14, 23]. 5. Dynamic Topologies: Certain algorithms have a process structure that unfolds as the computation progresses; adaptive tree algorithms [12] are a good example. These algorithms are best executed on topologies that permit dynamic creation and destruction of virtual processors. The remainder of ....

....containing the physical processor to which this VP is mapped, and references to exception handlers, scheduler procedures, and various thread queues. Figure 7 gives some baseline costs for creating and managing virtual processors. Our implementation of virtual topologies was built as part of Sting [10, 16] intended to serve as a high level operating system for high level programming languages such as (define (pp map left child vp) let ( index (vp address vp) pos ( 2 index) 1) shift (mod pos num pps) if ( pos num pps) move left shift) move right shift) define ....

[Article contains additional citation context not shown here]

Suresh Jagannathan and James Philbin. A Customizable Substrate for Concurrent Languages. In ACM SIGPLAN '91 Conference on Programming Language Design and Implementation, June 1992.


Locality Abstractions for Parallel and Distributed Computing - Suresh Jagannathan Computer (1994)   (1 citation)  Self-citation (Jagannathan)   (Correct)

....optimizations for shared locations in the context of a system such as Sting s. 2 Sting Overview Sting is a parallel dialect of Scheme[3] designed to serve as a high level operating system for modern symbolic parallel programming languages. A detailed description of its implementation is given in [19, 20, 28]; we concentrate here on features explicitly designed to exploit locality. The abstract architecture of Sting (see Figure 1) is organized hierarchically as a layer of abstractions. The lowest level abstraction is a physical machine. A physical machine consists of a collection of physical ....

....chooses one child at random to be mapped onto the same physical processor as its parent in the virtual topology. Internal threads in the process tree generated by this program yield as their value a sorted sub list; because of the topology mapping used, more opportunities for thread absorption [19], or task stealing [26] present themselves relative to an implementation that performs round robin or random allocation of threads to processors. This is because at least one child thread is allocated on the same virtual processor as its parent; since the child will not execute before the parent ....

Suresh Jagannathan and James Philbin. A Customizable Substrate for Concurrent Languages. In ACM SIGPLAN '91 Conference on Programming Language Design and Implementation, June 1992.


Thread Scheduling Cache Locality - Philbin, Edler, Anshus, Douglas, Li (1996)   (23 citations)  Self-citation (Philbin)   (Correct)

.... ideas on Monitors provided the foundation for concurrent programming with threads in programming languages [22, 30] The existence of multiprocessors have motivated several efforts to design and implement kernel and user level thread packages [4, 7, 9, 13, 15] and very lightweight thread packages [25, 31]. However, none of these efforts have addressed the issue of scheduling threads for cache locality. 6 Limitations The method described in this paper has several limitations. First of all, it attempts to reduce misses only for the largest cache (the cache connecting to the DRAM system) The ....

Suresh Jagannathan and James Philbin. A Customizable Substrate for Concurrent Languages. In Proceedings of ACM SIGPLAN '92 Conference on Programming Languages Design and Implementation, 1992.


Efficient Support for Multiple Concurrency Paradigms in Modern .. - James Philbin   Self-citation (Jagannathan Philbin)   (Correct)

No context found.

Suresh Jagannathan and James Philbin. A Customizable Substrate for Concurrent Languages. In ACM SIGPLAN '91 Conference on Programming Language Design and Implementation, June 1992.


TS/Scheme: Distributed Data Structures in Lisp - Jagannathan (1994)   Self-citation (Jagannathan)   (Correct)

....programs. 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 ....

....computing 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 ....

[Article contains additional citation context not shown here]

Suresh Jagannathan and James Philbin. A Customizable Substrate for Concurrent Languages. In ACM SIGPLAN '92 Conf. on Programming Language Design and Implementation, June 1992.


Unknown - Symbolic Parallel Programming   (Correct)

No context found.

Suresh Jagannathan and Iim Philbin. A customizable substrate for concurrent languages. In Proceedings of the ACM SIGPLAN '92 Conference on Programming Language Design and Implementation, pages 55--67, San Francisco, CA, June 1992. 160

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