Collective Communication Module
Collectives Made Easy



Timothy H. Kaiser, Ph.D.

Coherent Cognition
coherentcognition.com
tkaiser@coherentcognition.com



Department of Defense
High Performance Computing Modernization Program (HPCMP)
Programming Environment and Training (PET) Activities Program.
Prime Contract No. GS04T01BFC0060
Mississippi State University Subcontract No. 0606808-01090729-24
Task Order Number: N62306-01-D-7110/0009

Two talks with a common theme


Coherent Cognition


The Problem


The Solution
Collective Communications Module


The CCM user callable routines

ccm_init ccm_close ccm_bcast ccm_barrier
ccm_reduce ccm_allreduce ccm_scatter ccm_scatterv
ccm_gather ccm_gatherv ccm_alltoall ccm_alltoallv
ccm_info ccm_testing ccm_print_warning ccm_time
ccm_uniqueccm_clear_warning

Things were done "differently"


CCM Uses Fortran 90 technologies


Fewer arguments: much simpler to use


CCM has Compile time error checking


CCM has Runtime error checking


CCM has more useful utility functions


CCM has more robust Barrier and Checkin routines


CCM API document has good examples


Hello world using CCM_MOD and MPI

CCM_MOD MPI
program ccm_init_x1 
  use ccm_mod
  call ccm_init(myid,nodes)
  write(*,*)"hello: ",myid," of ",nodes
  call ccm_close()
end program
program ccm_init_x1
  include "mpif.h"
  call mpi_init(ierr)
  call mpi_com_size(mpi_comm_world,nodes,ierr)
  call mpi_com_rank(mpi_comm_world,myid,ierr)
  write(*,*)"hello: ",myid," of ",nodes
  call mpi_finalize(ierr)
end program

Let's look at...


The API/Reference manual

*

Some examples compared to MPI

*

How do you get it?


How do you build and use it?


How do you run all of the examples?


A digression:
A Blue Horizon (IBM SP) mapping to mpprun


Create mpprun:

#!/bin/csh -f
poe $3 -nodes 1 -tasks_per_node $2 -rmpool 1 -euilib ip -euidevice en0


Tar file is in ~tkaiser/mpi_ref.tar

Interactive nodes: ssh b80login.sdsc.edu


Some notes about the distribution


SHMEM Reference Implementation


What still needs to be done?


Should this be a PTOOL's Project?


Summary


Feedback to :