version 1.46, 2003/12/10 02:16:08 |
version 1.47, 2003/12/11 05:48:04 |
|
|
* OF THE SOFTWARE HAS BEEN DEVELOPED BY A THIRD PARTY, THE THIRD PARTY |
* OF THE SOFTWARE HAS BEEN DEVELOPED BY A THIRD PARTY, THE THIRD PARTY |
* DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE, |
* DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE, |
* PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE. |
* PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE. |
* $OpenXM: OpenXM_contrib2/asir2000/io/ox_asir.c,v 1.45 2003/12/09 03:07:45 noro Exp $ |
* $OpenXM: OpenXM_contrib2/asir2000/io/ox_asir.c,v 1.46 2003/12/10 02:16:08 noro Exp $ |
*/ |
*/ |
#include "ca.h" |
#include "ca.h" |
#include "parse.h" |
#include "parse.h" |
Line 96 void asir_set_rank_102(unsigned int); |
|
Line 96 void asir_set_rank_102(unsigned int); |
|
void asir_tcp_accept_102(unsigned int); |
void asir_tcp_accept_102(unsigned int); |
void asir_tcp_connect_102(unsigned int); |
void asir_tcp_connect_102(unsigned int); |
void asir_reset_102(unsigned int serial); |
void asir_reset_102(unsigned int serial); |
|
void asir_bcast_102(unsigned int serial); |
|
void asir_reduce_102(unsigned int serial); |
LIST asir_GetErrorList(); |
LIST asir_GetErrorList(); |
char *name_of_cmd(int); |
char *name_of_cmd(int); |
char *name_of_id(int); |
char *name_of_id(int); |
Line 275 static void asir_do_cmd(int cmd,unsigned int serial) |
|
Line 277 static void asir_do_cmd(int cmd,unsigned int serial) |
|
case SM_reset_102: |
case SM_reset_102: |
asir_reset_102(serial); |
asir_reset_102(serial); |
break; |
break; |
|
case SM_bcast_102: |
|
asir_bcast_102(serial); |
|
break; |
|
case SM_reduce_102: |
|
asir_reduce_102(serial); |
|
break; |
case SM_nop: |
case SM_nop: |
default: |
default: |
break; |
break; |
Line 365 char *name_of_cmd(int cmd) |
|
Line 373 char *name_of_cmd(int cmd) |
|
case SM_reset_102: |
case SM_reset_102: |
return "SM_reset_102"; |
return "SM_reset_102"; |
break; |
break; |
|
case SM_bcast_102: |
|
return "SM_bcast_102"; |
|
break; |
|
case SM_reduce_102: |
|
return "SM_reduce_102"; |
|
break; |
default: |
default: |
return "Unknown cmd"; |
return "Unknown cmd"; |
break; |
break; |
Line 419 void asir_popCMO(unsigned int serial) |
|
Line 433 void asir_popCMO(unsigned int serial) |
|
} |
} |
} |
} |
|
|
|
void asir_reduce_102(unsigned int serial) |
|
{ |
|
Q r; |
|
int root; |
|
Obj data,obj; |
|
ERR err; |
|
STRING op; |
|
char *opname; |
|
void (*func)(); |
|
|
|
func = 0; |
|
op = (STRING)asir_pop_one(); |
|
opname = BDY(op); |
|
r = (Q)asir_pop_one(); |
|
root = QTOS(r); |
|
if ( !strcmp(opname,"+") ) |
|
func = arf_add; |
|
else if ( !strcmp(opname,"*") ) |
|
func = arf_mul; |
|
if ( !func ) { |
|
create_error(&err,serial,"Invalid opration in ox_reduce_102"); |
|
asir_push_one(obj); |
|
} else |
|
ox_reduce_102(root,func); |
|
} |
|
|
|
void asir_bcast_102(unsigned int serial) |
|
{ |
|
Q r; |
|
int root; |
|
Obj data; |
|
|
|
r = (Q)asir_pop_one(); |
|
root = QTOS(r); |
|
ox_bcast_102(root); |
|
} |
|
|
void asir_reset_102(unsigned int serial) |
void asir_reset_102(unsigned int serial) |
{ |
{ |
int i,j,id; |
int i,j,id; |
Line 431 void asir_reset_102(unsigned int serial) |
|
Line 482 void asir_reset_102(unsigned int serial) |
|
for ( i = myrank_102; i < nserver_102; i++ ) |
for ( i = myrank_102; i < nserver_102; i++ ) |
ox_send_sync_102(i); |
ox_send_sync_102(i); |
} |
} |
|
|
extern int myrank_102,nserver_102; |
|
|
|
void asir_set_rank_102(unsigned int serial) |
void asir_set_rank_102(unsigned int serial) |
{ |
{ |