/* * Initial task */ EXPORT void init_task(void) { INT fin; #if USE_SYSDEPEND_PATCH1 /* System-dependent processes (before start_system) */ sysdepend_patch1(); #endif /* Start system */ start_system(); #if USE_SYSDEPEND_PATCH2 /* System-dependent processes (after start_system) */ sysdepend_patch2(); #endif /* Initial task main */ fin = init_task_main(); /* Stop System */ shutdown_system(fin); /* Never return */ }
int main(int argc, char *argv[]) { int opt, nd = ND_LOCAL_NODE; char *node_name = NULL; int shutdown_type = SHUTDOWN_REBOOT; tcgetattr(1, &termattr); while((opt = getopt(argc, argv, "bDfn:qS:v")) != -1) switch(opt) { case 'b': shutdown_type = SHUTDOWN_SYSTEM; break; case 'S': switch(tolower(*optarg)) { case 'r': shutdown_type = SHUTDOWN_REBOOT; break; case 's': shutdown_type = SHUTDOWN_SYSTEM; break; default: fprintf(stderr,"Invalid shutdown type (%s).\n",optarg); exit(EXIT_FAILURE); } break; case 'D': flags |= FLAG_DEBUG; break; case 'f': flags |= FLAG_FAST; break; case 'n': node_name = optarg; nd = netmgr_strtond(optarg, NULL); if(nd == -1){ perror("No such node"); exit(EXIT_FAILURE); } break; case 'q': flags &= ~(FLAG_VERBOSE | FLAG_VERY_VERBOSE); break; case 'v': flags |= FLAG_VERBOSE | FLAG_VERY_VERBOSE; break; default: fprintf(stderr,"Invalid option (%c).\n",opt); exit(EXIT_FAILURE); } if(node_name && nd != ND_LOCAL_NODE){ if(spawn_remote_shutdown(node_name, argv) == -1){ perror("unable to spawn on remote node"); exit(EXIT_FAILURE); } } else { shutdown_system(shutdown_type,flags); } exit(EXIT_SUCCESS); }
int main(int argc, char **argv) { /* create a simple definite positive symetric matrix example * * Hilbert matrix : h(i,j) = 1/(i+j+1) * */ parse_args(argc, argv); float *mat = NULL; int ret = initialize_system(&mat, size, pinned); if (ret) return ret; #ifndef STARPU_SIMGRID unsigned i,j; for (i = 0; i < size; i++) { for (j = 0; j < size; j++) { mat[j +i*size] = (1.0f/(1.0f+i+j)) + ((i == j)?1.0f*size:0.0f); /* mat[j +i*size] = ((i == j)?1.0f*size:0.0f); */ } } #endif #ifdef CHECK_OUTPUT FPRINTF(stdout, "Input :\n"); for (j = 0; j < size; j++) { for (i = 0; i < size; i++) { if (i <= j) { FPRINTF(stdout, "%2.2f\t", mat[j +i*size]); } else { FPRINTF(stdout, ".\t"); } } FPRINTF(stdout, "\n"); } #endif cholesky(mat, size, size, nblocks); #ifdef CHECK_OUTPUT FPRINTF(stdout, "Results :\n"); for (j = 0; j < size; j++) { for (i = 0; i < size; i++) { if (i <= j) { FPRINTF(stdout, "%2.2f\t", mat[j +i*size]); } else { FPRINTF(stdout, ".\t"); mat[j+i*size] = 0.0f; /* debug */ } } FPRINTF(stdout, "\n"); } FPRINTF(stderr, "compute explicit LLt ...\n"); float *test_mat = malloc(size*size*sizeof(float)); STARPU_ASSERT(test_mat); STARPU_SSYRK("L", "N", size, size, 1.0f, mat, size, 0.0f, test_mat, size); FPRINTF(stderr, "comparing results ...\n"); for (j = 0; j < size; j++) { for (i = 0; i < size; i++) { if (i <= j) { FPRINTF(stdout, "%2.2f\t", test_mat[j +i*size]); } else { FPRINTF(stdout, ".\t"); } } FPRINTF(stdout, "\n"); } free(test_mat); #endif shutdown_system(&mat, pinned); return 0; }
static gint32 mca_exec_svr_command (guint32 cmd, void *data, guint32 datalen) { gint retval = 0; gint32 nr_data_h = 0; DEBUG_PRINT("mca_exec_command(): cmd=%08X [%d bytes]\n", cmd, datalen); if (datalen > 0) nr_data_h = ntohl(*(guint32 *)data); switch (cmd) { //server-to-client message/command case MKW_OWED_CASH: //CS_SETOWED: DBG_PRINT("mca_exec_command(): cmd = MKW_OWED_CASH: [%d]\n", nr_data_h); set_owed_cash(nr_data_h); break; case MKW_PRODUCTS_CASH: //CS_SETADDITIONAL: DBG_PRINT("mca_exec_command(): cmd = MKW_PRODUCTS_CASH: [%d]\n", datalen); set_products_cash(nr_data_h); break; case MKW_SESSION_TIME: //CS_SETTIME: DBG_PRINT("mca_exec_command(): cmd = MKW_SESSION_TIME: [%d]\n", datalen); set_time_len (nr_data_h); break; case MKW_SERVER_MESSAGE: //CS_DISPLAYMESSAGE: DBG_PRINT("mca_exec_command(): cmd = MKW_SERVER_MESSAGE: [%d]\n", datalen); show_server_message((gchar *)data); break; case MKW_ACK_ASSIST: //CS_CALLASSIST: DBG_PRINT("mca_exec_command(): cmd = MKW_ACK_ASSIST: [%d]\n", datalen); ack_assist_request((gchar *) data, datalen); break; //session control case MKW_STOP_SESSION: //CS_STOP: DBG_PRINT("mca_exec_command(): cmd = MKW_STOP_SESSION: [%d]\n", datalen); stop_session(); break; case MKW_START_SESSION: //CS_START: DBG_PRINT("mca_exec_command(): cmd = MKW_START_SESSION: [%d]\n", datalen); start_session(); break; case MKW_PAUSE_SESSION: //CS_PAUSE: DBG_PRINT("mca_exec_command(): cmd = MKW_PAUSE_SESSION: [%d]\n", datalen); pause_session(); break; case MKW_RESUME_SESSION: //CS_RESUME: DBG_PRINT("mca_exec_command(): cmd = MKW_RESUME_SESSION: [%d]\n", datalen); resume_session(); break; case MKW_TIMEOUT_SESSION: //CS_SETTIMEOUT: DBG_PRINT("mca_exec_command(): cmd = MKW_TIMEOUT_SESSION: [%d]\n", datalen); start_session_timeout(nr_data_h); break; //system control case MKW_BLANK_MONITOR: //CS_MONITOROFF: DBG_PRINT("mca_exec_command(): cmd = MKW_BLANK_MONITOR: [%d]\n", datalen); blank_monitor(); break; case MKW_SHUTDOWN_SYSTEM: // CS_SHUTDOWN: DBG_PRINT("mca_exec_command(): cmd = MKW_SHUTDOWN_SYSTEM: [%d]\n", datalen); shutdown_system(); break; case MKW_REBOOT_SYSTEM: //CS_REBOOT: DBG_PRINT("mca_exec_command(): cmd = MKW_REBOOT_SYSTEM: [%d]\n", datalen); reboot_system(); break; case MKW_EXIT_MCA: //CS_QUITCLIENT: DBG_PRINT("mca_exec_command(): cmd = MKW_EXIT_MCA: [%d]\n", datalen); exit_mca_program(); break; case MKW_SET_ADMIN_PASSWD: //CS_SETADMINPASS: DBG_PRINT("mca_exec_command(): cmd = MKW_SET_ADMIN_PASSWD: [%d]\n", datalen); set_admin_passwd((gchar *)data, datalen); break; case MKW_SET_POLL_INTERVAL: // CS_SETPOLLINTERVAL: DBG_PRINT("mca_exec_command(): cmd = MKW_SET_POLL_INTERVAL: [%d]\n", datalen); set_poll_interval( nr_data_h ); break; //utils case MKW_UNBLOCK_SCREEN : //CS_UNLOCKSCREEN: DBG_PRINT("mca_exec_command(): cmd = MKW_UNBLOCK_SCREEN: [%d]\n", datalen); unblock_screen(); break; case MKW_BLOCK_SCREEN: //CS_LOCKSCREEN: DBG_PRINT("mca_exec_command(): cmd = MKW_BLOCK_SCREEN: [%d]\n", datalen); block_screen(); break; //UI and program state case MKW_ENABLE_PASSWD_BUTTON: //CS_ENABLEPASSWORDEDIT: DBG_PRINT("mca_exec_command(): cmd = MKW_ENABLE_PASSWD_BUTTON: [%d]\n", datalen); set_passwd_edit_state(nr_data_h); break; case MKW_ALLOW_MEMBER_LOGIN: // CS_ALLOWMEMBERLOGIN: DBG_PRINT("mca_exec_command(): cmd = MKW_ALLOW_MEMBER_LOGIN: [%d]\n", datalen); set_member_loginable(nr_data_h); break; case MKW_ALLOW_TICKET_LOGIN: //CS_ALLOWTICKETLOGIN: DBG_PRINT("mca_exec_command(): cmd = MKW_ALLOW_TICKET_LOGIN: [%d]\n", datalen); set_ticket_loginable(nr_data_h); break; case MKW_ALLOW_USER_LOGIN: //CS_ALLOWUSERLOGIN: DBG_PRINT("mca_exec_command(): cmd = MKW_ALLOW_USER_LOGIN: [%d]\n", datalen); set_user_loginable(nr_data_h); break; case MKW_ENABLE_ASSIST_BUTTON: //CS_ENABLEASSIST: DBG_PRINT("mca_exec_command(): cmd = MKW_ENABLE_ASSIST_BUTTON: [%d]\n", datalen); set_assist_able(nr_data_h); break; //update case MKW_START_UPDATE: //CS_UPDATE: DBG_PRINT("mca_exec_command(): cmd = MKW_START_UPDATE: [%d]\n", datalen); start_mkw_update ((gchar *) data, datalen); break; case MKW_UPDATE_DATA: // CS_UPDATEDATA: DBG_PRINT("mca_exec_command(): cmd = MKW_UPDATE_DATA: [%d]\n", datalen); proc_mkw_update_data((gchar *)data, datalen); break; case MKW_END_UPDATE: //CS_UPDATEEND: DBG_PRINT("mca_exec_command(): cmd = MKW_END_UPDATE: [%d]\n", datalen); end_mkw_update((gchar *)data, datalen); break; } return retval; }
cleanup() { /* CLOSEDUMP(); */ change_dir(init_drawer); shutdown_system(); }