What's new: MPI-like group interface Version of iCC for OSF R1.3 Version of iCC for SUNMOS R1.6 New reference manual, that includes group interface Fortran example for using group interface This is the second release of the Interprocessor Collective Communications (InterCom) Library, iCC release R2.0.0. This library is the result of an ongoing collaboration between David Payne (Intel SSD), Lance Shuler (Sandia National Laboratories), Robert van de Geijn (University of Texas at Austin), and Jerrell Watts (California Institute of Technology), funded by the Intel Research Council, and Intel SSD. Previous contributors to this project include Mike Barnett (Univ. of Idaho), Satya Gupta (Intel SSD), Rik Littlefield, and Prasenjit Mitra (now with Oracle). The library implements a comprehensive approach to collective communication. The results are best summarized by the following performance table, representative of improvements obtained on a 16 X 32 Paragon, running under R1.2 of the O/S, with iCC R2.0.0: vector NX InterCom ratio Operation length (sec) (sec) (NX/InterCom) ----------------------------------------------------------------- Broadcast 8 bytes 0.0017 0.0014 1.21 64K bytes 0.0356 0.0069 5.18 1M bytes 0.5788 0.0493 11.75 Global Sum 8 bytes 0.0032 0.0029 1.10 to all 64K bytes 0.3780 0.0195 19.35 1M bytes 5.9353 0.1791 33.15 Similar, or better, improvement is obtained under OSF R1.3, iCC R2.0.0. Attaining the improvement in performance is as easy as linking in a library that automatically translates NX collective communication calls to iCC calls. Furthermore, the iCC library gives additional functionality like scatter and gather operations, and more general "gopf" combine operations. As had been planned, an MPI-like group interface to iCC is now available. The interface lets the user create and free groups and communicators, and it gives user-defined groups complete access to the high performance routines in the iCC library. We would like to note that this library is not intended to compete with MPI. It was started as a research project into techniques required to develop high performance implementations of the MPI collective communication calls. We are making this library available as a service to the user community, with the hope that these techniques eventually are incorporated into efficient MPI implementations. Further information: http://www.cs.utexas.edu/users/rvdg/intercom Using the library: 1. Get the appropriate library from netlib. 2. Add the library to your compilation line. Ideally, the library will have been moved to your system by your system's administrator. In that case, link as follows: if77 -o main main.f -liCC -nx -lkmath icc -o main main.c -liCC -nx -lkmath Otherwise, - for the Paragon R1.2 or R1.3 (example): if77 -o main main.f iCC.parR1.?.a -nx -lkmath icc -o main main.c iCC.parR1.?.a -nx -lkmath - for the Paragon SUNMOS (example): sif77 -o main main.f iCC.SUNMOS.a -lkmath sicc -o main main.c iCC.SUNMOS.a -lkmath - for the Touchstone Delta (example): if77 -o main main.f iCC.DELTA.a -nx -lkmath icc -o main main.c iCC.DELTA.a -nx -lkmath - for the iPSC/860 (example): if77 -o main main.f iCC.IPSC.a -node -lkmath icc -o main main.c iCC.IPSC.a -node -lkmath Note: To try the library without changing NX calls, link in NXtoiCC..a INSTEAD of iCC..a. (This is not supported for SUNMOS.) Using the group interface: In an application that uses the iCC group interface, you must include the provided ".h" files: "iCC_group.h" for C applications "iCC_groupf.h" for FORTRAN applications Also, you must link in the group library by adding the group library to your command line: (example) if77 -o main main.f -liCC_group -liCC -nx -lkmath icc -o main main.c -liCC_group -liCC -nx -lkmath or if77 -o main main.f iCC_group..a iCC..a -nx -lkmath icc -o main main.f iCC_group..a iCC..a -nx -lkmath Comments: The iCC group interface will not run with the iPSC/860 version of iCC R1.0.0. In order to still provide group capability to iPSC/860 users, we are providing a version of the iCC R2.0.0 paragon implementation, which supports groups and also runs on the iPSC/860. There is no NXtoiCC library for SUNMOS due to linking errors. The linker detects and complains that there are duplicate functions defined for the NX collective ops. The library is available from netlib and via anonymous ftp (net.cs.utexas.edu, directory pub/rvdg/intercom/R2.0.0). Questions about the library should be addressed to intercom@cs.utexas.edu .