>Name of institution: Computer Science Department Rochester Institute of Technology Rochester, NY 14623-0887 >Name of contact person: Nan Schaller/Andrew Kitchen >Address for contact person: Ross Memorial Bldg., 1 Lomb Memorial Dr. >E-mail Address: ncs@cs.rit.edu/atk@cs.rit.edu >Telephone number: (716) 475-2139/(716) 475-6540 >Access to what computers? various workstations/88 node transputer system >Degree offered? B.S./M.S. Computer Science >Short Curricul(um)(a) Statement: The RIT computer science degrees offer broad core of courses with concentrations available in a variety of areas including parallel computing. >Remarks relevant to courses offered (e.g., to list courses rather than > Research activities: Parallel computing topics are being integrated throughout the curriculum. The parallel computing concentration consists of two courses: The first course, Introduction to Parallel Computing, is designed to provide students with the flavor of parallel computing. The course presents the basic issues of parallel computing: parallel architectures, algorithms, languages, network topology, and granularity. The inter-relationship between architecture and algorithm design, and the effect of this relationship on efficiency is also discussed. This course encourages the student to implement parallel algorithms and experiment with them, to understand the influence of such issues as connection topology on problem solution, and to discover the practical limitations of parallel computing. The second course, Parallel Algorithms and Program Design, presents the principal trends in parallel algorithm design and investigates the interplay between architecture and algorithmic structure. This material is developed through the study of specific applications, focusing on the algorithms that have proved valuable in these areas. Some of the topics covered in this course are: the influence of models of parallel computation on program design, metrics for the analysis of parallel algorithms, one-dimensional versus multi-dimensional problems, algorithmic complexity, sorting and searching, matrix operations, combinatorial and graph theoretic problems, graphics processing, Fourier transforms, and dynamical systems. The relationship between algorithmic topology and hardware topology in distributed memory systems is investigated in some detail.