Volume 7, Issue 1 -
Spring/Summer 1999

Volume 6, Issue 3
Fall 1998

Volume 6, Issue 2
Spring/Summer 1998

Volume 6, Issue 1
Winter 1998

Volume 5, Issue 4
Fall 1997

Volume 5, Issue 3
Summer 1997

Volume 5, Issue 2
Spring 1997

Volume 5, Issue 1
Winter 1997

Volume 4, Issue 4
Fall 1996

Volume 4, Issue 3
Summer 1996

Volume 4, Issue 2
Spring 1996

Volume 4, Issue 1
Winter 1996

Volume 3, Issue 4
Fall 1995

Volume 3, Issue 3
Summer 1995

Volume 3, Issue 2
Spring 1995

Volume 3, Issue 1
January 1995

Volume 2, Issue 4
October 1994

Volume 2, Issue 3
July 1994

Volume 2, Issue 2
April 1994

Volume 2, Issue 1
January 1994

Volume 1, Issue 4
October 1993

Volume 1, Issue 3
July 1993

Volume 1, Issue 2
April 1993

Volume 1, Issue 1
January 1993

Electronic Text - Parallel Programming for the Masses

How can parallel programming be made available to students in high schools and community colleges, to small businesses, and to small computer-aided design groups? The CRPC's Parallel Paradigm Integration group is taking an evolutionary approach to this problem based on three tenets.

First, the group will provide libraries and/or extensions of languages used by students, small businesses and others--languages such as C, Pascal, C++ and Fortran. Beginners should be able to move gradually from their programming styles to parallel programming. Second, parallel programs will run on the platforms that are most widely used--PC networks--in addition to supercomputers. Again, the group emphasizes an evolutionary path that does not require massive expenditures or massive retraining to begin experimenting and benefiting from parallel computing. Thirdly, the group employs all the tools available on the PC, including multimedia, to develop an environment on the PC that encourages people to experiment with parallel computing.

The resulting product, "electronic text" (eText), is a multimedia text that executes on PCs and is designed to help people learn about parallel programming by using "archetypes" or software "schemas." The text is based on the idea that many parallel programs use common software archetypes or templates. Programmers can browse through a library of archetypes such as divide-and-conquer, dynamic programming, and spectral methods. Once they understand the archetype, they can look at several applications that use the archetype. These applications emphasize how the algorithm for the application is developed from the archetype in a systematic fashion. Finally, programmers can look at sequential and parallel code for each application in C, Pascal, Fortran, and C++ to compare the systematic development of the code from the archetype.

The three learning stages (archetypes, applications for archetypes, and codes for archetypes) are designed to help students try out parallel codes. Programmers can also browse the text in other ways. For example, programmers can look at a given application and identify different archetypes used to solve that application. The text is interactive, uses animation to help explain parallel algorithms, and uses voice annotations to allow programmers to focus on animations while listening to an explanation. The programs in the electronic text can be executed on a network of PCs, so there is no problem of working on different platforms.

Table of Contents

News | From the Director | Parallel Profile | Research Focus | Work in Progress | Education / Outreach | Resources | Calendar | CRPC Home