async_send(int port_id,char *buffer,int buffer_sz);
noblock_send(int port_id,char *buf,int len,TOKEN *tk);
sync_send(int port_id,void *buf,int len);
block_receive(int port_id,void *buf,int len);
noblock_receive(int port_id,char *buf,int len,TOKEN *tk);
msg_done(TOKEN *tk);
msg_wait(TOKEN *tk);
init_farmer(char *farm_name);
init_worker(char *farm_name,char *worker_class_name,int q_len);
recv_reply_packet(int worker_class_id,char *reply_packet,int packet_len);
recv_work_packet(char *work_packet,int packet_len);
send_reply_packet(char *reply_packet,int packet_len);
send_work_packet(int worker_class_id,char *work_packet, int packet_len);
get_worker_class(char *farm_name,char *worker_class_name,int option);
create_mgroup(char *group_name,int num_listners);
delete_mgroup(int mrgp_id);
attach(char *grp_name,int port_id);
get_listener_count(int mrgp_id);
get_listener_list(int mrgp_id,int *port_list);
multi_cast(int mrgp_id,void *buffer,int num_bytes);
multisend(int *port_list,int num_ports,void *buf,int num_bytes);
mcast_done(int mrgp_id);
mcast_wait(int mrgp_id);
port_create();
port_name(int port_id,char *port_name);
port_unname(char *port_name);
port_locate(char *p_name,int option);
index_port_locate(char *str,int index, int option);
named_port_create(char *port_name);
index_port_create(char *port_name,int index);
port_delete(int port_id);
port_flush(int port_id);
port_poll(int port_id);
create_sgroup(char *grp_name,int mcnt);
delete_sgroup(int mcnt);
g_sync(int mcnt);
g_and(int sgrp_id, int *boolean,int *result);
g_or(int sgrp_id, int *boolean,int *result);
g_max(int sgrp_id,int op_type,void *operand_ptr,void *result);
g_min(int sgrp_id,int op_type,void *operand_ptr,void *result);
g_op(int sgrp_id, void(*operator)(), void *operand_ptr, 
	int operand_len, void *result_ptr, int exp_reslen);
get_tid();
thread_init(void (*function)(), /* arguments */);
thread_run(int tid) ;
thread_suspend(int tid) ;
thread_resume(int tid);
thread_par(int number_of_threads,int tid1, int tid2, ...);
sem_init(int value) ;
sem_wait(int semid);
sem_signal(int semid);
aread(int fd, char *buffer, int size, TOKEN *tk);
awrite(int fd, char *buffer, int size, TOKEN *tk);
iodone(TOKEN *tk);
int get_nodeid();
void *get_param(int interface_attribute_no);
arcreate(char *filename, int mode, int DIM, int *ary_dim_sizes, int *chunk_dim,int elsize);
aropen(char *filename, int mode);
*filename, int mode);
get_attrib(char *filename,int *dim, int *ary_sizes, int *chunk_sizes,int *elsize);
read_chunk(int mdfid,int chunk_no,void *chunk_ptr);
write_chunk(int mdfid,int chunk_no, void *chunk_ptr);
read_subarray(int mdfid, int *origin, int *sizes, void *ndim_buffer);
write_subarray(int mdfid, int *origin, int *sizes, void *ndim_buffer);
arclose(int mdfid);

