All MPI-1, MPI-2, MPID, CH3, and PMI functions are listed below.
Fill in an estimate of time in days (min, max, avg), the order of
priority for implementing it (1: first, 2: second), and then your name
against the functions you are going to implement. A set of functions
can have the same priority if they are going to be implemented
together. Make separate lists for multiple implementations of the same
functions, for example for TCP and VIA. 

Format:

Function, min, max, avg, priority, your name, dependencies,

For example: 

MPI_Init, 1, 3, 2, 1, Peter
MPI_Finalize, 2, 4, 3, 1, Peter, MPI_Init

Completed routines are marked as 

routine,,,,your name,dependencies,actual time,date-done,limitations

e.g.,

MPI_Comm_rank,1,1,2,2,Bill,,.1,2/15/02

If you don't know the time, use done:
MPI_Comm_rank,1,1,2,2,Bill,,done,

Dependencies should list routines, separated by blanks.

Limitations can indicate that a routine is mostly done but doesn't do
everything yet.  For example, if only intracommunicators are handled,
MPI_Bcast,,,,,Bill,,done,intracomm only
For blocks of routines with different versions, surround them as a block 
with 
BEGIN blockname
....
END blockname

For example,
BEGIN forker
PMI_Init,,,,,Rusty,,done
...
END forker
This file is read by an automated tool; don't use commas except in this
header and within a schedule line.  

Points of contact:
The following people are the first points of contact on the various 
parts.  Most of these actually involve multiple people; for example,
Brian, David, and Bill are also involved in RMA.

Rusty - BNR/PMI/MPD
Rob R - IO/Datatypes
Rajeev - Collective/RMA/Dynamic
David - Xfer/Windows/MM
Brian - CH3
Bill  - build environment/error handling

Bill is also the tie-breaker and final decision maker

*the following line ends the header*
--------------------------------------------------------------------

MPI-1 functions

Point-to-Point Communication

MPI_Send,,,,,Brian,,done
MPI_Recv,,,,,Brian,,done
MPI_Get_count,,,,,Bill,,done
MPI_Bsend,,,,,Bill,MPI_Buffer_attach and MPID_tBsend,10/14/02
MPI_Ssend,,,,,Brian,,done,
MPI_Rsend,,,,,Brian,,done,
MPI_Buffer_attach,1,1,1,2,Bill,,.1,3/31/02
MPI_Buffer_detach,,,,,Bill,MPI_Buffer_attach,10/14/02
MPI_Isend,,,,,David/Brian,,done
MPI_Ibsend,,,,,Bill,MPI_Buffer_attach,10/14/02
MPI_Issend,,,,,Brian,,done,
MPI_Irsend,,,,,Brian,,done,
MPI_Irecv,,,,,David/Brian,,done
MPI_Wait,,,,,Brian,,done
MPI_Test,,,,,Brian/David/Bill,,done
MPI_Request_free,.1,.15,.2,,Brian,,.1,05/14/02
MPI_Waitany,,,,,Brian,,done
MPI_Testany,,,,,Brian,,done
MPI_Waitall,,,,,Brian,,done
MPI_Testall,,,,,Brian,,done
MPI_Waitsome,,,,,Brian,,done
MPI_Testsome,,,,,Brian,,done
MPI_Iprobe,,,,,Brian,,.1,04/23/2002
MPI_Probe,,,,,Brian,,.1,04/23/2002
MPI_Cancel,.25,.5,1,,Brian,,.1,11/15/02
MPI_Test_cancelled,.1,.15,.2,,Brian,,.1,04/26/02
MPI_Send_init,,,,,Brian,,done,
MPI_Bsend_init,,,,,Bill,,done
MPI_Ssend_init,,,,,Brian,,done,
MPI_Rsend_init,,,,,Brian,,done,
MPI_Recv_init,,,,,Brian,,done,
MPI_Start,,,,,Brian,,done,
MPI_Startall,,,,,Brian,,done,
MPI_Sendrecv,,,,,Brian,,.1,5/1/02
MPI_Sendrecv_replace,,,,,Brian,,done,

Datatypes

MPI_Type_contiguous,1,1,2,1,Rob,,1,08/16/2002,
MPI_Type_vector,1,1,2,1,Rob,,1,08/14/2002,
MPI_Type_hvector,1,1,2,1,Rob,,1,08/15/2002,
MPI_Type_indexed,1,1,2,1,Rob,,1,10/02/2002,
MPI_Type_hindexed,1,1,2,1,Rob,,done,10/30/2002,
MPI_Type_struct,1,1,2,1,Rob,,,10/30/2002,
MPI_Address,1,1,1,2,Bill,,.1,1/7/02
MPI_Type_extent,1,1,2,1,Rob,,1,08/15/2002,
MPI_Type_size,1,1,2,1,Rob,,1,08/15/2002,
MPI_Type_lb,1,1,2,1,Rob,,1,10/08/2002,
MPI_Type_ub,1,1,2,1,Rob,,1,10/08/2002,
MPI_Type_commit,1,1,2,1,Rob,,,done
MPI_Type_free,1,1,2,1,Rob,,,done
MPI_Get_elements,,,,,Rob,,,done
MPI_Pack,1,1,2,1,Rob,,1,08/16/2002,
MPI_Unpack,1,1,2,1,Rob,,1,08/16/2002,
MPI_Pack_size,1,1,2,1,Rob,,1,08/15/2002,

Collective Communication

MPI_Barrier,,,,,Bill,,done
MPI_Bcast,,,,,Rajeev,,done
MPI_Gather,,,,,Rajeev,,done
MPI_Gatherv,,,,,Rajeev,,done
MPI_Scatter,,,,,Rajeev,,done
MPI_Scatterv,,,,,Rajeev,,done
MPI_Allgather,,,,,Rajeev,,done
MPI_Allgatherv,,,,,Rajeev,,done
MPI_Alltoall,,,,,Rajeev,,done
MPI_Alltoallv,,,,,Rajeev,,done
MPI_Reduce,,,,,Rajeev,,done
MPI_Op_create,1,3,2,3,Bill,,.1,5/21/02
MPI_Op_free,1,3,2,3,Bill,,.1,5/21/02
MPI_Allreduce,,,,,Rajeev,,done
MPI_Reduce_scatter,,,,,Rajeev,,done
MPI_Scan,,,,,Rajeev,,done

Groups; Contexts; Communicators

MPI_Group_size,1,1,1,2,Bill,,.05,3/23/02
MPI_Group_rank,1,1,1,2,Bill,,.05,3/23/02
MPI_Group_translate_ranks,1,1,1,2,Bill,,.1,3/25/02
MPI_Group_compare,1,1,1,2,Bill,,.2,3/25/02
MPI_Comm_group,.2,.2.,.2,2,Bill,,.2,9/5/02
MPI_Group_union,1,1,1,2,Bill,,.2,3/25/02
MPI_Group_intersection,1,1,1,2,Bill,,.1,3/25/02
MPI_Group_difference,1,1,1,2,Bill,,.1,3/25/02
MPI_Group_incl,1,1,1,2,Bill,,.2,3/23/02
MPI_Group_excl,1,1,1,2,Bill,,.1,3/25/02
MPI_Group_range_incl,1,1,1,2,Bill,,.1,3/25/02
MPI_Group_range_excl,1,1,1,2,Bill,,.1,3/25/02
MPI_Group_free,1,1,1,2,Bill,,.05,3/25/02
MPI_Comm_size,.1,.1,.1,2,Bill,,.1,done
MPI_Comm_rank,.1,.1,.1,2,Bill,,.1,done
MPI_Comm_compare,.2,.2,.2,2,Bill,,.2,9/6/02
MPI_Comm_dup,.2,.2,.2,2,Bill,,.2,8/27/02,
MPI_Comm_create,.2,.2,.2,2,Bill,,.2,9/4/02
MPI_Comm_split,.1,.2,.3,2,Bill,,.2,9/11/02
MPI_Comm_free,.1,.1,.1,2,Bill,,.1,9/11/02
MPI_Comm_test_inter,1,1,1,3,Bill,,.05,3/29/02
MPI_Comm_remote_size,,,,,Bill,,.1,done
MPI_Comm_remote_group,.1,.1,.1,2,Bill,,.1,9/5/02
MPI_Intercomm_create,1,2,3,2,Bill,,2,11/08/02
MPI_Intercomm_merge,1,2,3,2,Bill,,2,11/08/02
MPI_Keyval_create,1,1,1,2,Bill,MPI_Comm_create_keyval,.1,3/31/02
MPI_Keyval_free,1,1,1,2,Bill,MPI_Comm_free_keyval,.1,/3/31/02
MPI_Attr_put,1,1,1,2,Bill,MPI_Comm_set_attr,.05,3/29/02
MPI_Attr_get,1,1,1,2,Bill,MPI_Comm_get_attr,.05,3/25/02
MPI_Attr_delete,1,1,1,2,Bill,MPI_Comm_delete_attr,.05/3/29/02

Process Topologies

MPI_Cart_create,1,1,1,2,Bill,MPI_Comm_create_keyval and MPI_Comm_split,.2,9/11/02
MPI_Dims_create,1,2,3,,Bill,,2,11/04/02
MPI_Graph_create,1,1,1,2,Bill,MPI_Comm_create_keyval and MPI_Comm_split,.2,9/11/02
MPI_Topo_test,1,1,1,2,Bill,MPI_Comm_get_attr,.1,3/25/02
MPI_Graphdims_get,1,1,1,2,Bill,MPI_Comm_get_attr,.1,3/25/02
MPI_Graph_get,1,1,1,2,Bill,MPI_Comm_get_attr,.1,3/25/02
MPI_Cartdim_get,1,1,1,2,Bill,MPI_Comm_get_attr,.1,3/31/02
MPI_Cart_get,1,1,1,2,Bill,MPI_Comm_get_attr,.1,3/25/02
MPI_Cart_rank,1,1,1,2,Bill,MPI_Comm_get_attr,.05,3/26/02
MPI_Cart_coords,1,1,1,2,Bill,MPI_Comm_get_attr,.05,3/26/02
MPI_Graph_neighbors_count,1,1,1,2,Bill,MPI_Comm_get_attr,.05,3/26/02
MPI_Graph_neighbors,1,1,1,2,Bill,MPI_Comm_get_attr,.05,3/26/02
MPI_Cart_shift,1,1,1,2,Bill,MPI_Comm_get_attr,.1,4/23/02
MPI_Cart_sub,1,1,1,2,Bill,MPI_Comm_get_attr,.1,9/11/02
MPI_Cart_map,1,1,1,2,Bill,MPI_Comm_get_attr,.05,3/26/02
MPI_Graph_map,1,1,1,2,Bill,MPI_Comm_get_attr,.2,11/4/02

Environmental Inquiry

MPI_Get_processor_name,1,1,1,2,Bill,,.05,5/21/02
MPI_Errhandler_create,1,1,1,2,Bill,,.05,3/8/02
MPI_Errhandler_set,1,1,1,2,Bill,MPI_Errhandler_create,.05,3/8/02
MPI_Errhandler_get,1,1,1,2,Bill,MPI_Errhandler_create,.05,3/8/02
MPI_Errhandler_free,1,1,1,2,Bill,MPI_Errhandler_create,.1,3/8/02
MPI_Error_string,1,3,2,2,Bill,,.3,9/12/02
MPI_Error_class,1,3,2,2,Bill,,.05,1/7/02
MPI_Wtime,1,1,1,1,Bill,MPID_Wtime,.2,9/20/01
MPI_Wtick,1,1,1,1,Bill,MPID_Wtick,.2,9/20/01
MPI_Init,,,,,,,done,
MPI_Finalize,,,,,,,done,
MPI_Initialized,1,1,1,3,Bill,,.1,1/7/02
MPI_Abort,1,1,1,2,Bill,,.05,3/31/02

Profiling

MPI_Pcontrol,1,1,1,3,Bill,,.05,3/25/02

Version

MPI_Get_version,1,1,1,3,Bill,,.05,3/25/02

-------------------------------------------------

MPI-2 functions

Miscellaneous

MPI_Alloc_mem,,,,,Rajeev,,done,trivially
MPI_Comm_c2f,1,1,1,2,Bill,,.01,3/25/02
MPI_Comm_create_errhandler,1,1,1,2,Bill,,.1,3/8/02
MPI_Comm_f2c,1,1,1,2,Bill,,.01,3/25/02
MPI_Comm_get_errhandler,1,1,1,2,Bill,MPI_Comm_create_errhandler,.05,3/8/02
MPI_Comm_set_errhandler,1,1,1,2,Bill,MPI_Comm_create_errhandler,.05,3/8/02
MPI_File_c2f,1,1,1,2,Bill,,.01,3/25/02
MPI_File_create_errhandler,1,1,1,2,Bill,,.05,3/8/02
MPI_File_f2c,1,1,1,2,Bill,,.01,3/25/02
MPI_File_get_errhandler,1,1,1,2,Bill,MPI_File_create_errhandler,.05,3/8/02
MPI_File_set_errhandler,1,1,1,2,Bill,MPI_File_create_errhandler,.05,3/8/02
MPI_Finalized,.2,.2,.2,2,Bill,,.2,1/7/02
MPI_Free_mem,,,,,Rajeev,,done,trivially
MPI_Get_address,1,1,1,2,Bill,,.1,1/7/02
MPI_Group_c2f,1,1,1,2,Bill,,.01,3/25/02
MPI_Group_f2c,1,1,1,2,Bill,,.01,3/25/02
MPI_Info_c2f,0,0,0,2,Bill,,0.01,9/20/01
MPI_Info_create,1,1,1,2,Bill,,.5,1/7/02
MPI_Info_delete,1,1,1,2,Bill,MPI_Info_create,.2,1/7/02
MPI_Info_dup,1,1,1,2,Bill,MPI_Info_create,.2,1/15/02
MPI_Info_f2c,0,0,0,2,Bill,,0.01,9/20/01
MPI_Info_free,1,1,1,2,Bill,MPI_Info_create,.1,1/7/02
MPI_Info_get,1,1,1,2,Bill,MPI_Info_create,.1,1/15/02
MPI_Info_get_nkeys,1,1,1,2,Bill,MPI_Info_create,.1,1/7/02
MPI_Info_get_nthkey,1,1,1,2,Bill,MPI_Info_create,.1,1/7/02
MPI_Info_get_valuelen,1,1,1,2,Bill,MPI_Info_create,.1,1/7/02
MPI_Info_set,1,1,1,2,Bill,MPI_Info_create,.1,1/7/02
MPI_Op_c2f,1,1,1,2,Bill,,.01,3/25/02
MPI_Op_f2c,1,1,1,2,Bill,,.01,3/25/02
MPI_Pack_external,
MPI_Pack_external_size,
MPI_Request_c2f,1,1,1,2,Bill,,.01,3/25/02
MPI_Request_f2c,1,1,1,2,Bill,,.01,3/25/02
MPI_Request_get_status,1,1,1,2,Bill,,done
MPI_Status_c2f,1,1,1,2,Bill,,.01,3/25/02
MPI_Status_f2c,1,1,1,2,Bill,,.01,3/25/02
MPI_Type_c2f,1,1,1,2,Bill,,.01,3/25/02
MPI_Type_create_darray,,,,,,MPIR_Type_compute_extent
MPI_Type_create_hindexed,,,,,Rob,,,10/30/2002
MPI_Type_create_hvector,,,,,Rob,,,10/30/2002
MPI_Type_create_indexed_block,,,,,Rob,,,done
MPI_Type_create_resized,,,,,Rob,MPIR_Type_compute_extent
MPI_Type_create_struct,,,,,Rob,,,10/30/2002
MPI_Type_create_subarray,,,,,,MPIR_Type_compute_extent
MPI_Type_f2c,1,1,1,2,Bill,,.01,3/25/02
MPI_Type_get_extent,1,1,2,1,Rob,,.01,10/09/02
MPI_Type_get_true_extent,1,1,2,1,Rob,,.01,10/09/02
MPI_Unpack_external,
MPI_Win_c2f,1,1,1,2,Bill,,.01,3/25/02
MPI_Win_create_errhandler,1,1,1,2,Bill,,.05,3/8/02
MPI_Win_f2c,1,1,1,2,Bill,,.01,3/25/02
MPI_Win_get_errhandler,1,1,1,2,Bill,MPI_Win_create_errhandler,.05,3/8/02
MPI_Win_set_errhandler,1,1,1,2,Bill,MPI_Win_create_errhandler,.05,3/8/02

Dynamic Processes

MPI_Comm_spawn,,,,,Rajeev,,done,for sock channel and single process group
MPI_Comm_spawn_multiple,,,,,Rajeev,,done,for sock channel and single process group
MPI_Comm_get_parent,,,,,Rajeev,,done

MPI_Open_port,,,,,Rajeev,,done,for sock channel and single process group
MPI_Close_port,,,,,Rajeev,,done,for sock channel and single process group
MPI_Comm_accept,,,,,Rajeev,,done,for sock channel and single process group
MPI_Comm_connect,,,,,Rajeev,,done,for sock channel and single process group
MPI_Comm_disconnect,1,1,1,1,Rajeev,MPID_Comm_disconnect

MPI_Lookup_name,1,3,2,2,Rajeev,,done
MPI_Publish_name,1,3,2,2,Rajeev,,done
MPI_Unpublish_name,1,3,2,2,Rajeev,,done
MPI_Comm_join,1,3,2,3,Rajeev,MPID_Comm_join

One-sided communication

MPI_Win_create,,,,,Rajeev,,done
MPI_Win_free,,,,,Rajeev,,done
MPI_Put,,,,,Rajeev,,done,for ch3 channel - works on sock not shmem
MPI_Get,,,,,Rajeev,,done,for ch3 channel - works on sock not shmem
MPI_Accumulate,,,,,Rajeev,,done,for ch3 channel - works on sock not shmem
MPI_Win_fence,,,,,Rajeev,,done,for ch3 channel - works on sock not shmem

MPI_Win_post,,,,,Rajeev,,done,for ch3 channel - works on sock not shmem
MPI_Win_start,,,,,Rajeev,,done,for ch3 channel - works on sock not shmem
MPI_Win_complete,,,,,Rajeev,,done,for ch3 channel - works on sock not shmem
MPI_Win_wait,,,,,Rajeev,,done,for ch3 channel - works on sock not shmem
MPI_Win_test,,,,,Rajeev,,done,for ch3 channel - works on sock not shmem
MPI_Win_get_group,,,,,Rajeev,,done

MPI_Win_lock,1,1,1,1,Rajeev,MPID_Win_lock
MPI_Win_unlock,1,1,1,1,Rajeev,MPID_Win_unlock

Extended Collective

MPI_Alltoallw,,,,,Rajeev,,done
MPI_Exscan,,,,,Rajeev,,done

Extended Interfaces

MPI_Add_error_class,1,3,2,2,Bill,,.1,6/4/03
MPI_Add_error_code,1,3,2,2,Bill,,.1,6/4/03
MPI_Add_error_string,1,3,2,2,Bill,MPI_Add_error_code and MPI_Add_error_class,.1,6/4/03
MPI_Comm_call_errhandler,1,1,1,2,Bill,MPI_Comm_create_errhandler,.1,3/8/02
MPI_Comm_create_keyval,1,1,1,2,Bill,,.2,3/17/02
MPI_Comm_delete_attr,1,1,1,2,Bill,,.1,3/29/02
MPI_Comm_free_keyval,1,1,1,2,Bill,,.1,3/17/02
MPI_Comm_get_attr,1,1,1,2,Bill,MPI_Comm_create_keyval,.1,3/18/02
MPI_Comm_get_name,1,1,1,3,Bill,,.05,done
MPI_Comm_set_attr,1,1,1,2,Bill,MPI_Comm_create_keyval,.2,3/18/02
MPI_Comm_set_name,1,1,1,3,Bill,,.05,8/28/02
MPI_File_call_errhandler,1,1,1,2,Bill,MPI_File_create_errhandler,.05,3/8/02
MPI_Grequest_complete,1,1,1,2,Bill,,.05,4/26/02,req #212 - does not handle a freed request properly
MPI_Grequest_start,1,1,1,2,Bill,,.05,4/26/02
MPI_Init_thread,,,,,,,done,provided not set correctly in CH3 device
MPI_Is_thread_main,.2,.2,.2,2,Bill,,.2
MPI_Query_thread,.2,.2,.2,2,Bill,,.2,1/7/02
MPI_Status_set_cancelled,,,,,Brian,,.1,4/26/02
MPI_Status_set_elements,.1,.1,.1,2,Bill,,.1,11/16/02
MPI_Type_create_keyval,.1,.1,.1,3,Bill,,.1,2/3/03
MPI_Type_delete_attr,.1,.1,.1,3,Bill,,.1,2/3/03
MPI_Type_dup,,,,,Rob,,,done
MPI_Type_free_keyval,.1,.1,.1,3,Bill,,.1,2/3/03
MPI_Type_get_attr,.1,.1,.1,3,Bill,,.1,2/3/03
MPI_Type_get_contents,,,,,Rob,,,done
MPI_Type_get_envelope,,,,,Rob,,,done
MPI_Type_get_name,1,1,1,3,Bill,,.15,3/8/02
MPI_Type_set_attr,.1,.1,.1,3,Bill,,.1,2/3/03
MPI_Type_set_name,1,1,1,3,Bill,,.15,3/8/02
MPI_Win_call_errhandler,1,1,1,2,Bill,MPI_Win_create_errhandler,.05,3/8/02
MPI_Win_create_keyval,.1,.1,.1,3,Bill,,.1,4/26/03
MPI_Win_delete_attr,.1,.1,.1,3,Bill,,.1,4/26/03
MPI_Win_free_keyval,.1,.1,.1,3,Bill,,.1,4/26/03
MPI_Win_get_attr,.1,.1,.1,3,Bill,,.1,4/26/03
MPI_Win_get_name,1,1,1,3,Bill,,done
MPI_Win_set_attr,.1,.1,.1,3,Bill,,.1,4/26/03
MPI_Win_set_name,1,1,1,3,Bill,,done

I/O

MPI_File_close,,,,,,,done,1/07/02,
MPI_File_delete,,,,,,,done,1/07/02,
MPI_File_get_amode,,,,,,,done,1/07/02,
MPI_File_get_atomicity,,,,,,,done,1/07/02,
MPI_File_get_byte_offset,,,,,,,done,1/07/02,
MPI_File_get_group,,,,,,,done,1/07/02,
MPI_File_get_info,,,,,,,done,1/07/02,
MPI_File_get_position,,,,,,,done,1/07/02,
MPI_File_get_position_shared,,,,,,,done,1/07/02,
MPI_File_get_size,,,,,,,done,1/07/02,
MPI_File_get_type_extent,,,,,,,done,1/07/02,
MPI_File_get_view,,,,,,,done,1/07/02,
MPI_File_iread,,,,,,,done,1/07/02,
MPI_File_iread_at,,,,,,,done,1/07/02,
MPI_File_iread_shared,,,,,,,done,1/07/02,
MPI_File_iwrite,,,,,,,done,1/07/02,
MPI_File_iwrite_at,,,,,,,done,1/07/02,
MPI_File_iwrite_shared,,,,,,,done,1/07/02,
MPI_File_open,,,,,,,done,1/07/02,
MPI_File_preallocate,,,,,,,done,1/07/02,
MPI_File_read,,,,,,,done,1/07/02,
MPI_File_read_all,,,,,,,done,1/07/02,
MPI_File_read_all_begin,,,,,,,done,1/07/02,
MPI_File_read_all_end,,,,,,,done,1/07/02,
MPI_File_read_at,,,,,,,done,1/07/02,
MPI_File_read_at_all,,,,,,,done,1/07/02,
MPI_File_read_at_all_begin,,,,,,,done,1/07/02,
MPI_File_read_at_all_end,,,,,,,done,1/07/02,
MPI_File_read_ordered,,,,,,,done,1/07/02,
MPI_File_read_ordered_begin,,,,,,,done,1/07/02,
MPI_File_read_ordered_end,,,,,,,done,1/07/02,
MPI_File_read_shared,,,,,,,done,1/07/02,
MPI_File_seek,,,,,,,done,1/07/02,
MPI_File_seek_shared,,,,,,,done,1/07/02,
MPI_File_set_atomicity,,,,,,,done,1/07/02,
MPI_File_set_info,,,,,,,done,1/07/02,
MPI_File_set_size,,,,,,,done,1/07/02,
MPI_File_set_view,,,,,,,done,1/07/02,
MPI_File_sync,,,,,,,done,1/07/02,
MPI_File_write,,,,,,,done,1/07/02,
MPI_File_write_all,,,,,,,done,1/07/02,
MPI_File_write_all_begin,,,,,,,done,1/07/02,
MPI_File_write_all_end,,,,,,,done,1/07/02,
MPI_File_write_at,,,,,,,done,1/07/02,
MPI_File_write_at_all,,,,,,,done,1/07/02,
MPI_File_write_at_all_begin,,,,,,,done,1/07/02,
MPI_File_write_at_all_end,,,,,,,done,1/07/02,
MPI_File_write_ordered,,,,,,,done,1/07/02,
MPI_File_write_ordered_begin,,,,,,,done,1/07/02,
MPI_File_write_ordered_end,,,,,,,done,1/07/02,
MPI_File_write_shared,,,,,,,done,1/07/02,
MPI_Register_datarep,

Language Bindings

MPI_Type_create_f90_complex
MPI_Type_create_f90_integer
MPI_Type_create_f90_real
MPI_Type_match_size,1,1,1,3,Bill,,done

--------------------------------------------------

MPID functions for single-threaded, homogeneous CH3 device
with simple error checking

Data Structures

MPID_Request_kind,,,,,Bill?,,done
MPID_Request,,,,,Brian/others,,done
MPID_Comm,,,,,Brian/others,,done
MPIDI_VC,,,,,Brian/others,,done
MPIDI_CH3_Pkt_type_t,,,,,Brian,,done
MPIDI_CA_t,,,,,Brian,,done
MPIDI_Process_t,,,,,Brian,,done

Basic Point-to-Point

MPID_Send,,,,,Brian,,done
MPID_Ssend,,,,,Brian,,done
MPID_Rsend,,,,,Brian,,done
MPID_Isend,,,,,Brian,,done
MPID_Issend,,,,,Brian,,done
MPID_Irsend,,,,,Brian,,done
MPID_tBsend,,,,,Brian
MPID_Recv,,,,,Brian,,done
MPID_Irecv,,,,,Brian,,done
MPID_Request_free,,,,,Brian,,done
MPID_Cancel_send,,,,,Brian,,done,
MPID_Cancel_recv,,,,,Brian,,done,
MPID_Iprobe,,,,,Brian,,done
MPID_Probe,,,,,Brian,,done

Persistent Point-to-Point

MPID_Send_init,,,,,Brian,,done,
MPID_Ssend_init,,,,,Brian,,done,
MPID_Rsend_init,,,,,Brian,,done,
MPID_Recv_init,,,,,Brian,,done,
MPID_Startall,,,,,Brian,,done,

Requests

MPID_Request_create,,,,,Brian,,done
MPID_Request_set_complete,,,,,Brian,,done
MPID_Request_release,,,,,Brian,,done

Progress Engine

MPID_Progress_start,,,,,Brian,,done
MPID_Progress_end,,,,,Brian,,done
MPID_Progress_test,,,,,Brian,,done
MPID_Progress_wait,,,,,Brian,,done
MPID_Progress_poke,,,,,Brian,,done

Starting and stopping

MPID_Init,,,,,Brian,MPIDI_CH3_Init,done
MPID_Finalize,,,,,Brian,MPIDI_CH3_Finalize,done
MPID_Abort,,,,,Brian,PMI_Abort

CH3 packet and data handlers

MPIDI_CH3U_Handle_recv_pkt,,,,,Brian,,done
MPIDI_CH3U_Handle_recv_req,,,,,Brian,,done
MPIDI_CH3U_Handle_send_req,,,,,Brian,,done

CH3 request utilities

MPIDI_CH3U_Request_create,,,,,Brian,,done
MPIDI_CH3U_Request_complete,,,,,Brian,,done
MPIDI_CH3U_Request_destroy,,,,,Brian,,done
MPIDI_CH3U_Request_decrement_cc,,,,,Brian,,done

CH3 receive queue utilities

MPIDI_CH3U_Request_FU,,,,,Brian,,done
MPIDI_CH3U_Request_FDU,,,,,Brian,,done
MPIDI_CH3U_Request_FDU_or_AEP,,,,,Brian,,done
MPIDI_CH3U_Request_DP,,,,,Brian,,done
MPIDI_CH3U_Request_FDP,,,,,Brian,,done
MPIDI_CH3U_Request_FDP_or_AEU,,,,,Brian,,done

CH3 data processing utilities

MPIDI_CH3U_Request_load_send_iov,,,,,Brian,,done
MPIDI_CH3U_Request_load_recv_iov,,,,,Brian,,done
MPIDI_CH3U_Request_unpack_uebuf,,,,,Brian,,done
MPIDI_CH3U_Request_unpack_srbuf,,,,,Brian,,done
MPIDI_CH3U_Buffer_copy,,,,,Brian,,done
MPIDI_CH3U_SRBuf_alloc,,,,,Brian,,done
MPIDI_CH3U_SRBuf_free,,,,,Brian,,done

RMA

Initially for the CH3 TCP channel device; no asynchronous agent; no passive target:

MPID_Win_create,,,,,Rajeev,,done,for ch3 channel - works on sock not shmem
MPID_Win_free,,,,,Rajeev,,done,for ch3 channel - works on sock not shmem
MPID_Put,,,,,Rajeev,,done,for ch3 channel - works on sock not shmem
MPID_Get,,,,,Rajeev,,done,for ch3 channel - works on sock not shmem
MPID_Accumulate,,,,,Rajeev,,done,for ch3 channel - works on sock not shmem
MPID_Win_fence,,,,,Rajeev,,done,for ch3 channel - works on sock not shmem

MPID_Win_post,,,,,Rajeev,,done,for ch3 channel - works on sock not shmem
MPID_Win_start,,,,,Rajeev,,done,for ch3 channel - works on sock not shmem
MPID_Win_complete,,,,,Rajeev,,done,for ch3 channel - works on sock not shmem
MPID_Win_wait,,,,,Rajeev,,done,for ch3 channel - works on sock not shmem
MPID_Win_test,,,,,Rajeev,,done,for ch3 channel - works on sock not shmem

For passive target; initally asynchronous agent using threads:

MPID_Win_lock,5,15,10,2,Rajeev,thread-safe-progress-engine
MPID_Win_unlock,5,15,10,2,Rajeev,thread-safe-progress-engine


Dynamic Processes

MPID_Comm_spawn_multiple,,,,,Rajeev,,done,for sock channel and single process group
MPID_Comm_get_parent,,,,,Rajeev,,done,for sock channel and single process group

MPID_Open_port,,,,,Rajeev,,done,for sock channel and single process group
MPID_Close_port,,,,,Rajeev,,done,for sock channel and single process group
MPID_Comm_accept,,,,,Rajeev,,done,for sock channel and single process group
MPID_Comm_connect,,,,,Rajeev,,done,for sock channel and single process group
MPID_Comm_disconnect,5,10,7,1,Rajeev,need connection-close support in channel

MPID_Lookup_name,5,10,7,2,Rajeev,TBD
MPID_Publish_name,5,10,7,2,Rajeev,TBD
MPID_Unpublish_name,5,10,7,2,Rajeev,TBD
MPID_Comm_join,5,10,7,3,Rajeev,TBD

Collective Communication

Device Hooks

MPID_Dev_xxx_create_hook,
MPID_Dev_xxx_destroy_hook,

-------------------------------------------------

CH3 functions for single-threaded TCP channel without error checking

Data Structures

MPID_Request,,,,,Brian,,done
MPIDI_VC,,,,,Brian,,done
MPIDI_CA_t,,,,,Brian,,done
MPIDI_CH3_Pkt_type_t,,,,,Brian,,done
MPIDI_CH3I_Process_t,,,,,Brian,,done
MPIDI_CH3I_Process_group_t,,,,,Brian,,done

Requests

MPIDI_CH3_Request_create,,,,,Brian,,done
MPIDI_CH3_iStartMsg,,,,,Brian,done
MPIDI_CH3_iStartmsgv,,,,,Brian,done
MPIDI_CH3_Request_add_ref,,,,,Brian,,done
MPIDI_CH3_Request_release_ref,,,,,Brian,,done
MPIDI_CH3_Request_destroy,,,,,Brian,,done
MPIDI_CH3_Cancel_send,,,,,Brian

Send/Recv

MPIDI_CH3_iSend,,,,,Brian,,done
MPIDI_CH3_iSendv,,,,,Brian,,done
MPIDI_CH3_iWrite,,,,,Brian,,done,no immediate write
MPIDI_CH3_iRead,,,,,Brian,,done,no immediate read

Progress

MPIDI_CH3_Progress_start,,,,,Brian,,done
MPIDI_CH3_Progress_end,,,,,Brian,,done
MPIDI_CH3_Progress,,,,,Brian,,done
MPIDI_CH3_Progress_poke,,,,,Brian,,done
MPIDI_CH3_Progress_signal_completion,,,,,Brian,,done

Startup/shutdown

MPIDI_CH3_Init,,,,1,Brian,,done
MPIDI_CH3_Finalize,,,,1,Brian,,done
MPIDI_CH3_InitParent,,,,,Brian

Internal routines

MPIDI_CH3I_Progress_init,,,,,Brian,,done
MPIDI_CH3I_Progress_finalize,,,,,Brian
MPIDI_CH3I_Listener_get_port,,,,,Brian,,done
MPIDI_CH3I_TCP_post_connect,,,,,Brian,,done
MPIDI_CH3I_TCP_post_write,,,,,Brian,,done
MPIDI_CH3I_TCP_post_read,,,,,Brian,,done
MPIDI_CH3I_Request_adjust_iov,,,,,Brian,,done

RMA

MPIDI_CH3_iPut,
MPIDI_CH3_iStartRead,

-------------------------------------------------

MPID functions - multi-method device

BEGIN mmdevice

Basic Point-to-Point

MPID_Send,
MPID_Ssend,
MPID_Rsend,
MPID_Isend,
MPID_Issend,
MPID_Irsend,
MPID_tBsend,
MPID_Recv,
MPID_Irecv,
MPID_Request_free,
MPID_Cancel_send,
MPID_Cancel_recv,
MPID_Iprobe,
MPID_Probe,

Persistent Point-to-Point

MPID_Send_init,
MPID_Ssend_init,
MPID_Rsend_init,
MPID_Recv_init,
MPID_Startall,

Progress Engine

MPID_Progress_start,
MPID_Progress_end,
MPID_Progress_test,
MPID_Progress_wait,
MPID_Progress_poke,

Starting and stopping

MPID_Init,
MPID_Finalize,
MPID_Abort,

RMA

MPID_Win_create,
MPID_Win_free,
MPID_Put,
MPID_Get,
MPID_Accumulate,
MPID_Win_fence,

MPID_Progress_test_handles_rma_requests

MPID_Win_post,
MPID_Win_start,
MPID_Win_complete,
MPID_Win_wait,
MPID_Win_test,

MPID_Win_lock,
MPID_Win_unlock,

Dynamic Processes

MPID_Comm_spawn,
MPID_Comm_spawn_multiple,
MPID_Comm_get_parent,

MPID_Open_port,
MPID_Close_port,
MPID_Comm_accept,
MPID_Comm_connect,
MPID_Comm_disconnect,

MPID_Lookup_name,
MPID_Publish_name,
MPID_Unpublish_name,
MPID_Comm_join,

Collective Communication

Device Hooks

MPID_Dev_xxx_create_hook,
MPID_Dev_xxx_destroy_hook,

END mmdevice

-------------------------------------------------

Multi-method internal device functions

mm_open_port,
mm_close_port,
mm_accept,
mm_connect,
mm_send,
mm_recv,
mm_close,

mm_request_alloc,
mm_request_free,

mm_car_init,
mm_car_finalize,
mm_car_alloc,
mm_car_free,

mm_vc_init,
mm_vc_finalize,
mm_vc_from_communicator,
mm_vc_from_context,
mm_vc_alloc,
mm_vc_connect_alloc,
mm_vc_free,

mm_choose_buffer,
mm_get_buffers_tmp,
mm_get_buffers_vec,

mm_post_recv,
mm_post_read_pkt,
mm_post_send,

mm_cq_test,
mm_cq_wait,
mm_cq_enqueue,

mm_inc_cc,
mm_dec_cc,

xfer_init,
xfer_recv_op,
xfer_recv_mop_op,
xfer_recv_forward_op,
xfer_recv_mop_forward_op,
xfer_forward_op,
xfer_send_op,
xfer_replicate_op,
xfer_start,

TCP method

tcp_init,
tcp_get_business_card,
tcp_can_connect,
tcp_post_connect,
tcp_post_read,
tcp_merge_with_unexpected,
tcp_post_write,
tcp_make_progress,
tcp_car_enqueue,
tcp_car_dequeue,
tcp_read,
tcp_write,

Shared memory method

shm_init,
shm_write,
shm_read,
shm_get_buffers,
shm_get_business_card,
shm_make_progress,
shm_can_connect,
shm_post_connect,
shm_merge_with_unexpected,
shm_post_write,

VIA method

via_init,
via_read,
via_write,
via_get_buffers,
via_get_business_card,
via_make_progress,
via_can_connect,
via_post_connect,
via_merge_with_unexpected,
via_post_write,

-------------------------------------------------

PMI functions - Forker implementation

BEGIN forker

PMI_Init,,,,,Rusty,,done
PMI_Get_size,,,,,Rusty,,done
PMI_Get_rank,,,,,Rusty,,done
PMI_Barrier,,,,,Rusty,,done
PMI_Finalize,,,,,Rusty,,done

PMI_KVS_Get_my_name,,,,,Rusty,,done
PMI_KVS_Get_name_length_max,,,,,Rusty,,done
PMI_KVS_Get_key_length_max,,,,,Rusty,,done
PMI_KVS_Get_value_length_max,,,,,Rusty,,done
PMI_KVS_Create,,,,,Rusty,,done
PMI_KVS_Destroy,,,,,Rusty,,done
PMI_KVS_Put,,,,,Rusty,,done
PMI_KVS_Commit,,,,,Rusty,,done
PMI_KVS_Get,,,,,Rusty,,done
PMI_KVS_iter_first,,,,,Rusty,,done
PMI_KVS_iter_next,,,,,Rusty,,done

PMI_Spawn_multiple,2,6,4,2,Rusty,other PMI fcns
PMI_Args_to_info,1,3,2,2,Rusty

END forker
-------------------------------------------------

PMI functions - MPD implementation (Python MPD or C MPD?)

BEGIN MPD

PMI_Init,
PMI_Get_size,
PMI_Get_rank,
PMI_Barrier,
PMI_Finalize,

PMI_KVS_Get_my_name,
PMI_KVS_Get_name_length_max,
PMI_KVS_Get_key_length_max,
PMI_KVS_Get_value_length_max,
PMI_KVS_Create,
PMI_KVS_Destroy,
PMI_KVS_Put,
PMI_KVS_Commit,
PMI_KVS_Get,
PMI_KVS_iter_first,
PMI_KVS_iter_next,

PMI_Spawn_multiple,
PMI_Args_to_info,

END MPD

-------------------------------------------------

PMI functions - winmpd implementation

BEGIN winmpd

PMI_Init,,,,,David,,done
PMI_Get_size,,,,,David,,done
PMI_Get_rank,,,,,David,,done
PMI_Barrier,,,,,David,,done
PMI_Finalize,,,,,David,,done

PMI_KVS_Get_my_name,,,,,David,,done
PMI_KVS_Get_name_length_max,,,,,David,,done
PMI_KVS_Get_key_length_max,,,,,David,,done
PMI_KVS_Get_value_length_max,,,,,David,,done
PMI_KVS_Create,,,,,David,,done
PMI_KVS_Destroy,,,,,David,,done
PMI_KVS_Put,,,,,David,,done
PMI_KVS_Commit,,,,,David,,done
PMI_KVS_Get,,,,,David,,done
PMI_KVS_iter_first,,,,,David,,done
PMI_KVS_iter_next,,,,,David,,done

PMI_Spawn_multiple,,,,,David,,done
PMI_Args_to_info,,,,,David,,done

END winmpd

