% % BibTeX entry for \cite{brp:1999h} % % Copyright (c) 2004 by Bruno R. Preiss, P.Eng. % % URL:http://www.brpreiss.com/papers/published/1999/iscope/paper.bib % % % % Copyright (c) 1999 by Bruno R. Preiss, P.Eng. % % $Author: brpreiss $ % $Date: 2001/12/09 19:22:40 $ % $RCSfile: abbrev.bib,v $ % $Revision: 1.22 $ % % $Id: abbrev.bib,v 1.22 2001/12/09 19:22:40 brpreiss Exp $ % @string{ablex = "Ablex Publishing Corporation"} @string{acm = "Association for Computing Machinery, Inc."} @string{acmsurveys = "ACM Computing Surveys"} @string{acmtomacs = "ACM Trans.\ on Modeling and Computer Simulation"} @string{acmtoplas = "ACM Trans.\ on Programming Languages and Systems"} @string{ass = " Ann.\ Simulation Symp."} @string{brp = "Bruno R. Preiss"} @string{cacm = "Communications of the ACM"} @string{ccece = " Canadian Conf.\ on Elec.\ and Comp.\ Eng."} @string{ccng = "Computer Communications Networks Group"} @string{ccvlsi = " Canadian Conf.\ on VLSI"} @string{cips = "Canadian Information Processing Society"} @string{csece = "Canadian Society for Electrical and Computer Engineering"} @string{ece = "Department of Electrical and Computer Engineering"} @string{ee = "Department of Electrical Engineering"} @string{eic = "Engineering Institute of Canada"} @string{home = "http://www.brpreiss.com"} @string{icpp = " Int.\ Conf.\ on Parallel Processing"} @string{ieee = "Institute of Electrical and Electronics Engineers, Inc."} @string{ieeecomp = "IEEE Computer"} @string{ieeemicro = "IEEE Micro"} @string{ieeetc = "IEEE Trans.\ on Computers"} @string{ieeetcad = "IEEE Trans.\ on Computer-Aided Design"} @string{ieeetpds = "IEEE Trans.\ on Parallel and Distributed Systems"} @string{ieeetse = "IEEE Trans.\ on Software Engineering"} @string{ijcs = "International Journal in Computer Simulation"} @string{infocom = " INFOCOM"} @string{isca = " Int.\ Symp.\ on Computer Architecture"} @string{jpdc = "Journal of Parallel and Distributed Computing"} @string{pads = " Workshop on Parallel and Distributed Simulation"} @string{pennstate = "Pennsylvania State University"} @string{proc = "Proc.\ "} @string{sc = "Simulation Councils, Inc."} @string{scs = "Society for Computer Simulation"} @string{scsmcds = " SCS Multiconf. on Distributed Simulation"} @string{tscs = "Trans.\ of the Society for Computer Simulation"} @string{ut = "University of Toronto"} @string{uw = "University of Waterloo"} @string{wiley = "John Wiley \& Sons"} @string{wsc = " Winter Simulation Conf."} % % Copyright (c) 1999, 2000 by Bruno R. Preiss, P.Eng. % % $Author: brpreiss $ % $Date: 2004/11/13 13:48:41 $ % $RCSfile: preiss.bib,v $ % $Revision: 1.204 $ % % $Id: preiss.bib,v 1.204 2004/11/13 13:48:41 brpreiss Exp $ % @inproceedings{brp:1999h, url = home # "/papers/published/1999/iscope/paper.pdf", bibtex = home # "/papers/published/1999/iscope/paper.bib", author = {Dhrubajyoti Goswami and Ajit Singh and Bruno Richard Preiss}, title = {Using Object-Oriented Techniques for Realizing Parallel Architectural Skeletons}, booktitle = proc # {ISCOPE '99}, address = {San Francisco, CA}, month = Dec, year = 1999, copyright = {Dhrubajyoti Goswami and Ajit Singh and Bruno Richard Preiss}, abstract = { The concept of design patterns has recently emerged as a new paradigm in the context of object-oriented design methodology. Similar ideas are being explored in other areas of computing. In the parallel computing domain, design patterns describe recurring parallel computing problems and their solution strategies. Starting with the late 1980's, several pattern-based systems have been built for facilitating parallel application development. However, most of these systems use patterns in ad hoc manners, thus lacking a generic or standard model for using and intermixing different patterns. This substantially hampers the usability of such systems. Lack of flexibility and extensibility are some of the other major concerns associated with most of these systems. In this paper, we propose a generic (i.e., pattern- and application-independent) model for realizing and using parallel design patterns. The term {\it architectural skeleton} is used to represent the application independent, re-usable set of attributes associated with a pattern. The model can provide most of the functionalities of low level message passing libraries, such as PVM or MPI, plus the benefits of the patterns. This results in tremendous flexibility to the user. It turns out that the model is an ideal candidate for an object-oriented style of design and implementation. It is currently implemented as a C++ template-library without requiring any language extension. The generic model, together with the object-oriented and library-based approach, facilitates extensibility. The paper focuses on the design and implementation issues of the model. } }