Changeset 3650
- Timestamp:
- 05/03/10 15:11:40 (15 years ago)
- Location:
- issm/trunk/externalpackages/scotch
- Files:
-
- 1 added
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk/externalpackages/scotch/gmap_mex.c
r3648 r3650 19 19 20 20 void GmapUsage( void ); 21 22 23 /* Input Arguments */24 25 #define ADJMAT_IN prhs[0]26 #define VERTLB_IN prhs[1]27 #define VERTWT_IN prhs[2]28 #define EDGEWT_IN prhs[3]29 #define ARCHTYP_IN prhs[4]30 #define ARCHPAR_IN prhs[5]31 #define REQ_ARGS 632 33 /* Output Arguments */34 35 #define MAPTAB_OUT plhs[0]36 21 37 22 … … 73 58 int (*maptabi)[2]=NULL; 74 59 double* maptabd=NULL; 75 int i,j,k,i err;60 int i,j,k,imi=0,imo=0,isi=0,ierr; 76 61 77 62 /* Check for proper number of arguments */ … … 89 74 and in the x-layer is inefficient, but it makes the x-layer more general) */ 90 75 91 if (!mxIsNumeric(ADJMAT_IN) || (!mxIsEmpty(ADJMAT_IN) && !mxIsSparse(ADJMAT_IN))) { 76 argvm = (char **) calloc(nrhs,sizeof(char *)); 77 78 if (!(mxIsNumeric(prhs[imi]) && 79 (mxGetM(prhs[imi]) == 1 && mxGetN(prhs[imi]) == 1))) { 80 argvm[isi] = (char *) calloc(4+1,sizeof(char)); 81 strcpy(argvm[isi],"gmap"); 82 mexPrintf("%s -- Using \"%s\" entry point.\n", 83 THISFUNCTION,argvm[isi]); 84 isi++; 85 } 86 else { 87 argvm[isi] = (char *) calloc(5+1,sizeof(char)); 88 strcpy(argvm[isi],"gpart"); 89 mexPrintf("%s -- Using \"%s\" entry point.\n", 90 THISFUNCTION,argvm[isi]); 91 isi++; 92 93 argvm[isi] = (char *) calloc(17,sizeof(char)); 94 sprintf(argvm[isi],"%d",(int)mxGetScalar(prhs[imi])); 95 mexPrintf("%s -- Number of parts is %s.\n", 96 THISFUNCTION,argvm[isi]); 97 isi++; 98 imi++; 99 } 100 101 if (!mxIsNumeric(prhs[imi]) || (!mxIsEmpty(prhs[imi]) && !mxIsSparse(prhs[imi]))) { 92 102 mexPrintf("%s -- Adjacency matrix must be numeric and sparse.\n",THISFUNCTION); 93 103 mexErrMsgTxt(" "); 94 104 } 95 105 else { 96 nvert =mxGetM( ADJMAT_IN);97 nedge2=mxGetNzmax( ADJMAT_IN);98 if (mxGetNzmax( ADJMAT_IN)) {99 ir =mxGetIr( ADJMAT_IN);100 adjir = (int *) malloc(mxGetNzmax( ADJMAT_IN)*sizeof(int));101 for (i=0; i<mxGetNzmax( ADJMAT_IN); i++)106 nvert =mxGetM(prhs[imi]); 107 nedge2=mxGetNzmax(prhs[imi]); 108 if (mxGetNzmax(prhs[imi])) { 109 ir =mxGetIr(prhs[imi]); 110 adjir = (int *) malloc(mxGetNzmax(prhs[imi])*sizeof(int)); 111 for (i=0; i<mxGetNzmax(prhs[imi]); i++) 102 112 adjir[i]=(int)ir[i]; 103 113 } 104 if (mxGetN( ADJMAT_IN)) {105 jc =mxGetJc( ADJMAT_IN);106 adjjc = (int *) malloc((mxGetN( ADJMAT_IN)+1)*sizeof(int));107 for (i=0; i<(mxGetN( ADJMAT_IN)+1); i++)114 if (mxGetN(prhs[imi])) { 115 jc =mxGetJc(prhs[imi]); 116 adjjc = (int *) malloc((mxGetN(prhs[imi])+1)*sizeof(int)); 117 for (i=0; i<(mxGetN(prhs[imi])+1); i++) 108 118 adjjc[i]=(int)jc[i]; 109 119 } 110 120 mexPrintf("%s -- Adjacency matrix is of size %d by %d with %d non-zeroes.\n", 111 THISFUNCTION,mxGetM(ADJMAT_IN),mxGetN(ADJMAT_IN),mxGetNzmax(ADJMAT_IN)); 112 } 113 114 if (!mxIsNumeric(VERTLB_IN)) { 121 THISFUNCTION,mxGetM(prhs[imi]),mxGetN(prhs[imi]),mxGetNzmax(prhs[imi])); 122 } 123 imi++; 124 125 if (!mxIsNumeric(prhs[imi])) { 115 126 mexPrintf("%s -- Vertex label vector must be numeric.\n",THISFUNCTION); 116 127 mexErrMsgTxt(" "); 117 128 } 118 129 else { 119 if (mxGetM( VERTLB_IN)*mxGetN(VERTLB_IN)) {120 vld=mxGetPr( VERTLB_IN);121 vli = (int *) malloc(mxGetM( VERTLB_IN)*mxGetN(VERTLB_IN)*sizeof(int));122 for (i=0; i<mxGetM( VERTLB_IN)*mxGetN(VERTLB_IN); i++)130 if (mxGetM(prhs[imi])*mxGetN(prhs[imi])) { 131 vld=mxGetPr(prhs[imi]); 132 vli = (int *) malloc(mxGetM(prhs[imi])*mxGetN(prhs[imi])*sizeof(int)); 133 for (i=0; i<mxGetM(prhs[imi])*mxGetN(prhs[imi]); i++) 123 134 vli[i]=(int)vld[i]; 124 135 } 125 136 mexPrintf("%s -- Vertex label vector is of size %d by %d.\n", 126 THISFUNCTION,mxGetM(VERTLB_IN),mxGetN(VERTLB_IN)); 127 } 128 129 if (!mxIsNumeric(VERTWT_IN)) { 137 THISFUNCTION,mxGetM(prhs[imi]),mxGetN(prhs[imi])); 138 } 139 imi++; 140 141 if (!mxIsNumeric(prhs[imi])) { 130 142 mexPrintf("%s -- Vertex weight vector must be numeric.\n",THISFUNCTION); 131 143 mexErrMsgTxt(" "); 132 144 } 133 145 else { 134 if (mxGetM( VERTWT_IN)*mxGetN(VERTWT_IN)) {135 vwd=mxGetPr( VERTWT_IN);136 vwi = (int *) malloc(mxGetM( VERTWT_IN)*mxGetN(VERTWT_IN)*sizeof(int));137 for (i=0; i<mxGetM( VERTWT_IN)*mxGetN(VERTWT_IN); i++)146 if (mxGetM(prhs[imi])*mxGetN(prhs[imi])) { 147 vwd=mxGetPr(prhs[imi]); 148 vwi = (int *) malloc(mxGetM(prhs[imi])*mxGetN(prhs[imi])*sizeof(int)); 149 for (i=0; i<mxGetM(prhs[imi])*mxGetN(prhs[imi]); i++) 138 150 vwi[i]=(int)vwd[i]; 139 151 } 140 152 mexPrintf("%s -- Vertex weight vector is of size %d by %d.\n", 141 THISFUNCTION,mxGetM(VERTWT_IN),mxGetN(VERTWT_IN)); 142 } 143 144 if (!mxIsNumeric(EDGEWT_IN) || (!mxIsEmpty(EDGEWT_IN) && !mxIsSparse(EDGEWT_IN))) { 153 THISFUNCTION,mxGetM(prhs[imi]),mxGetN(prhs[imi])); 154 } 155 imi++; 156 157 if (!mxIsNumeric(prhs[imi]) || (!mxIsEmpty(prhs[imi]) && !mxIsSparse(prhs[imi]))) { 145 158 mexPrintf("%s -- Edge weight matrix must be numeric and sparse.\n",THISFUNCTION); 146 159 mexErrMsgTxt(" "); 147 160 } 148 161 else { 149 if (mxGetM( EDGEWT_IN)) {150 ewd=mxGetPr( EDGEWT_IN);151 ewi = (int *) malloc(mxGetM( EDGEWT_IN)*sizeof(int));152 for (i=0; i<mxGetNzmax( EDGEWT_IN); i++)162 if (mxGetM(prhs[imi])) { 163 ewd=mxGetPr(prhs[imi]); 164 ewi = (int *) malloc(mxGetM(prhs[imi])*sizeof(int)); 165 for (i=0; i<mxGetNzmax(prhs[imi]); i++) 153 166 ewi[i]=(int)ewd[i]; 154 167 } 155 168 mexPrintf("%s -- Edge weight matrix is of size %d by %d with %d non-zeroes.\n", 156 THISFUNCTION,mxGetM(EDGEWT_IN),mxGetN(EDGEWT_IN),mxGetNzmax(EDGEWT_IN)); 157 } 158 159 if (!mxIsChar(ARCHTYP_IN)) { 160 mexPrintf("%s -- Architecture type must be character.\n",THISFUNCTION); 161 mexErrMsgTxt(" "); 162 } 163 else { 164 if (mxGetM(ARCHTYP_IN)*mxGetN(ARCHTYP_IN)) { 165 archtyp = (char *) calloc(mxGetM(ARCHTYP_IN)*mxGetN(ARCHTYP_IN)+1,sizeof(char)); 166 mxGetString(ARCHTYP_IN,archtyp,mxGetM(ARCHTYP_IN)*mxGetN(ARCHTYP_IN)+1); 167 } 168 mexPrintf("%s -- Architecture type is \"%s\".\n", 169 THISFUNCTION,archtyp); 170 } 171 172 if (!mxIsNumeric(ARCHPAR_IN)) { 173 mexPrintf("%s -- Architecture parameter vector must be numeric.\n",THISFUNCTION); 174 mexErrMsgTxt(" "); 175 } 176 else { 177 napar =mxGetM(ARCHPAR_IN)*mxGetN(ARCHPAR_IN); 178 if (mxGetM(ARCHPAR_IN)*mxGetN(ARCHPAR_IN)) { 179 apd=mxGetPr(ARCHPAR_IN); 180 api = (int *) malloc(mxGetM(ARCHPAR_IN)*mxGetN(ARCHPAR_IN)*sizeof(int)); 181 for (i=0; i<mxGetM(ARCHPAR_IN)*mxGetN(ARCHPAR_IN); i++) 182 api[i]=(int)apd[i]; 183 } 184 mexPrintf("%s -- Architecture parameter vector is of size %d by %d.\n", 185 THISFUNCTION,mxGetM(ARCHPAR_IN),mxGetN(ARCHPAR_IN)); 186 } 187 188 argcm=nrhs+1-REQ_ARGS; 169 THISFUNCTION,mxGetM(prhs[imi]),mxGetN(prhs[imi]),mxGetNzmax(prhs[imi])); 170 } 171 imi++; 172 173 if (!((strlen (argvm[0]) >= 5) && 174 (strncmp (argvm[0] + strlen (argvm[0]) - 5, "gpart", 5) == 0))) { 175 if (!mxIsChar(prhs[imi])) { 176 mexPrintf("%s -- Architecture type must be character.\n",THISFUNCTION); 177 mexErrMsgTxt(" "); 178 } 179 else { 180 if (mxGetM(prhs[imi])*mxGetN(prhs[imi])) { 181 archtyp = (char *) calloc(mxGetM(prhs[imi])*mxGetN(prhs[imi])+1,sizeof(char)); 182 mxGetString(prhs[imi],archtyp,mxGetM(prhs[imi])*mxGetN(prhs[imi])+1); 183 } 184 mexPrintf("%s -- Architecture type is \"%s\".\n", 185 THISFUNCTION,archtyp); 186 } 187 imi++; 188 189 if (!mxIsNumeric(prhs[imi])) { 190 mexPrintf("%s -- Architecture parameter vector must be numeric.\n",THISFUNCTION); 191 mexErrMsgTxt(" "); 192 } 193 else { 194 napar =mxGetM(prhs[imi])*mxGetN(prhs[imi]); 195 if (mxGetM(prhs[imi])*mxGetN(prhs[imi])) { 196 apd=mxGetPr(prhs[imi]); 197 api = (int *) malloc(mxGetM(prhs[imi])*mxGetN(prhs[imi])*sizeof(int)); 198 for (i=0; i<mxGetM(prhs[imi])*mxGetN(prhs[imi]); i++) 199 api[i]=(int)apd[i]; 200 } 201 mexPrintf("%s -- Architecture parameter vector is of size %d by %d.\n", 202 THISFUNCTION,mxGetM(prhs[imi]),mxGetN(prhs[imi])); 203 } 204 imi++; 205 } 206 207 while (imi < nrhs) { 208 if (!mxIsChar(prhs[imi])) { 209 mexPrintf("%s -- prhs[%d] must be character.\n",THISFUNCTION,imi); 210 mexErrMsgTxt(" "); 211 } 212 else { 213 argvm[isi] = (char *) calloc(mxGetM(prhs[imi])*mxGetN(prhs[imi])+1,sizeof(char)); 214 mxGetString(prhs[imi],argvm[isi],mxGetM(prhs[imi])*mxGetN(prhs[imi])+1); 215 } 216 isi++; 217 imi++; 218 } 219 argcm=isi; 189 220 mexPrintf("argcm=%d\n",argcm); 190 argvm = (char **) malloc(argcm*sizeof(char *));191 argvm[0] = (char *) calloc(4+1,sizeof(char));192 strcpy(argvm[0],"gmap");193 for (i=REQ_ARGS; i<nrhs; i++)194 if (!mxIsChar(prhs[i])) {195 mexPrintf("%s -- prhs[%d] must be character.\n",THISFUNCTION,i);196 mexErrMsgTxt(" ");197 }198 else {199 argvm[i+1-REQ_ARGS] = (char *) calloc(mxGetM(prhs[i])*mxGetN(prhs[i])+1,sizeof(char));200 mxGetString(prhs[i],argvm[i+1-REQ_ARGS],mxGetM(prhs[i])*mxGetN(prhs[i])+1);201 }202 221 for (i=0; i<argcm; i++) 203 222 mexPrintf("argvm[%d]=\"%s\"\n",i,argvm[i]); … … 228 247 229 248 if (maptabi) { 230 MAPTAB_OUT=mxCreateDoubleMatrix(nvert, 2, mxREAL);231 maptabd = mxGetPr( MAPTAB_OUT);249 plhs[imo]=mxCreateDoubleMatrix(nvert, 2, mxREAL); 250 maptabd = mxGetPr(plhs[imo]); 232 251 k=0; 233 252 for (j=0; j<2; j++) … … 237 256 } 238 257 else { 239 MAPTAB_OUT=mxCreateDoubleMatrix(0, 2, mxREAL); 240 } 258 plhs[imo]=mxCreateDoubleMatrix(0, 2, mxREAL); 259 } 260 imo++; 241 261 242 262 if (argvm) -
issm/trunk/externalpackages/scotch/gmapx.c
r3644 r3650 220 220 errorProg ("gmap"); 221 221 222 intRandResetStatic (); 222 223 intRandInit (); 223 224 -
issm/trunk/externalpackages/scotch/scotch.patch
r3639 r3650 1 Only in new 2: bin2 Only in new 2: include3 Only in new 2: lib4 diff -rc src/src/libscotch/arch.c new 2/src/libscotch/arch.c1 Only in new3: bin 2 Only in new3: include 3 Only in new3: lib 4 diff -rc src/src/libscotch/arch.c new3/src/libscotch/arch.c 5 5 *** src/src/libscotch/arch.c 2008-09-27 07:48:01.000000000 -0700 6 --- new 2/src/libscotch/arch.c 2010-04-26 10:35:09.779996545-07006 --- new3/src/libscotch/arch.c 2010-04-30 10:28:22.088131040 -0700 7 7 *************** 8 8 *** 173,187 **** … … 68 68 memset (archptr, 0, sizeof (Arch)); /* Initialize architecture body */ 69 69 return (1); 70 diff -rc src/src/libscotch/arch_cmplt.c new 2/src/libscotch/arch_cmplt.c70 diff -rc src/src/libscotch/arch_cmplt.c new3/src/libscotch/arch_cmplt.c 71 71 *** src/src/libscotch/arch_cmplt.c 2008-05-22 06:44:41.000000000 -0700 72 --- new 2/src/libscotch/arch_cmplt.c 2010-04-26 10:35:09.786996551-070072 --- new3/src/libscotch/arch_cmplt.c 2010-04-30 10:28:22.093131042 -0700 73 73 *************** 74 74 *** 90,99 **** … … 120 120 return (1); 121 121 } 122 diff -rc src/src/libscotch/arch_cmplt.h new 2/src/libscotch/arch_cmplt.h122 diff -rc src/src/libscotch/arch_cmplt.h new3/src/libscotch/arch_cmplt.h 123 123 *** src/src/libscotch/arch_cmplt.h 2008-05-22 06:44:41.000000000 -0700 124 --- new 2/src/libscotch/arch_cmplt.h 2010-04-26 10:35:09.794996558-0700124 --- new3/src/libscotch/arch_cmplt.h 2010-04-30 10:28:22.098131044 -0700 125 125 *************** 126 126 *** 87,93 **** … … 137 137 #define archCmpltArchFree NULL 138 138 ArchDomNum archCmpltDomNum (const ArchCmplt * const, const ArchCmpltDom * const); 139 diff -rc src/src/libscotch/arch_cmpltw.c new 2/src/libscotch/arch_cmpltw.c139 diff -rc src/src/libscotch/arch_cmpltw.c new3/src/libscotch/arch_cmpltw.c 140 140 *** src/src/libscotch/arch_cmpltw.c 2008-08-27 14:22:22.000000000 -0700 141 --- new 2/src/libscotch/arch_cmpltw.c 2010-04-26 10:35:09.801996564-0700141 --- new3/src/libscotch/arch_cmpltw.c 2010-04-30 10:28:22.103131046 -0700 142 142 *************** 143 143 *** 200,211 **** … … 209 209 return (1); 210 210 } 211 diff -rc src/src/libscotch/arch_cmpltw.h new 2/src/libscotch/arch_cmpltw.h211 diff -rc src/src/libscotch/arch_cmpltw.h new3/src/libscotch/arch_cmpltw.h 212 212 *** src/src/libscotch/arch_cmpltw.h 2008-05-22 06:44:41.000000000 -0700 213 --- new 2/src/libscotch/arch_cmpltw.h 2010-04-26 10:35:09.809996571-0700213 --- new3/src/libscotch/arch_cmpltw.h 2010-04-30 10:28:22.108131048 -0700 214 214 *************** 215 215 *** 86,92 **** … … 226 226 int archCmpltwArchFree (ArchCmpltw * restrict const); 227 227 ArchDomNum archCmpltwDomNum (const ArchCmpltw * const, const ArchCmpltwDom * const); 228 diff -rc src/src/libscotch/arch_deco.c new 2/src/libscotch/arch_deco.c228 diff -rc src/src/libscotch/arch_deco.c new3/src/libscotch/arch_deco.c 229 229 *** src/src/libscotch/arch_deco.c 2008-09-28 06:35:27.000000000 -0700 230 --- new 2/src/libscotch/arch_deco.c 2010-04-26 10:35:09.816996577-0700230 --- new3/src/libscotch/arch_deco.c 2010-04-30 10:28:22.153131068 -0700 231 231 *************** 232 232 *** 211,217 **** … … 267 267 if ((sizeof (ArchDeco) > sizeof (ArchDummy)) || 268 268 (sizeof (ArchDecoDom) > sizeof (ArchDomDummy))) { 269 diff -rc src/src/libscotch/arch_deco.h new 2/src/libscotch/arch_deco.h269 diff -rc src/src/libscotch/arch_deco.h new3/src/libscotch/arch_deco.h 270 270 *** src/src/libscotch/arch_deco.h 2008-09-27 07:49:46.000000000 -0700 271 --- new 2/src/libscotch/arch_deco.h 2010-04-26 10:35:09.823996583-0700271 --- new3/src/libscotch/arch_deco.h 2010-04-30 10:28:22.158131070 -0700 272 272 *************** 273 273 *** 113,119 **** … … 284 284 int archDecoArchFree (ArchDeco * const); 285 285 Anum archDecoArchSize (ArchDeco * const, const Anum); 286 diff -rc src/src/libscotch/arch.h new 2/src/libscotch/arch.h286 diff -rc src/src/libscotch/arch.h new3/src/libscotch/arch.h 287 287 *** src/src/libscotch/arch.h 2009-04-28 08:11:27.000000000 -0700 288 --- new 2/src/libscotch/arch.h 2010-04-26 10:35:09.831996590-0700288 --- new3/src/libscotch/arch.h 2010-04-30 10:28:22.163131072 -0700 289 289 *************** 290 290 *** 175,181 **** … … 301 301 char * archName (const Arch * const); 302 302 const ArchClass * archClass (const char * const); 303 diff -rc src/src/libscotch/arch_hcub.c new 2/src/libscotch/arch_hcub.c303 diff -rc src/src/libscotch/arch_hcub.c new3/src/libscotch/arch_hcub.c 304 304 *** src/src/libscotch/arch_hcub.c 2008-05-22 06:44:41.000000000 -0700 305 --- new 2/src/libscotch/arch_hcub.c 2010-04-26 10:35:09.838996596-0700305 --- new3/src/libscotch/arch_hcub.c 2010-04-30 10:28:22.169131075 -0700 306 306 *************** 307 307 *** 88,95 **** … … 349 349 errorPrint ("archHcubArchLoad: bad input"); 350 350 return (1); 351 diff -rc src/src/libscotch/arch_hcub.h new 2/src/libscotch/arch_hcub.h351 diff -rc src/src/libscotch/arch_hcub.h new3/src/libscotch/arch_hcub.h 352 352 *** src/src/libscotch/arch_hcub.h 2008-05-22 06:44:41.000000000 -0700 353 --- new 2/src/libscotch/arch_hcub.h 2010-04-26 10:35:09.845996602-0700353 --- new3/src/libscotch/arch_hcub.h 2010-04-30 10:28:22.174131077 -0700 354 354 *************** 355 355 *** 85,91 **** … … 366 366 #define archHcubArchFree NULL 367 367 ArchDomNum archHcubDomNum (const ArchHcub * const, const ArchHcubDom * const); 368 diff -rc src/src/libscotch/arch_mesh.c new 2/src/libscotch/arch_mesh.c368 diff -rc src/src/libscotch/arch_mesh.c new3/src/libscotch/arch_mesh.c 369 369 *** src/src/libscotch/arch_mesh.c 2008-05-22 06:44:41.000000000 -0700 370 --- new 2/src/libscotch/arch_mesh.c 2010-04-26 10:35:09.853996609 -0700370 --- new3/src/libscotch/arch_mesh.c 2010-04-30 10:28:22.179131079 -0700 371 371 *************** 372 372 *** 96,103 **** … … 465 465 return (1); 466 466 } 467 diff -rc src/src/libscotch/arch_mesh.h new 2/src/libscotch/arch_mesh.h467 diff -rc src/src/libscotch/arch_mesh.h new3/src/libscotch/arch_mesh.h 468 468 *** src/src/libscotch/arch_mesh.h 2008-05-22 06:44:41.000000000 -0700 469 --- new 2/src/libscotch/arch_mesh.h 2010-04-26 10:35:09.860996615-0700469 --- new3/src/libscotch/arch_mesh.h 2010-04-30 10:28:22.184131082 -0700 470 470 *************** 471 471 *** 96,102 **** … … 496 496 #define archMesh3ArchFree NULL 497 497 ArchDomNum archMesh3DomNum (const ArchMesh3 * const, const ArchMesh3Dom * const); 498 diff -rc src/src/libscotch/arch_tleaf.c new 2/src/libscotch/arch_tleaf.c498 diff -rc src/src/libscotch/arch_tleaf.c new3/src/libscotch/arch_tleaf.c 499 499 *** src/src/libscotch/arch_tleaf.c 2008-05-22 06:44:41.000000000 -0700 500 --- new 2/src/libscotch/arch_tleaf.c 2010-04-26 10:35:09.867996621-0700500 --- new3/src/libscotch/arch_tleaf.c 2010-04-30 10:28:22.189131084 -0700 501 501 *************** 502 502 *** 92,99 **** … … 554 554 return (1); 555 555 } 556 diff -rc src/src/libscotch/arch_tleaf.h new 2/src/libscotch/arch_tleaf.h556 diff -rc src/src/libscotch/arch_tleaf.h new3/src/libscotch/arch_tleaf.h 557 557 *** src/src/libscotch/arch_tleaf.h 2008-05-22 06:44:41.000000000 -0700 558 --- new 2/src/libscotch/arch_tleaf.h 2010-04-26 10:35:09.875996627-0700558 --- new3/src/libscotch/arch_tleaf.h 2010-04-30 10:28:22.194131086 -0700 559 559 *************** 560 560 *** 89,95 **** … … 571 571 #define archTleafArchFree NULL 572 572 ArchDomNum archTleafDomNum (const ArchTleaf * const, const ArchTleafDom * const); 573 diff -rc src/src/libscotch/arch_torus.c new 2/src/libscotch/arch_torus.c573 diff -rc src/src/libscotch/arch_torus.c new3/src/libscotch/arch_torus.c 574 574 *** src/src/libscotch/arch_torus.c 2008-05-22 06:44:41.000000000 -0700 575 --- new 2/src/libscotch/arch_torus.c 2010-04-26 10:35:09.883996634-0700575 --- new3/src/libscotch/arch_torus.c 2010-04-30 10:28:22.199131088 -0700 576 576 *************** 577 577 *** 90,97 **** … … 670 670 return (1); 671 671 } 672 diff -rc src/src/libscotch/arch_torus.h new 2/src/libscotch/arch_torus.h672 diff -rc src/src/libscotch/arch_torus.h new3/src/libscotch/arch_torus.h 673 673 *** src/src/libscotch/arch_torus.h 2008-05-22 06:44:41.000000000 -0700 674 --- new 2/src/libscotch/arch_torus.h 2010-04-26 10:35:09.890996640 -0700674 --- new3/src/libscotch/arch_torus.h 2010-04-30 10:28:22.204131090 -0700 675 675 *************** 676 676 *** 96,102 **** … … 701 701 #define archTorus3ArchFree NULL 702 702 ArchDomNum archTorus3DomNum (const ArchTorus3 * const, const ArchTorus3Dom * const); 703 diff -rc src/src/libscotch/common.c new 2/src/libscotch/common.c703 diff -rc src/src/libscotch/common.c new3/src/libscotch/common.c 704 704 *** src/src/libscotch/common.c 2008-05-22 06:44:41.000000000 -0700 705 --- new 2/src/libscotch/common.c 2010-04-26 10:35:09.897996646-0700705 --- new3/src/libscotch/common.c 2010-04-30 10:28:22.209131092 -0700 706 706 *************** 707 707 *** 100,106 **** … … 720 720 + #endif /* MATLAB */ 721 721 } 722 diff -rc src/src/libscotch/common.h new 2/src/libscotch/common.h722 diff -rc src/src/libscotch/common.h new3/src/libscotch/common.h 723 723 *** src/src/libscotch/common.h 2009-02-06 14:20:55.000000000 -0800 724 --- new 2/src/libscotch/common.h 2010-04-06 15:51:57.604253000-0700724 --- new3/src/libscotch/common.h 2010-05-03 14:22:16.763394855 -0700 725 725 *************** 726 726 *** 66,71 **** … … 756 756 ** Working definitions. 757 757 */ 758 diff -rc src/src/libscotch/common_integer.c new2/src/libscotch/common_integer.c 758 *************** 759 *** 209,214 **** 760 --- 224,230 ---- 761 int intSave (FILE * const, const INT); 762 void intAscn (INT * const, const INT, const INT); 763 void intPerm (INT * const, const INT); 764 + void intRandResetStatic (void); 765 void intRandReset (void); 766 void intRandInit (void); 767 INT intRandVal (INT); 768 diff -rc src/src/libscotch/common_integer.c new3/src/libscotch/common_integer.c 759 769 *** src/src/libscotch/common_integer.c 2009-01-21 01:32:32.000000000 -0800 760 --- new2/src/libscotch/common_integer.c 2010-04-27 11:27:22.228561248 -0700 770 --- new3/src/libscotch/common_integer.c 2010-05-03 14:21:44.014369358 -0700 771 *************** 772 *** 191,196 **** 773 --- 191,205 ---- 774 static volatile int intrandflag = 0; /*+ Flag set if generator already initialized +*/ 775 static unsigned int intrandseed = 1; /*+ Random seed +*/ 776 777 + void 778 + intRandResetStatic (void) 779 + { 780 + printf("intRandResetStatic begin -- intrandflag=%d,intrandseed=%d\n",intrandflag,intrandseed); 781 + intrandflag = 0; /*+ Flag set if generator already initialized +*/ 782 + intrandseed = 1; /*+ Random seed +*/ 783 + printf("intRandResetStatic end -- intrandflag=%d,intrandseed=%d\n",intrandflag,intrandseed); 784 + } 785 + 786 /* This routine initializes the pseudo-random 787 ** generator if necessary. In order for multi-sequential 788 ** programs to have exactly the same behavior on any 761 789 *************** 762 790 *** 205,210 **** 763 --- 2 05,211----791 --- 214,220 ---- 764 792 void 765 793 intRandInit (void) … … 771 799 *************** 772 800 *** 216,221 **** 773 --- 2 17,223----801 --- 226,232 ---- 774 802 #endif /* COMMON_RANDOM_RAND */ 775 803 intrandflag = 1; /* Generator has been initialized */ … … 781 809 *************** 782 810 *** 228,233 **** 783 --- 23 0,236----811 --- 239,245 ---- 784 812 void 785 813 intRandReset (void) … … 791 819 *************** 792 820 *** 237,242 **** 793 --- 24 0,246----821 --- 249,255 ---- 794 822 } 795 823 else … … 799 827 800 828 /*********************/ 801 Only in new2/src/libscotch: common_integer_old.c 802 diff -rc src/src/libscotch/common_memory.c new2/src/libscotch/common_memory.c 829 diff -rc src/src/libscotch/common_memory.c new3/src/libscotch/common_memory.c 803 830 *** src/src/libscotch/common_memory.c 2009-01-03 02:16:11.000000000 -0800 804 --- new 2/src/libscotch/common_memory.c 2010-04-29 14:32:20.883655193-0700831 --- new3/src/libscotch/common_memory.c 2010-04-30 10:28:22.224131099 -0700 805 832 *************** 806 833 *** 87,93 **** … … 908 935 } 909 936 #endif /* COMMON_MEMORY_TRACE */ 910 Only in new2/src/libscotch: common_memory_old.c 911 diff -rc src/src/libscotch/dummysizes.c new2/src/libscotch/dummysizes.c 937 diff -rc src/src/libscotch/dummysizes.c new3/src/libscotch/dummysizes.c 912 938 *** src/src/libscotch/dummysizes.c 2009-05-09 16:08:02.000000000 -0700 913 --- new 2/src/libscotch/dummysizes.c 2010-04-26 10:35:09.912996659-0700939 --- new3/src/libscotch/dummysizes.c 2010-04-30 10:28:22.229131101 -0700 914 940 *************** 915 941 *** 267,271 **** … … 922 948 + #endif /* MATLAB */ 923 949 } 924 diff -rc src/src/libscotch/graph.c new 2/src/libscotch/graph.c950 diff -rc src/src/libscotch/graph.c new3/src/libscotch/graph.c 925 951 *** src/src/libscotch/graph.c 2008-05-22 06:44:42.000000000 -0700 926 --- new 2/src/libscotch/graph.c 2010-04-26 10:35:09.920996666-0700952 --- new3/src/libscotch/graph.c 2010-04-30 10:28:22.234131103 -0700 927 953 *************** 928 954 *** 135,141 **** … … 945 971 if ((grafptr->edlotax != NULL) && 946 972 ((grafptr->flagval & GRAPHEDGEGROUP) == 0)) 947 diff -rc src/src/libscotch/graph.h new 2/src/libscotch/graph.h973 diff -rc src/src/libscotch/graph.h new3/src/libscotch/graph.h 948 974 *** src/src/libscotch/graph.h 2008-06-01 02:49:11.000000000 -0700 949 --- new 2/src/libscotch/graph.h 2010-04-26 10:35:09.927996672-0700975 --- new3/src/libscotch/graph.h 2010-04-30 10:28:22.240131106 -0700 950 976 *************** 951 977 *** 159,165 **** … … 962 988 int graphSave (const Graph * const, FILE * const); 963 989 Gnum graphBase (Graph * const, const Gnum); 964 diff -rc src/src/libscotch/graph_io.c new 2/src/libscotch/graph_io.c990 diff -rc src/src/libscotch/graph_io.c new3/src/libscotch/graph_io.c 965 991 *** src/src/libscotch/graph_io.c 2008-05-22 06:44:42.000000000 -0700 966 --- new 2/src/libscotch/graph_io.c 2010-04-26 10:35:09.936996680-0700992 --- new3/src/libscotch/graph_io.c 2010-04-30 10:28:22.245131108 -0700 967 993 *************** 968 994 *** 86,92 **** … … 1200 1226 } 1201 1227 1202 diff -rc src/src/libscotch/graph_io_scot.c new 2/src/libscotch/graph_io_scot.c1228 diff -rc src/src/libscotch/graph_io_scot.c new3/src/libscotch/graph_io_scot.c 1203 1229 *** src/src/libscotch/graph_io_scot.c 2008-05-22 06:44:42.000000000 -0700 1204 --- new 2/src/libscotch/graph_io_scot.c 2010-04-26 10:35:09.944996687-07001230 --- new3/src/libscotch/graph_io_scot.c 2010-04-30 10:28:22.251131111 -0700 1205 1231 *************** 1206 1232 *** 89,95 **** … … 1217 1243 } 1218 1244 1219 diff -rc src/src/libscotch/library_arch.c new 2/src/libscotch/library_arch.c1245 diff -rc src/src/libscotch/library_arch.c new3/src/libscotch/library_arch.c 1220 1246 *** src/src/libscotch/library_arch.c 2008-05-22 06:44:42.000000000 -0700 1221 --- new 2/src/libscotch/library_arch.c 2010-04-26 10:35:09.952996693 -07001247 --- new3/src/libscotch/library_arch.c 2010-04-30 10:28:22.256131113 -0700 1222 1248 *************** 1223 1249 *** 120,128 **** … … 1252 1278 1253 1279 /*+ This routine saves the given opaque 1254 diff -rc src/src/libscotch/library_arch_f.c new 2/src/libscotch/library_arch_f.c1280 diff -rc src/src/libscotch/library_arch_f.c new3/src/libscotch/library_arch_f.c 1255 1281 *** src/src/libscotch/library_arch_f.c 2008-05-22 06:44:42.000000000 -0700 1256 --- new 2/src/libscotch/library_arch_f.c 2010-04-26 10:35:09.959996699-07001282 --- new3/src/libscotch/library_arch_f.c 2010-04-30 10:28:22.260131115 -0700 1257 1283 *************** 1258 1284 *** 121,127 **** … … 1269 1295 fclose (stream); /* This closes filenum too */ 1270 1296 1271 diff -rc src/src/libscotch/library_error_exit.c new 2/src/libscotch/library_error_exit.c1297 diff -rc src/src/libscotch/library_error_exit.c new3/src/libscotch/library_error_exit.c 1272 1298 *** src/src/libscotch/library_error_exit.c 2009-01-20 00:36:33.000000000 -0800 1273 --- new 2/src/libscotch/library_error_exit.c 2010-04-26 10:35:09.966996705-07001299 --- new3/src/libscotch/library_error_exit.c 2010-04-30 10:28:22.265131117 -0700 1274 1300 *************** 1275 1301 *** 114,119 **** … … 1344 1370 + #endif /* MATLAB */ 1345 1371 } 1346 diff -rc src/src/libscotch/library_graph.c new 2/src/libscotch/library_graph.c1372 diff -rc src/src/libscotch/library_graph.c new3/src/libscotch/library_graph.c 1347 1373 *** src/src/libscotch/library_graph.c 2008-05-22 07:28:12.000000000 -0700 1348 --- new 2/src/libscotch/library_graph.c 2010-04-26 10:35:09.973996711-07001374 --- new3/src/libscotch/library_graph.c 2010-04-30 10:28:22.270131119 -0700 1349 1375 *************** 1350 1376 *** 137,143 **** … … 1389 1415 1390 1416 /*+ This routine saves the contents of the given 1391 diff -rc src/src/libscotch/library_graph_f.c new 2/src/libscotch/library_graph_f.c1417 diff -rc src/src/libscotch/library_graph_f.c new3/src/libscotch/library_graph_f.c 1392 1418 *** src/src/libscotch/library_graph_f.c 2008-05-22 06:44:43.000000000 -0700 1393 --- new 2/src/libscotch/library_graph_f.c 2010-04-26 10:35:09.981996718-07001419 --- new3/src/libscotch/library_graph_f.c 2010-04-30 10:28:22.275131121 -0700 1394 1420 *************** 1395 1421 *** 136,142 **** … … 1406 1432 fclose (stream); /* This closes filenum too */ 1407 1433 1408 diff -rc src/src/libscotch/library_graph_map.c new 2/src/libscotch/library_graph_map.c1434 diff -rc src/src/libscotch/library_graph_map.c new3/src/libscotch/library_graph_map.c 1409 1435 *** src/src/libscotch/library_graph_map.c 2008-09-28 04:04:05.000000000 -0700 1410 --- new 2/src/libscotch/library_graph_map.c 2010-04-06 15:51:57.678253000-07001436 --- new3/src/libscotch/library_graph_map.c 2010-04-30 10:28:22.280131123 -0700 1411 1437 *************** 1412 1438 *** 182,192 **** … … 1431 1457 1432 1458 /*+ This routine computes a mapping 1433 diff -rc src/src/libscotch/library_graph_map_f.c new 2/src/libscotch/library_graph_map_f.c1459 diff -rc src/src/libscotch/library_graph_map_f.c new3/src/libscotch/library_graph_map_f.c 1434 1460 *** src/src/libscotch/library_graph_map_f.c 2008-06-28 03:44:26.000000000 -0700 1435 --- new 2/src/libscotch/library_graph_map_f.c 2010-04-26 10:35:09.995996730-07001461 --- new3/src/libscotch/library_graph_map_f.c 2010-04-30 10:28:22.285131126 -0700 1436 1462 *************** 1437 1463 *** 183,189 **** … … 1448 1474 fclose (stream); /* This closes filenum too */ 1449 1475 1450 Only in new2/src/libscotch: library_graph_map_save.c 1451 diff -rc src/src/libscotch/library.h new2/src/libscotch/library.h 1476 diff -rc src/src/libscotch/library.h new3/src/libscotch/library.h 1452 1477 *** src/src/libscotch/library.h 2009-05-09 16:08:03.000000000 -0700 1453 --- new 2/src/libscotch/library.h 2010-04-26 10:35:10.002996736-07001478 --- new3/src/libscotch/library.h 2010-04-30 10:28:22.291131128 -0700 1454 1479 *************** 1455 1480 *** 134,140 **** … … 1494 1519 int SCOTCH_graphMapCompute (const SCOTCH_Graph * const, SCOTCH_Mapping * const, const SCOTCH_Strat * const); 1495 1520 int SCOTCH_graphMap (const SCOTCH_Graph * const, const SCOTCH_Arch * const, const SCOTCH_Strat * const, SCOTCH_Num * const); 1496 diff -rc src/src/libscotch/Makefile new 2/src/libscotch/Makefile1521 diff -rc src/src/libscotch/Makefile new3/src/libscotch/Makefile 1497 1522 *** src/src/libscotch/Makefile 2009-05-09 16:08:04.000000000 -0700 1498 --- new 2/src/libscotch/Makefile 2010-04-26 10:35:10.011996000-07001523 --- new3/src/libscotch/Makefile 2010-04-30 10:28:22.297131131 -0700 1499 1524 *************** 1500 1525 *** 49,55 **** … … 1533 1558 -$(CP) scotch.h scotchf.h $(includedir) 1534 1559 -$(CP) libscotch$(LIB) libscotcherr*$(LIB) $(libdir) 1535 Only in new2/src/libscotch: Makefile_save 1536 diff -rc src/src/libscotch/mapping.h new2/src/libscotch/mapping.h 1560 diff -rc src/src/libscotch/mapping.h new3/src/libscotch/mapping.h 1537 1561 *** src/src/libscotch/mapping.h 2008-10-27 08:27:47.000000000 -0700 1538 --- new 2/src/libscotch/mapping.h 2010-04-26 10:35:10.019996751-07001562 --- new3/src/libscotch/mapping.h 2010-04-30 10:28:22.302131133 -0700 1539 1563 *************** 1540 1564 *** 106,112 **** … … 1551 1575 1552 1576 #undef static 1553 diff -rc src/src/libscotch/mapping_io.c new 2/src/libscotch/mapping_io.c1577 diff -rc src/src/libscotch/mapping_io.c new3/src/libscotch/mapping_io.c 1554 1578 *** src/src/libscotch/mapping_io.c 2008-05-22 06:44:43.000000000 -0700 1555 --- new 2/src/libscotch/mapping_io.c 2010-04-26 10:35:10.026996757-07001579 --- new3/src/libscotch/mapping_io.c 2010-04-30 10:28:22.307131135 -0700 1556 1580 *************** 1557 1581 *** 199,204 **** … … 1640 1664 return (0); 1641 1665 } 1642 diff -rc src/src/libscotch/mesh_io_scot.c new 2/src/libscotch/mesh_io_scot.c1666 diff -rc src/src/libscotch/mesh_io_scot.c new3/src/libscotch/mesh_io_scot.c 1643 1667 *** src/src/libscotch/mesh_io_scot.c 2008-05-22 06:44:43.000000000 -0700 1644 --- new 2/src/libscotch/mesh_io_scot.c 2010-04-26 10:35:10.033996763-07001668 --- new3/src/libscotch/mesh_io_scot.c 2010-04-30 10:28:22.312131137 -0700 1645 1669 *************** 1646 1670 *** 85,91 **** … … 1657 1681 } 1658 1682 1659 diff -rc src/src/libscotch/parser_ll.l new2/src/libscotch/parser_ll.l 1683 diff -rc src/src/libscotch/module.h new3/src/libscotch/module.h 1684 *** src/src/libscotch/module.h 2009-04-26 23:07:14.000000000 -0700 1685 --- new3/src/libscotch/module.h 2010-05-03 14:48:29.655638124 -0700 1686 *************** 1687 *** 156,161 **** 1688 --- 156,162 ---- 1689 #define intSave _SCOTCHintSave 1690 #define intAscn _SCOTCHintAscn 1691 #define intPerm _SCOTCHintPerm 1692 + #define intRandResetStatic _SCOTCHintRandResetStatic 1693 #define intRandReset _SCOTCHintRandReset 1694 #define intRandInit _SCOTCHintRandInit 1695 /* #define intRandVal _SCOTCHintRandVal Already a macro */ 1696 diff -rc src/src/libscotch/parser_ll.l new3/src/libscotch/parser_ll.l 1660 1697 *** src/src/libscotch/parser_ll.l 2008-05-22 06:44:43.000000000 -0700 1661 --- new 2/src/libscotch/parser_ll.l 2010-04-29 14:45:27.766400063-07001698 --- new3/src/libscotch/parser_ll.l 2010-04-30 10:28:22.318131140 -0700 1662 1699 *************** 1663 1700 *** 192,197 **** … … 1686 1723 yyrestart (yyin); /* (Re-)initialize the parser */ 1687 1724 #endif /* FLEX_SCANNER */ 1688 Only in new2/src/libscotch: parser_ll_save.c 1689 Only in new2/src/libscotch: parser_yy_save.c 1690 diff -rc src/src/libscotch/parser_yy.y new2/src/libscotch/parser_yy.y 1725 diff -rc src/src/libscotch/parser_yy.y new3/src/libscotch/parser_yy.y 1691 1726 *** src/src/libscotch/parser_yy.y 2008-10-22 15:12:48.000000000 -0700 1692 --- new 2/src/libscotch/parser_yy.y 2010-04-29 11:48:09.378829347-07001727 --- new3/src/libscotch/parser_yy.y 2010-04-30 10:28:22.363131160 -0700 1693 1728 *************** 1694 1729 *** 774,779 **** … … 1701 1736 if (stratParserParse2 () != 0) { /* Parse the strategy string */ 1702 1737 if (parserstratcurr != NULL) 1703 diff -rc src/src/libscotch/vgraph_separate_vw.c new 2/src/libscotch/vgraph_separate_vw.c1738 diff -rc src/src/libscotch/vgraph_separate_vw.c new3/src/libscotch/vgraph_separate_vw.c 1704 1739 *** src/src/libscotch/vgraph_separate_vw.c 2008-05-22 06:44:43.000000000 -0700 1705 --- new 2/src/libscotch/vgraph_separate_vw.c 2010-04-27 11:34:15.756132566-07001740 --- new3/src/libscotch/vgraph_separate_vw.c 2010-04-30 10:28:22.368131162 -0700 1706 1741 *************** 1707 1742 *** 83,88 **** … … 1723 1758 return (0); 1724 1759 } 1725 Only in new2/src/libscotch: .vgraph_separate_vw.c.swp 1726 Only in new2/src/libscotch: vgraph_separate_vw_old.c 1727 diff -rc src/src/Makefile new2/src/Makefile 1760 diff -rc src/src/Makefile new3/src/Makefile 1728 1761 *** src/src/Makefile 2008-09-15 05:50:51.000000000 -0700 1729 --- new 2/src/Makefile 2010-04-26 10:35:10.040996769-07001762 --- new3/src/Makefile 2010-04-30 10:28:22.373131164 -0700 1730 1763 *************** 1731 1764 *** 97,102 **** … … 1741 1774 -$(CP) -f ../bin/[agm]*$(EXE) $(bindir) 1742 1775 -$(CP) -f ../include/*scotch*.h $(includedir) 1743 Only in new 2/src: Makefile.inc1744 Only in new 2/src/scotch: gmap_mex.c1745 Only in new 2/src/scotch: gmapx.c1746 diff -rc src/src/scotch/Makefile new 2/src/scotch/Makefile1776 Only in new3/src: Makefile.inc 1777 Only in new3/src/scotch: gmap_mex.c 1778 Only in new3/src/scotch: gmapx.c 1779 diff -rc src/src/scotch/Makefile new3/src/scotch/Makefile 1747 1780 *** src/src/scotch/Makefile 2009-04-27 02:19:43.000000000 -0700 1748 --- new 2/src/scotch/Makefile 2010-04-26 10:35:10.048996776-07001781 --- new3/src/scotch/Makefile 2010-04-30 10:28:22.379131167 -0700 1749 1782 *************** 1750 1783 *** 49,59 **** -
issm/trunk/externalpackages/scotch/scotch_jes_notes.txt
r3640 r3650 297 297 - inserted print statements into common_integer.c/intRand*, common_memory.c/mem*, and vgraph_separate_vw.c/vgraphSeparateVw to monitor static variables in case those have to be reset. 298 298 299 5/03/10: 300 301 - implemented gpart functionality in gmap_mex.c, gmapx.c, and new gpart.m. 302 - implemented common_integer.c/intRandResetStatic to reset static variables from previous runs. 303
Note:
See TracChangeset
for help on using the changeset viewer.