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 - RMA
David - Xfer/Windows/MM
Brian - CH3
Bill  - Collective/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,,,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,does not understand padding rules
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,,,,needs refcts
MPI_Type_free,1,1,2,1,Rob,,,,needs refcts
MPI_Get_elements,
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,,intracomm, basic datatypes, and homogeneous only
MPI_Gather,,,,,Rajeev,,done,,intracomm, basic datatypes, and homogeneous only
MPI_Gatherv,,,,,Rajeev,,done,,intracomm, basic datatypes, and homogeneous only
MPI_Scatter,,,,,Rajeev,,done,,intracomm, basic datatypes, and homogeneous only
MPI_Scatterv,,,,,Rajeev,,done,,intracomm, basic datatypes, and homogeneous only
MPI_Allgather,,,,,Rajeev,,done,,intracomm, basic datatypes, and homogeneous only
MPI_Allgatherv,,,,,Rajeev,,done,,intracomm, basic datatypes, and homogeneous only
MPI_Alltoall,,,,,Rajeev,,done,,intracomm, basic datatypes, and homogeneous only
MPI_Alltoallv,,,,,Rajeev,,done,,intracomm, basic datatypes, and homogeneous only
MPI_Reduce,,,,,Rajeev,,done,,intracomm, basic datatypes, and homogeneous only
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,,intracomm, basic datatypes, and homogeneous only
MPI_Reduce_scatter,,,,,Rajeev,,done,,intracomm, basic datatypes, and homogeneous only
MPI_Scan,,,,,Rajeev,,done,,intracomm, basic datatypes, and homogeneous only

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,
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,
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,
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,,,,,,MPIR_Type_compute_extent
MPI_Type_create_resized,,,,,,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,1,3,2,3,Rajeev,MPID_Comm_spawn
MPI_Comm_spawn_multiple,1,3,2,3,Rajeev,MPID_Comm_spawn_multiple
MPI_Comm_get_parent,1,3,2,3,Rajeev,MPID_Comm_get_parent

MPI_Open_port,1,3,2,4,Rajeev,MPID_Open_port
MPI_Close_port,1,3,2,4,Rajeev,MPID_Close_port
MPI_Comm_accept,1,3,2,4,Rajeev,MPID_Comm_accept
MPI_Comm_connect,1,3,2,4,Rajeev,MPID_Comm_connect
MPI_Comm_disconnect,1,3,2,4,Rajeev,MPID_Comm_disconnect

MPI_Lookup_name,1,3,2,5,Rajeev,MPID_Lookup_name
MPI_Publish_name,1,3,2,5,Rajeev,MPID_Publish_name
MPI_Unpublish_name,1,3,2,5,Rajeev,MPID_Unpublish_name
MPI_Comm_join,1,3,2,5,Rajeev,MPID_Comm_join

One-sided communication

MPI_Win_create,1,3,2,1,Rajeev,MPID_Win_create
MPI_Win_free,1,3,2,1,Rajeev,MPID_Win_free
MPI_Put,1,3,2,1,Rajeev,MPID_Put
MPI_Get,1,3,2,1,Rajeev,MPID_Get
MPI_Accumulate,1,3,2,1,Rajeev,MPID_Accumulate
MPI_Win_fence,1,3,2,1,Rajeev,MPID_Win_fence

MPI_Win_post,1,3,2,2,Rajeev,MPID_Win_post
MPI_Win_start,1,3,2,2,Rajeev,MPID_Win_start
MPI_Win_complete,1,3,2,2,Rajeev,MPID_Win_complete
MPI_Win_wait,1,3,2,2,Rajeev,MPID_Win_wait
MPI_Win_test,1,3,2,2,Rajeev,MPID_Win_test
MPI_Win_get_group,1,3,2,2,Rajeev,

MPI_Win_lock,1,3,2,3,Rajeev,MPID_Win_lock
MPI_Win_unlock,1,3,2,3,Rajeev,MPID_Win_unlock

Extended Collective

MPI_Alltoallw,,,,,Rajeev,,done,,intracomm, basic datatypes, and homogeneous only
MPI_Exscan,,,,,Rajeev,,done,,intracomm, basic datatypes, and homogeneous only

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
MPI_Grequest_start,1,1,1,2,Bill,,.05,4/26/02
MPI_Init_thread,,,,,,,done,
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,
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,
MPI_Type_get_envelope,
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,
MPI_Win_set_attr,.1,.1,.1,3,Bill,,.1,4/26/03
MPI_Win_set_name,1,1,1,3,Bill,

I/O

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

Language Bindings

MPI_Type_create_f90_complex
MPI_Type_create_f90_integer
MPI_Type_create_f90_real
MPI_Type_match_size,

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

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,2,4,3,1,Rajeev,
MPID_Win_free,1,3,2,1,Rajeev,
MPID_Put,2,6,4,1,Rajeev,MPID_Isend
MPID_Get,1,3,2,1,Rajeev,MPID_Irecv/MPID_Put
MPID_Accumulate,1,3,2,1,Rajeev,MPID_Put
MPID_Win_fence,2,6,4,1,Rajeev,MPID_Progress_test_handles_rma_requests

MPID_Progress_test_handles_rma_requests,10,20,15,1,Rajeev,MPID_Progress_test_handles_isendirecv

MPID_Win_post,1,3,2,2,Rajeev,
MPID_Win_start,1,3,2,2,Rajeev,
MPID_Win_complete,2,6,4,2,Rajeev,MPID_Win_fence
MPID_Win_wait,2,6,4,2,Rajeev,MPID_Win_fence
MPID_Win_test,1,3,2,2,Rajeev,MPID_Win_wait

For passive target; initally asynchronous agent using threads:

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


Dynamic Processes

MPID_Comm_spawn,5,15,10,3,Rajeev,PMI/MPD/MPI_Intercomm_create/MPI_Info_xxx
MPID_Comm_spawn_multiple,2,4,3,3,Rajeev,PMI/MPD/MPI_Comm_spawn
MPID_Comm_get_parent,1,3,2,3,Rajeev,MPI_Comm_spawn

MPID_Open_port,,,,4,Rajeev,TBD
MPID_Close_port,,,,4,Rajeev,TBD
MPID_Comm_accept,,,,4,Rajeev,TBD
MPID_Comm_connect,,,,4,Rajeev,TBD
MPID_Comm_disconnect,,,,4,Rajeev,TBD

MPID_Lookup_name,,,,5,Rajeev,TBD
MPID_Publish_name,,,,5,Rajeev,TBD
MPID_Unpublish_name,,,,5,Rajeev,TBD
MPID_Comm_join,,,,5,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,done,,,David

END winmpd

