Abstract
This paper introduces ThreadMill – a distributed and parallel component architecture for applications that process large volumes of streamed (time-sequenced) data, such as is the case e.g. in speech and gesture recognition applications.
Many stream-oriented applications offer ample opportunity for enhanced performance via concurrent execution, exploring a wide variety of parallel paradigms, such as task, data and pipeline parallelism. ThreadMill addresses the challenges of development and evolution of parallel and distributed applications in this domain by offering a modeling formalism, a programming framework and a runtime infrastructure. Component development and reuse, and application evolution are facilitated by the isolation of communication, concurrency, and synchronization concerns promoted by ThreadMill. A direct consequence of the novel mechanisms introduced by ThreadMill is that applications composed of reusable components can be re-targeted, unchanged, and made to run efficiently on a variety of execution environments. These environments can range e.g. from a single machine with a single processor, to a cluster of heterogeneous computational nodes, to certain classes of supercomputers. Experimental results show an eight-fold speedup when using ten nodes of an AlphaServer DS20 cluster running a proof-of-concept 2D video-based tracker for hands and face of American Sign Language signers.
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
Agha, G.A.: ACTORS: A Model of Concurrent Computation in Distributed Systems. Cambridge Press, New York (1986)
Amdahl, G.M.: Validity of single-processor approach to achieving large-scale computing capability. In: Proceedings of AFIPS Conference, Reston, VA, pp. 483–485 (1967)
Arita, D., Taniguchi, R.-i.: RPV-II:Astream-based real-time parallel vision system and its application to real-time volume reconstruction. In: Schiele, B., Sagerer, G. (eds.) ICVS 2001. LNCS, vol. 2095, pp. 174–189. Springer, Heidelberg (2001)
Barthelmess, P., Ellis, C.A.: A distributed and parallel component architecture for streamoriented applications. Technical report, University of Colorado at Boulder (2004)
Barthelmess, P., Ellis, C.A.: The Neem Platform:An evolvable framework for perceptual collaborative applications. Journal of Intelligent Information Systems (2004) (forthcoming)
Barthelmess, P.: ThreadMill:A highly configurable architecture for human communication analysis applications. PhD thesis, Computer Science Department, University of Colorado at Boulder (November 2003)
Cheyer, A., Martin, D.: The Open Agent Architecture. Journal of Autonomous Agents and Multi-Agent Systems 4(1/2), 143–148 (2001)
Fink, G., Jungclaus, N., Kummert, F., Ritter, H., Sagerer, G.: A distributed system for integrated speech and image understanding. In: International Symposium on Artificial Intelligence, Cancun, Mexico, pp. 117–126 (1996)
Firby, R.J., Kahn, R.E., Prokopopowitz, P.N., Swain, M.J.: An architecture for vision and action. In: Mellish, C. (ed.) Proceedings of the Fourteenth International Joint Conference on Artificial Intelligence, pp. 72–79. Morgan Kaufmann, San Francisco (1995)
Fran cois, A.R.J., Medioni, G.G.: A modular software architecture for realtime video processing. In: Proceedings of the International Workshop on Computer Vision Systems, Vancouver, B.C., Canada, July 2001, pp. 35–49 (2001)
Gamma, E., Halm, R., Johnson, R.E., Vlissides, J.: Design Patterns: elements of reusable object-oriented software. Addison Wesley, Reading (1995)
Gorlick, M.M., Razouk, R.R.: Using Weaves for software construction and analysis. In: Belady, L., Barstow, D., Torii, K. (eds.) Proceedings of the 13th International Conference on Software Engineering, Austin, Texas, May 1991, pp. 23–34. IEEE Computer Society Press, Los Alamitos (1991)
Jefferson, D.R.: Virtual time. ACMTransactions on Programming Languages and Systems 7(3), 404–425 (1985)
Kahn, R.A.: Perseus: An Extensible Vision System for Human-Machine Interaction. PhD thesis, University of Chicago (August 1996)
Kale, L.V., Gursoy, A.: Performance benefits of message driven executions. In: Intel Supercomputer User’s Group, St. Louis, MO (October 1993)
Kohler, M., Schröter, S., Müller, H.: The ARGUS-architecture for global computer-vision-based interaction and its application in domestic environments. In: Proc. Human Computer Interaction 1999 (HCI 1999), Munich, Germany, August 1999, pp. 296–300 (1999)
MacDonald, S., Anvik, J., Bromling, S., Schaeffer, J., Szafron, D., Tan, K.: From patterns to frameworks to parallel programs. Parallel Computing 28(12), 1663–1683 (2002)
Martínez, A.M., Wilbur, R.B., Shay, R., Kak, A.C.: Purdue RVL-SLLL ASL database for automatic recognition ofAmerican Sign Language. In: Fourth IEEE International Conference on Multimodal Interfaces, Pittsburgh, Pennsylvania, p. 167 (2002)
Mitre Corporation. Galaxy Communicator Documentation (2002)
Neptune Project, http://www.cs.ucsb.edu/projects/neptune/
Pyarali, I., Harrison, T.H., Schmidt, D.C.: Design and performance of an object-oriented framework for high-speed electronic medical imaging. Computing Systems 9(4), 331–375 (1996)
Ramachandran, U., Nikhil, R., Rehg, J.M., Angelov, Y., Paul, A., Adhikari, S., Mackenzie, K., Harel, N., Knobe, K.: Stampede: A cluster programming middleware for interactive stream-oriented applications. IEEE Transactions on Parallel and Distributed Systems, 1140–1154 (November 2003)
Rasmussen, C.: Integrating Multiple Visual Cues for Robust Tracking. PhD thesis, Yale University (2000)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2004 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Barthelmess, P., Ellis, C.A. (2004). A Distributed and Parallel Component Architecture for Stream-Oriented Applications. In: Meersman, R., Tari, Z. (eds) On the Move to Meaningful Internet Systems 2004: CoopIS, DOA, and ODBASE. OTM 2004. Lecture Notes in Computer Science, vol 3291. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-30469-2_38
Download citation
DOI: https://doi.org/10.1007/978-3-540-30469-2_38
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-23662-7
Online ISBN: 978-3-540-30469-2
eBook Packages: Springer Book Archive