Abstract
Stampede is a programming system for emerging scalable applications on clusters. The goal is to simplify the programming of applications that are interactive (often using vision and speech), that have highly dynamic computation structures, and that must run on platforms consisting of a mix of front-end machines and high-performance back-end servers with a variety of processors and interconnects. We approach this goal by retaining, as far as possible, the well-known POSIX threads model currently in use on SMPs.
Stampede offers cluster-wide threads with optional loose temporal synchrony, and consistently-cached distributed shared objects. A higher-level sharing/ communication mechanism called Space-Time Memory, with automatic garbage collection, is particularly suited to the complex buffer management that arises in real-time analysis hierarchies based on video and audio input. In this paper, we describe an example of our target class of applications, and describe features of Stampede that support cluster-based implementations of such applications.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Arvind, R. S. Nikhil, and K. K. Pingali. I-Structures: Data Structures for Parallel Computing. ACM Transactions on Programming Languages and Systems, 11(4):598–632, October 1989.
B. N. Bershad, M. J. Zekauskas, and W. A. Sawdon. The Midway Distributed Shared Memory System. In Proceedings of the IEEE CompCon Conference, 1993. Also CMU Technical Report CMU-CS-93-119.
A. D. Christian and B. L. Avery. Digital Smart Kiosk Project. In ACM SIGCHI’ 98, pages 155–162, Los Angeles, CA, April 18-23 1998.
D. E. Culler, A. Dusseau, S. C. Goldstein, A. Krishnamurthy, S. Lumetta, T. von Eicken, and K. Yelick. Parallel Programming in Split-C. In Proc. Supercomputing 93, Portland, Oregon, November 1993.
R. Gillett. MEMORY CHANNEL Network for PCI: An Optimized Cluster Inter-connect. IEEE Micro, pages 12–18, February 1996.
IEEE. Threads standard POSIX 1003. 1c-1995 (also ISO/IEC 9945-1:1996), 1996.
L. Kontothanassis, G. Hunt, R. Stets, N. Hardavellas, M. Cierniak, S. Parthasarathy, W. Meira, S. Dwarkadas, and M. Scott. VM-Based Shared Memory on Low-Latency Remote-Memory-Access Networks. In Proc. Intl. Symp. on Computer Architecture (ISCA) 1997, Denver, Colorado, June 1997.
R. S. Nikhil. Cid: A Parallel “Shared-memory” C for Distributed Memory Machines. In Proc. 7th. An. Wkshp. on Languages and Compilers for Parallel Computing (LCPC), Ithaca, NY, Springer-Verlag LNCS 892, pages 376–390, August 8-10 1994.
R. S. Nikhil and D. Panariti. CLF: A common Cluster Language Framework for Parallel Cluster-based Programming Languages. Technical Report (forthcoming), Digital Equipment Corporation, Cambridge Research Laboratory, 1998.
J. M. Rehg, K. Knobe, U. Ramachandran, and R. S. Nikhil. Integrated Task and Data Parallelism for Dynamic Applications. In LCR98: Fourth Workshop on Languages, Compilers, and Run-time Systems for Scalable Computers, Carnegie Mellon University, Pittsburgh, PA, USA, May 28-30 1998.
J. M. Rehg, M. Loughlin, and K. Waters. Vision for a Smart Kiosk. In Computer Vision and Pattern Recognition, pages 690–696, San Juan, Puerto Rico, June 17-19 1997.
J. M. Rehg, U. Ramachandran, R. H. Halstead, Jr., C. Joerg, L. Kontothanassis, and R. S. Nikhil. Space-Time Memory: A Parallel Programming Abstraction for Dynamic Vision Applications. Technical Report CRL 97/2, Digital Equipment Corp. Cambridge Research Lab, 1997.
A. Singla, U. Ramachandran, and J. Hodgins. Temporal Notions of Syncrhonization and Consistency in Beehive. In Proc. 9th An. ACM Symp. on Parallel Algorithms and Architectures (SPAA), June 1997.
K. Waters, J. M. Rehg, M. Loughlin, S. B. Kang, and D. Terzopoulos. Visual Sensing of Humans for Active Public Interfaces. In R. Cipolla and A. Pentland, editors, Computer Vision for Human-Machine Interaction. Cambridge University Press, 1998. In press.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1999 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Nikhil, R.S., Ramachandran, U., Rehg, J.M., Halstead, R.H., Joerg, C.F., Kontothanassis, L. (1999). Stampede A Programming System for Emerging Scalable Interactive Multimedia Applications. In: Chatterjee, S., et al. Languages and Compilers for Parallel Computing. LCPC 1998. Lecture Notes in Computer Science, vol 1656. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-48319-5_6
Download citation
DOI: https://doi.org/10.1007/3-540-48319-5_6
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-66426-0
Online ISBN: 978-3-540-48319-9
eBook Packages: Springer Book Archive