Mercurial > cgi-bin > hgwebdir.cgi > PR > Applications > VReo > Reo__Matrix_Mult
changeset 2:96deb7b4502e
working, k=4
line diff
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/PR_defs__turn_on_and_off.h Sat Mar 29 06:02:18 2014 -0700 1.3 @@ -0,0 +1,90 @@ 1.4 +/* 1.5 + * Copyright 2009 OpenSourceResearchInstitute.org 1.6 + * Licensed under GNU General Public License version 2 1.7 + * 1.8 + * Author: seanhalle@yahoo.com 1.9 + * 1.10 + */ 1.11 + 1.12 +#ifndef _PR_DEFS_TURN_ON_AND_OFF_H 1.13 +#define _PR_DEFS_TURN_ON_AND_OFF_H 1.14 +#define _GNU_SOURCE 1.15 + 1.16 + 1.17 + 1.18 + 1.19 +//====================== Turn Debug things on and off ===================== 1.20 +/*When DEBUG__TURN_ON_SEQUENTIAL_MODE is defined, PR does sequential exe in the main thread 1.21 + * It still does co-routines and all the mechanisms are the same, it just 1.22 + * has only a single thread and animates Slvs one at a time 1.23 + */ 1.24 +//#define DEBUG__TURN_ON_SEQUENTIAL_MODE 1.25 + //check for sequential mode and redefine num cores to be 1 so that lang 1.26 + // code doesn't have to do special #ifdef for sequential mode 1.27 +#ifdef DEBUG__TURN_ON_SEQUENTIAL_MODE 1.28 + #ifdef NUM_CORES 1.29 + #undef NUM_CORES 1.30 + #endif 1.31 + #define NUM_CORES 1 1.32 +#endif 1.33 + 1.34 +/*turns on the probe-instrumentation in the application -- when not 1.35 + * defined, the calls to the probe functions turn into comments 1.36 + */ 1.37 +//#define DEBUG__TURN_ON_DEBUG_PRINT 1.38 + 1.39 +/*These defines turn types of bug messages on and off 1.40 + */ 1.41 +#define dbgAppFlow TRUE /* Top level flow of application code -- general*/ 1.42 +#define dbgProbes FALSE /* for issues inside probes themselves*/ 1.43 +#define dbgMaster FALSE /* obsolete*/ 1.44 +#define dbgRqstHdlr TRUE /* in request handler code*/ 1.45 +#define dbgSS FALSE /* in request handler code*/ 1.46 +#define dbgInfra FALSE /* in request handler code*/ 1.47 + 1.48 +//#define DEBUG__TURN_ON_ERROR_MSGS 1.49 + 1.50 +//================== Turn Probe Things on and off ==================== 1.51 +/*Probes are used in the application as a cheap, convenient, and fast way 1.52 + * to collect statistics. Define this to enable them, else the probe 1.53 + * statements in the application code all turn into empty whitespace 1.54 + * in the pre-processor 1.55 + */ 1.56 +//#define PROBES__TURN_ON_STATS_PROBES 1.57 + 1.58 +/*When PROBES__TURN_ON_STATS_PROBES is defined, turn on one of these to choose 1.59 + * what kind of measurement the probes store 1.60 + */ 1.61 +//#define PROBES__USE_TSC_PROBES 1.62 +#define PROBES__USE_TIME_OF_DAY_PROBES 1.63 +//#define PROBES__USE_PERF_CTR_PROBES 1.64 + 1.65 + 1.66 +//============== Turn Internal Measurement Things on and off =============== 1.67 + 1.68 +//#define MEAS__TURN_ON_SUSP_MEAS 1.69 +//#define MEAS__TURN_ON_MASTER_MEAS 1.70 +//#define MEAS__TURN_ON_MASTER_LOCK_MEAS 1.71 +//#define MEAS__TURN_ON_MALLOC_MEAS 1.72 +//#define MEAS__TURN_ON_PLUGIN_MEAS 1.73 +//#define MEAS__TURN_ON_SYSTEM_MEAS 1.74 + /*turn on/off subtraction of create measurements from plugin meas*/ 1.75 +//#define MEAS__TURN_ON_EXCLUDE_CREATION_TIME 1.76 + 1.77 + 1.78 +//#define HOLISTIC__TURN_ON_PERF_COUNTERS 1.79 +//#define HOLISTIC__TURN_ON_OBSERVE_UCC 1.80 +//#define HOLISTIC__TURN_ON_DETECT_CONSTRAINT_GRAPH 1.81 + 1.82 +//=================== Turn on or off system options ======================= 1.83 +// 1.84 +/*Defining SYS__TURN_ON_WORK_STEALING causes the core controller behavior 1.85 + * to change. When it detects too many back-to-back masters, then it 1.86 + * searches the other core controllers, looking for work it can steal from 1.87 + * them. 1.88 + */ 1.89 +//#define SYS__TURN_ON_WORK_STEALING 1.90 + 1.91 +//=========================================================================== 1.92 +#endif /* */ 1.93 +
2.1 --- a/Reo__Matrix_Mult/Circuit.c Wed Feb 19 09:27:10 2014 -0800 2.2 +++ b/Reo__Matrix_Mult/Circuit.c Sat Mar 29 06:02:18 2014 -0700 2.3 @@ -6,12 +6,12 @@ 2.4 VReoCircuit *create_circuit(SlaveVP *animVP) { 2.5 2.6 /* Declare variables. */ 2.7 - VReoCircuit *circuit; 2.8 - VReoBridge *bridge, *bridges, **boundaryBridges; 2.9 - VReoIsland *islands, *island; 2.10 + VReoCircuit *circuit; 2.11 + VReoBridge *bridge, *bridges, **boundaryBridges; 2.12 + VReoIsland *islands, *island; 2.13 VReoO1island *o1islands, *o1island; 2.14 VReoCheckerFn *bridgeReaderCheckerFns, *bridgeWriterCheckerFns; 2.15 - VReoDoerFn *bridgeReaderDoerFns, *bridgeWriterDoerFns; 2.16 + VReoDoerFn *bridgeReaderDoerFns, *bridgeWriterDoerFns; 2.17 PrivQueueStruc *offerQ0, *offerQ1; 2.18 VReoPartnerQStruct *partnerQStruct0, *partnerQStruct1; 2.19 2.20 @@ -29,8 +29,6 @@ 2.21 bridge = &(bridges[CKT_BRIDGE_Broad_0]); 2.22 bridge->buffer = NULL; 2.23 bridge->bridgeIsFull = FALSE; 2.24 - bridge->writerType = None; 2.25 - bridge->readerType = None; 2.26 bridge->waitingReaderVP = NULL; 2.27 bridge->waitingWriterVP = NULL; 2.28 bridge->readerPartnerQStruct = NULL; 2.29 @@ -54,6 +52,24 @@ 2.30 bridge->readerPartnerQStruct = NULL; 2.31 bridge->writerPartnerQStruct = NULL; 2.32 2.33 + /* Initialize bridge In_2. */ 2.34 + bridge = &(bridges[CKT_BRIDGE_In_2]); 2.35 + bridge->buffer = NULL; 2.36 + bridge->bridgeIsFull = FALSE; 2.37 + bridge->waitingReaderVP = NULL; 2.38 + bridge->waitingWriterVP = NULL; 2.39 + bridge->readerPartnerQStruct = NULL; 2.40 + bridge->writerPartnerQStruct = NULL; 2.41 + 2.42 + /* Initialize bridge In_3. */ 2.43 + bridge = &(bridges[CKT_BRIDGE_In_3]); 2.44 + bridge->buffer = NULL; 2.45 + bridge->bridgeIsFull = FALSE; 2.46 + bridge->waitingReaderVP = NULL; 2.47 + bridge->waitingWriterVP = NULL; 2.48 + bridge->readerPartnerQStruct = NULL; 2.49 + bridge->writerPartnerQStruct = NULL; 2.50 + 2.51 /* Initialize bridge Out_0. */ 2.52 bridge = &(bridges[CKT_BRIDGE_Out_0]); 2.53 bridge->buffer = NULL; 2.54 @@ -75,8 +91,7 @@ 2.55 /* Initialize bridge FIFO0. */ 2.56 bridge = &(bridges[CKT_BRIDGE_FIFO0]); 2.57 bridge->buffer = NULL; 2.58 - bridge->bridgeIsFull = FALSE; 2.59 - bridge->waitingReaderVP = NULL; 2.60 + bridge->bridgeIsFull = FALSE;bridge->waitingReaderVP = NULL; 2.61 bridge->waitingWriterVP = NULL; 2.62 bridge->readerPartnerQStruct = NULL; 2.63 bridge->writerPartnerQStruct = NULL; 2.64 @@ -93,8 +108,7 @@ 2.65 /* Initialize bridge FIFO2. */ 2.66 bridge = &(bridges[CKT_BRIDGE_FIFO2]); 2.67 bridge->buffer = NULL; 2.68 - bridge->bridgeIsFull = FALSE; 2.69 - bridge->waitingReaderVP = NULL; 2.70 + bridge->bridgeIsFull = FALSE;bridge->waitingReaderVP = NULL; 2.71 bridge->waitingWriterVP = NULL; 2.72 bridge->readerPartnerQStruct = NULL; 2.73 bridge->writerPartnerQStruct = NULL; 2.74 @@ -108,13 +122,49 @@ 2.75 bridge->readerPartnerQStruct = NULL; 2.76 bridge->writerPartnerQStruct = NULL; 2.77 2.78 + /* Initialize bridge FIFO4. */ 2.79 + bridge = &(bridges[CKT_BRIDGE_FIFO4]); 2.80 + bridge->buffer = NULL; 2.81 + bridge->bridgeIsFull = FALSE;bridge->waitingReaderVP = NULL; 2.82 + bridge->waitingWriterVP = NULL; 2.83 + bridge->readerPartnerQStruct = NULL; 2.84 + bridge->writerPartnerQStruct = NULL; 2.85 + 2.86 + /* Initialize bridge FIFO5. */ 2.87 + bridge = &(bridges[CKT_BRIDGE_FIFO5]); 2.88 + bridge->buffer = malloc(1); 2.89 + bridge->bridgeIsFull = TRUE; 2.90 + bridge->waitingReaderVP = NULL; 2.91 + bridge->waitingWriterVP = NULL; 2.92 + bridge->readerPartnerQStruct = NULL; 2.93 + bridge->writerPartnerQStruct = NULL; 2.94 + 2.95 + /* Initialize bridge FIFO6. */ 2.96 + bridge = &(bridges[CKT_BRIDGE_FIFO6]); 2.97 + bridge->buffer = NULL; 2.98 + bridge->bridgeIsFull = FALSE;bridge->waitingReaderVP = NULL; 2.99 + bridge->waitingWriterVP = NULL; 2.100 + bridge->readerPartnerQStruct = NULL; 2.101 + bridge->writerPartnerQStruct = NULL; 2.102 + 2.103 + /* Initialize bridge FIFO7. */ 2.104 + bridge = &(bridges[CKT_BRIDGE_FIFO7]); 2.105 + bridge->buffer = malloc(1); 2.106 + bridge->bridgeIsFull = TRUE; 2.107 + bridge->waitingReaderVP = NULL; 2.108 + bridge->waitingWriterVP = NULL; 2.109 + bridge->readerPartnerQStruct = NULL; 2.110 + bridge->writerPartnerQStruct = NULL; 2.111 + 2.112 /* Initialize boundary bridges. */ 2.113 boundaryBridges = PR_WL__malloc(NUM_BOUNDARY_BRIDGES * sizeof(VReoBridge*)); 2.114 boundaryBridges[0] = &(bridges[CKT_BRIDGE_Broad_0]); 2.115 boundaryBridges[1] = &(bridges[CKT_BRIDGE_In_0]); 2.116 boundaryBridges[2] = &(bridges[CKT_BRIDGE_In_1]); 2.117 - boundaryBridges[3] = &(bridges[CKT_BRIDGE_Out_0]); 2.118 - boundaryBridges[4] = &(bridges[CKT_BRIDGE_Out_1]); 2.119 + boundaryBridges[3] = &(bridges[CKT_BRIDGE_In_2]); 2.120 + boundaryBridges[4] = &(bridges[CKT_BRIDGE_In_3]); 2.121 + boundaryBridges[5] = &(bridges[CKT_BRIDGE_Out_0]); 2.122 + boundaryBridges[6] = &(bridges[CKT_BRIDGE_Out_1]); 2.123 2.124 // 2.125 // INITIALIZE ISLANDS 2.126 @@ -124,7 +174,7 @@ 2.127 island = &(islands[CKT_I0]); 2.128 2.129 island->numCheckerFns = 1; 2.130 - island->numBridges = 4; 2.131 + island->numBridges = 6; 2.132 2.133 island->checkerFns = PR_WL__malloc(island->numCheckerFns * sizeof(VReoCheckerFn)); 2.134 island->checkerFns[0] = &Checker_0__I0; 2.135 @@ -136,7 +186,9 @@ 2.136 island->bridges[I0_BRIDGE_Broad_0] = &(bridges[CKT_BRIDGE_Broad_0]); 2.137 island->bridges[I0_BRIDGE_Broad_0Output1] = &(bridges[CKT_BRIDGE_Broad_0Output1]); 2.138 island->bridges[I0_BRIDGE_Broad_0Output2] = &(bridges[CKT_BRIDGE_Broad_0Output2]); 2.139 + island->bridges[I0_BRIDGE_Broad_0Output3] = &(bridges[CKT_BRIDGE_Broad_0Output3]); 2.140 island->bridges[I0_BRIDGE_Out_1] = &(bridges[CKT_BRIDGE_Out_1]); 2.141 + island->bridges[I0_BRIDGE_Broad_0Output4] = &(bridges[CKT_BRIDGE_Broad_0Output4]); 2.142 2.143 /* 2.144 * Initialize Island 0: register Island 0 as a reader on 2.145 @@ -144,8 +196,8 @@ 2.146 */ 2.147 bridgeReaderCheckerFns = PR_WL__malloc( NUM_I0_CHECKERS_INVOLVE_BRIDGE_Broad_0 * sizeof(VReoCheckerFn *) ); 2.148 bridgeReaderDoerFns = PR_WL__malloc( NUM_I0_CHECKERS_INVOLVE_BRIDGE_Broad_0 * sizeof(VReoDoerFn *) ); 2.149 - bridgeReaderCheckerFns[0] = (VReoCheckerFn) &CHECKER3_I0; 2.150 - bridgeReaderDoerFns[0] = (VReoDoerFn) &DOER3_I0; 2.151 + bridgeReaderCheckerFns[0] = (VReoCheckerFn) &CHECKER2_I0; 2.152 + bridgeReaderDoerFns[0] = (VReoDoerFn) &DOER2_I0; 2.153 2.154 bridge = &(bridges[CKT_BRIDGE_Broad_0]); 2.155 bridge->reader = &(islands[CKT_I0]); 2.156 @@ -160,8 +212,8 @@ 2.157 */ 2.158 bridgeWriterCheckerFns = PR_WL__malloc( NUM_I0_CHECKERS_INVOLVE_BRIDGE_Broad_0Output1 * sizeof(VReoCheckerFn *) ); 2.159 bridgeWriterDoerFns = PR_WL__malloc( NUM_I0_CHECKERS_INVOLVE_BRIDGE_Broad_0Output1 * sizeof(VReoDoerFn *) ); 2.160 - bridgeWriterCheckerFns[0] = (VReoCheckerFn) &CHECKER3_I0; 2.161 - bridgeWriterDoerFns[0] = (VReoDoerFn) &DOER3_I0; 2.162 + bridgeWriterCheckerFns[0] = (VReoCheckerFn) &CHECKER2_I0; 2.163 + bridgeWriterDoerFns[0] = (VReoDoerFn) &DOER2_I0; 2.164 2.165 bridge = &(bridges[CKT_BRIDGE_Broad_0Output1]); 2.166 bridge->writer = &(islands[CKT_I0]); 2.167 @@ -176,8 +228,8 @@ 2.168 */ 2.169 bridgeWriterCheckerFns = PR_WL__malloc( NUM_I0_CHECKERS_INVOLVE_BRIDGE_Broad_0Output2 * sizeof(VReoCheckerFn *) ); 2.170 bridgeWriterDoerFns = PR_WL__malloc( NUM_I0_CHECKERS_INVOLVE_BRIDGE_Broad_0Output2 * sizeof(VReoDoerFn *) ); 2.171 - bridgeWriterCheckerFns[0] = (VReoCheckerFn) &CHECKER3_I0; 2.172 - bridgeWriterDoerFns[0] = (VReoDoerFn) &DOER3_I0; 2.173 + bridgeWriterCheckerFns[0] = (VReoCheckerFn) &CHECKER2_I0; 2.174 + bridgeWriterDoerFns[0] = (VReoDoerFn) &DOER2_I0; 2.175 2.176 bridge = &(bridges[CKT_BRIDGE_Broad_0Output2]); 2.177 bridge->writer = &(islands[CKT_I0]); 2.178 @@ -188,12 +240,28 @@ 2.179 2.180 /* 2.181 * Initialize Island 0: register Island 0 as a writer on 2.182 + * bridge Broad_0Output3. 2.183 + */ 2.184 + bridgeWriterCheckerFns = PR_WL__malloc( NUM_I0_CHECKERS_INVOLVE_BRIDGE_Broad_0Output3 * sizeof(VReoCheckerFn *) ); 2.185 + bridgeWriterDoerFns = PR_WL__malloc( NUM_I0_CHECKERS_INVOLVE_BRIDGE_Broad_0Output3 * sizeof(VReoDoerFn *) ); 2.186 + bridgeWriterCheckerFns[0] = (VReoCheckerFn) &CHECKER2_I0; 2.187 + bridgeWriterDoerFns[0] = (VReoDoerFn) &DOER2_I0; 2.188 + 2.189 + bridge = &(bridges[CKT_BRIDGE_Broad_0Output3]); 2.190 + bridge->writer = &(islands[CKT_I0]); 2.191 + bridge->writerType = Island; 2.192 + bridge->numWriterCheckerFns = NUM_I0_CHECKERS_INVOLVE_BRIDGE_Broad_0Output3; 2.193 + bridge->writerCheckerFns = (VReoCheckerFn *) bridgeWriterCheckerFns; 2.194 + bridge->writerDoerFns = (VReoDoerFn *) bridgeWriterDoerFns; 2.195 + 2.196 + /* 2.197 + * Initialize Island 0: register Island 0 as a writer on 2.198 * bridge Out_1. 2.199 */ 2.200 bridgeWriterCheckerFns = PR_WL__malloc( NUM_I0_CHECKERS_INVOLVE_BRIDGE_Out_1 * sizeof(VReoCheckerFn *) ); 2.201 bridgeWriterDoerFns = PR_WL__malloc( NUM_I0_CHECKERS_INVOLVE_BRIDGE_Out_1 * sizeof(VReoDoerFn *) ); 2.202 - bridgeWriterCheckerFns[0] = (VReoCheckerFn) &CHECKER3_I0; 2.203 - bridgeWriterDoerFns[0] = (VReoDoerFn) &DOER3_I0; 2.204 + bridgeWriterCheckerFns[0] = (VReoCheckerFn) &CHECKER2_I0; 2.205 + bridgeWriterDoerFns[0] = (VReoDoerFn) &DOER2_I0; 2.206 2.207 bridge = &(bridges[CKT_BRIDGE_Out_1]); 2.208 bridge->writer = &(islands[CKT_I0]); 2.209 @@ -202,6 +270,22 @@ 2.210 bridge->writerCheckerFns = (VReoCheckerFn *) bridgeWriterCheckerFns; 2.211 bridge->writerDoerFns = (VReoDoerFn *) bridgeWriterDoerFns; 2.212 2.213 + /* 2.214 + * Initialize Island 0: register Island 0 as a writer on 2.215 + * bridge Broad_0Output4. 2.216 + */ 2.217 + bridgeWriterCheckerFns = PR_WL__malloc( NUM_I0_CHECKERS_INVOLVE_BRIDGE_Broad_0Output4 * sizeof(VReoCheckerFn *) ); 2.218 + bridgeWriterDoerFns = PR_WL__malloc( NUM_I0_CHECKERS_INVOLVE_BRIDGE_Broad_0Output4 * sizeof(VReoDoerFn *) ); 2.219 + bridgeWriterCheckerFns[0] = (VReoCheckerFn) &CHECKER2_I0; 2.220 + bridgeWriterDoerFns[0] = (VReoDoerFn) &DOER2_I0; 2.221 + 2.222 + bridge = &(bridges[CKT_BRIDGE_Broad_0Output4]); 2.223 + bridge->writer = &(islands[CKT_I0]); 2.224 + bridge->writerType = Island; 2.225 + bridge->numWriterCheckerFns = NUM_I0_CHECKERS_INVOLVE_BRIDGE_Broad_0Output4; 2.226 + bridge->writerCheckerFns = (VReoCheckerFn *) bridgeWriterCheckerFns; 2.227 + bridge->writerDoerFns = (VReoDoerFn *) bridgeWriterDoerFns; 2.228 + 2.229 /* Initialize Island 1. */ 2.230 island = &(islands[CKT_I1]); 2.231 2.232 @@ -332,11 +416,143 @@ 2.233 bridge->writerCheckerFns = (VReoCheckerFn *) bridgeWriterCheckerFns; 2.234 bridge->writerDoerFns = (VReoDoerFn *) bridgeWriterDoerFns; 2.235 2.236 + /* Initialize Island 3. */ 2.237 + island = &(islands[CKT_I3]); 2.238 + 2.239 + island->numCheckerFns = 1; 2.240 + island->numBridges = 3; 2.241 + 2.242 + island->checkerFns = PR_WL__malloc(island->numCheckerFns * sizeof(VReoCheckerFn)); 2.243 + island->checkerFns[0] = &Checker_0__I3; 2.244 + 2.245 + island->doerFns = PR_WL__malloc(island->numCheckerFns * sizeof(VReoDoerFn)); 2.246 + island->doerFns[0] = &Doer_0__I3; 2.247 + 2.248 + island->bridges = PR_WL__malloc(island->numBridges * sizeof(VReoBridge *)); 2.249 + island->bridges[I3_BRIDGE_In_2] = &(bridges[CKT_BRIDGE_In_2]); 2.250 + island->bridges[I3_BRIDGE_X_2Input0] = &(bridges[CKT_BRIDGE_X_2Input0]); 2.251 + island->bridges[I3_BRIDGE_In_2Output0] = &(bridges[CKT_BRIDGE_In_2Output0]); 2.252 + 2.253 + /* 2.254 + * Initialize Island 3: register Island 3 as a reader on 2.255 + * bridge In_2. 2.256 + */ 2.257 + bridgeReaderCheckerFns = PR_WL__malloc( NUM_I3_CHECKERS_INVOLVE_BRIDGE_In_2 * sizeof(VReoCheckerFn *) ); 2.258 + bridgeReaderDoerFns = PR_WL__malloc( NUM_I3_CHECKERS_INVOLVE_BRIDGE_In_2 * sizeof(VReoDoerFn *) ); 2.259 + bridgeReaderCheckerFns[0] = (VReoCheckerFn) &CHECKER2_I3; 2.260 + bridgeReaderDoerFns[0] = (VReoDoerFn) &DOER2_I3; 2.261 + 2.262 + bridge = &(bridges[CKT_BRIDGE_In_2]); 2.263 + bridge->reader = &(islands[CKT_I3]); 2.264 + bridge->readerType = Island; 2.265 + bridge->numReaderCheckerFns = NUM_I3_CHECKERS_INVOLVE_BRIDGE_In_2; 2.266 + bridge->readerCheckerFns = (VReoCheckerFn *) bridgeReaderCheckerFns; 2.267 + bridge->readerDoerFns = (VReoDoerFn *) bridgeReaderDoerFns; 2.268 + 2.269 + /* 2.270 + * Initialize Island 3: register Island 3 as a reader on 2.271 + * bridge X_2Input0. 2.272 + */ 2.273 + bridgeReaderCheckerFns = PR_WL__malloc( NUM_I3_CHECKERS_INVOLVE_BRIDGE_X_2Input0 * sizeof(VReoCheckerFn *) ); 2.274 + bridgeReaderDoerFns = PR_WL__malloc( NUM_I3_CHECKERS_INVOLVE_BRIDGE_X_2Input0 * sizeof(VReoDoerFn *) ); 2.275 + bridgeReaderCheckerFns[0] = (VReoCheckerFn) &CHECKER2_I3; 2.276 + bridgeReaderDoerFns[0] = (VReoDoerFn) &DOER2_I3; 2.277 + 2.278 + bridge = &(bridges[CKT_BRIDGE_X_2Input0]); 2.279 + bridge->reader = &(islands[CKT_I3]); 2.280 + bridge->readerType = Island; 2.281 + bridge->numReaderCheckerFns = NUM_I3_CHECKERS_INVOLVE_BRIDGE_X_2Input0; 2.282 + bridge->readerCheckerFns = (VReoCheckerFn *) bridgeReaderCheckerFns; 2.283 + bridge->readerDoerFns = (VReoDoerFn *) bridgeReaderDoerFns; 2.284 + 2.285 + /* 2.286 + * Initialize Island 3: register Island 3 as a writer on 2.287 + * bridge In_2Output0. 2.288 + */ 2.289 + bridgeWriterCheckerFns = PR_WL__malloc( NUM_I3_CHECKERS_INVOLVE_BRIDGE_In_2Output0 * sizeof(VReoCheckerFn *) ); 2.290 + bridgeWriterDoerFns = PR_WL__malloc( NUM_I3_CHECKERS_INVOLVE_BRIDGE_In_2Output0 * sizeof(VReoDoerFn *) ); 2.291 + bridgeWriterCheckerFns[0] = (VReoCheckerFn) &CHECKER2_I3; 2.292 + bridgeWriterDoerFns[0] = (VReoDoerFn) &DOER2_I3; 2.293 + 2.294 + bridge = &(bridges[CKT_BRIDGE_In_2Output0]); 2.295 + bridge->writer = &(islands[CKT_I3]); 2.296 + bridge->writerType = Island; 2.297 + bridge->numWriterCheckerFns = NUM_I3_CHECKERS_INVOLVE_BRIDGE_In_2Output0; 2.298 + bridge->writerCheckerFns = (VReoCheckerFn *) bridgeWriterCheckerFns; 2.299 + bridge->writerDoerFns = (VReoDoerFn *) bridgeWriterDoerFns; 2.300 + 2.301 + /* Initialize Island 4. */ 2.302 + island = &(islands[CKT_I4]); 2.303 + 2.304 + island->numCheckerFns = 1; 2.305 + island->numBridges = 3; 2.306 + 2.307 + island->checkerFns = PR_WL__malloc(island->numCheckerFns * sizeof(VReoCheckerFn)); 2.308 + island->checkerFns[0] = &Checker_0__I4; 2.309 + 2.310 + island->doerFns = PR_WL__malloc(island->numCheckerFns * sizeof(VReoDoerFn)); 2.311 + island->doerFns[0] = &Doer_0__I4; 2.312 + 2.313 + island->bridges = PR_WL__malloc(island->numBridges * sizeof(VReoBridge *)); 2.314 + island->bridges[I4_BRIDGE_In_3] = &(bridges[CKT_BRIDGE_In_3]); 2.315 + island->bridges[I4_BRIDGE_X_3Input0] = &(bridges[CKT_BRIDGE_X_3Input0]); 2.316 + island->bridges[I4_BRIDGE_In_3Output0] = &(bridges[CKT_BRIDGE_In_3Output0]); 2.317 + 2.318 + /* 2.319 + * Initialize Island 4: register Island 4 as a reader on 2.320 + * bridge In_3. 2.321 + */ 2.322 + bridgeReaderCheckerFns = PR_WL__malloc( NUM_I4_CHECKERS_INVOLVE_BRIDGE_In_3 * sizeof(VReoCheckerFn *) ); 2.323 + bridgeReaderDoerFns = PR_WL__malloc( NUM_I4_CHECKERS_INVOLVE_BRIDGE_In_3 * sizeof(VReoDoerFn *) ); 2.324 + bridgeReaderCheckerFns[0] = (VReoCheckerFn) &CHECKER3_I4; 2.325 + bridgeReaderDoerFns[0] = (VReoDoerFn) &DOER3_I4; 2.326 + 2.327 + bridge = &(bridges[CKT_BRIDGE_In_3]); 2.328 + bridge->reader = &(islands[CKT_I4]); 2.329 + bridge->readerType = Island; 2.330 + bridge->numReaderCheckerFns = NUM_I4_CHECKERS_INVOLVE_BRIDGE_In_3; 2.331 + bridge->readerCheckerFns = (VReoCheckerFn *) bridgeReaderCheckerFns; 2.332 + bridge->readerDoerFns = (VReoDoerFn *) bridgeReaderDoerFns; 2.333 + 2.334 + /* 2.335 + * Initialize Island 4: register Island 4 as a reader on 2.336 + * bridge X_3Input0. 2.337 + */ 2.338 + bridgeReaderCheckerFns = PR_WL__malloc( NUM_I4_CHECKERS_INVOLVE_BRIDGE_X_3Input0 * sizeof(VReoCheckerFn *) ); 2.339 + bridgeReaderDoerFns = PR_WL__malloc( NUM_I4_CHECKERS_INVOLVE_BRIDGE_X_3Input0 * sizeof(VReoDoerFn *) ); 2.340 + bridgeReaderCheckerFns[0] = (VReoCheckerFn) &CHECKER3_I4; 2.341 + bridgeReaderDoerFns[0] = (VReoDoerFn) &DOER3_I4; 2.342 + 2.343 + bridge = &(bridges[CKT_BRIDGE_X_3Input0]); 2.344 + bridge->reader = &(islands[CKT_I4]); 2.345 + bridge->readerType = Island; 2.346 + bridge->numReaderCheckerFns = NUM_I4_CHECKERS_INVOLVE_BRIDGE_X_3Input0; 2.347 + bridge->readerCheckerFns = (VReoCheckerFn *) bridgeReaderCheckerFns; 2.348 + bridge->readerDoerFns = (VReoDoerFn *) bridgeReaderDoerFns; 2.349 + 2.350 + /* 2.351 + * Initialize Island 4: register Island 4 as a writer on 2.352 + * bridge In_3Output0. 2.353 + */ 2.354 + bridgeWriterCheckerFns = PR_WL__malloc( NUM_I4_CHECKERS_INVOLVE_BRIDGE_In_3Output0 * sizeof(VReoCheckerFn *) ); 2.355 + bridgeWriterDoerFns = PR_WL__malloc( NUM_I4_CHECKERS_INVOLVE_BRIDGE_In_3Output0 * sizeof(VReoDoerFn *) ); 2.356 + bridgeWriterCheckerFns[0] = (VReoCheckerFn) &CHECKER3_I4; 2.357 + bridgeWriterDoerFns[0] = (VReoDoerFn) &DOER3_I4; 2.358 + 2.359 + bridge = &(bridges[CKT_BRIDGE_In_3Output0]); 2.360 + bridge->writer = &(islands[CKT_I4]); 2.361 + bridge->writerType = Island; 2.362 + bridge->numWriterCheckerFns = NUM_I4_CHECKERS_INVOLVE_BRIDGE_In_3Output0; 2.363 + bridge->writerCheckerFns = (VReoCheckerFn *) bridgeWriterCheckerFns; 2.364 + bridge->writerDoerFns = (VReoDoerFn *) bridgeWriterDoerFns; 2.365 + 2.366 /* Initialize O1Island 0. */ 2.367 o1island = &(o1islands[CKT_O1I0]); 2.368 2.369 - o1island->numBridges = 3; 2.370 + o1island->numBridges = 5; 2.371 o1island->bridges = PR_WL__malloc(o1island->numBridges * sizeof(VReoBridge *)); 2.372 + o1island->bridges[O1I0_BRIDGE_Out_0Input3] = &(bridges[CKT_BRIDGE_Out_0Input3]); 2.373 + o1island->bridges[O1I0_BRIDGE_Out_0Input2] = &(bridges[CKT_BRIDGE_Out_0Input2]); 2.374 o1island->bridges[O1I0_BRIDGE_Out_0Input1] = &(bridges[CKT_BRIDGE_Out_0Input1]); 2.375 o1island->bridges[O1I0_BRIDGE_Out_0Input0] = &(bridges[CKT_BRIDGE_Out_0Input0]); 2.376 o1island->bridges[O1I0_BRIDGE_Out_0] = &(bridges[CKT_BRIDGE_Out_0]); 2.377 @@ -364,6 +580,26 @@ 2.378 2.379 /* 2.380 * Initialize O1Island 0: register O1Island 0 as a reader on 2.381 + * bridge Out_0Input3. 2.382 + */ 2.383 + bridge = &(bridges[CKT_BRIDGE_Out_0Input3]); 2.384 + bridge->reader = &(o1island); 2.385 + bridge->readerType = O1island; 2.386 + bridge->readerPartnerQStruct = partnerQStruct0; 2.387 + bridge->readerOfferQ = offerQ0; 2.388 + 2.389 + /* 2.390 + * Initialize O1Island 0: register O1Island 0 as a reader on 2.391 + * bridge Out_0Input2. 2.392 + */ 2.393 + bridge = &(bridges[CKT_BRIDGE_Out_0Input2]); 2.394 + bridge->reader = &(o1island); 2.395 + bridge->readerType = O1island; 2.396 + bridge->readerPartnerQStruct = partnerQStruct0; 2.397 + bridge->readerOfferQ = offerQ0; 2.398 + 2.399 + /* 2.400 + * Initialize O1Island 0: register O1Island 0 as a reader on 2.401 * bridge Out_0Input1. 2.402 */ 2.403 bridge = &(bridges[CKT_BRIDGE_Out_0Input1]); 2.404 @@ -397,6 +633,16 @@ 2.405 // 2.406 2.407 /* Assumption: (writerType != NULL) implies (writerType != VP) */ 2.408 + bridge = &(bridges[CKT_BRIDGE_Out_0Input3]); 2.409 + if (bridge->writerType != None && bridge->bridgeIsFull) 2.410 + writePrivQ( bridge, bridge->readerOfferQ ); 2.411 + 2.412 + /* Assumption: (writerType != NULL) implies (writerType != VP) */ 2.413 + bridge = &(bridges[CKT_BRIDGE_Out_0Input2]); 2.414 + if (bridge->writerType != None && bridge->bridgeIsFull) 2.415 + writePrivQ( bridge, bridge->readerOfferQ ); 2.416 + 2.417 + /* Assumption: (writerType != NULL) implies (writerType != VP) */ 2.418 bridge = &(bridges[CKT_BRIDGE_Out_0Input1]); 2.419 if (bridge->writerType != None && bridge->bridgeIsFull) 2.420 writePrivQ( bridge, bridge->readerOfferQ ); 2.421 @@ -432,6 +678,7 @@ 2.422 void create_VPs_w_init_and_connect( VReoCircuit *circuit, void **initDatums, 2.423 SlaveVP *animVP) 2.424 { 2.425 + 2.426 /* Declare variables. */ 2.427 VReoBridge **boundaryBridges, *bridges, **bridgesForVP; 2.428 SlaveVP **VPs; 2.429 @@ -446,16 +693,16 @@ 2.430 /* Allocate memory for VPs. */ 2.431 VPs = PR_WL__malloc(NUM_VPs * sizeof(SlaveVP *)); 2.432 2.433 - /* Create Producer VP 0. */ 2.434 + /* Create Producer VP 0 (Producer 0). */ 2.435 bridgesForVP = PR_WL__malloc(1 * sizeof(VReoBridge *)); 2.436 bridgesForVP[0] = boundaryBridges[CKT_VP_PROD0]; 2.437 2.438 - prodParams = PR_WL__malloc(sizeof(MatrixMultWorkUnit)); 2.439 + prodParams = PR_WL__malloc(sizeof(VPParams)); 2.440 prodParams->inBridges = NULL; 2.441 prodParams->outBridges = bridgesForVP; 2.442 - prodParams->initData = initDatums[CKT_VP_PROD0]; 2.443 + prodParams->initData = NULL; //this is special broadcast producer 2.444 2.445 - VPs[CKT_VP_PROD0] = VReo__create_VP(&producer_Fn, prodParams, circuit, animVP); 2.446 + VPs[CKT_VP_PROD0] = VReo__create_VP(&broadcast_producer_Fn, prodParams, circuit, animVP); 2.447 2.448 boundaryBridges[CKT_VP_PROD0]->writer = VPs[CKT_VP_PROD0]; 2.449 boundaryBridges[CKT_VP_PROD0]->writerType = VP; 2.450 @@ -464,10 +711,10 @@ 2.451 bridgesForVP = PR_WL__malloc(1 * sizeof(VReoBridge *)); 2.452 bridgesForVP[0] = boundaryBridges[CKT_VP_PROD1]; 2.453 2.454 - prodParams = PR_WL__malloc(sizeof(MatrixMultWorkUnit)); 2.455 + prodParams = PR_WL__malloc(sizeof(VPParams)); 2.456 prodParams->inBridges = NULL; 2.457 prodParams->outBridges = bridgesForVP; 2.458 - prodParams->initData = initDatums[CKT_VP_PROD1]; 2.459 + prodParams->initData = initDatums[0]; //gets first work unit 2.460 2.461 VPs[CKT_VP_PROD1] = VReo__create_VP(&producer_Fn, prodParams, circuit, animVP); 2.462 2.463 @@ -478,49 +725,44 @@ 2.464 bridgesForVP = PR_WL__malloc(1 * sizeof(VReoBridge *)); 2.465 bridgesForVP[0] = boundaryBridges[CKT_VP_PROD2]; 2.466 2.467 - prodParams = PR_WL__malloc(sizeof(MatrixMultWorkUnit)); 2.468 + prodParams = PR_WL__malloc(sizeof(VPParams)); 2.469 prodParams->inBridges = NULL; 2.470 prodParams->outBridges = bridgesForVP; 2.471 - prodParams->initData = initDatums[CKT_VP_PROD2]; 2.472 + prodParams->initData = initDatums[1]; //second work-unit 2.473 2.474 VPs[CKT_VP_PROD2] = VReo__create_VP(&producer_Fn, prodParams, circuit, animVP); 2.475 2.476 boundaryBridges[CKT_VP_PROD2]->writer = VPs[CKT_VP_PROD2]; 2.477 boundaryBridges[CKT_VP_PROD2]->writerType = VP; 2.478 2.479 -// /* Create Consumer VP 0. */ 2.480 -// consParams = PR_WL__malloc(sizeof(TestAppConsumerParams)); 2.481 -// 2.482 -// //bridgesForVP = PR_WL__malloc(1 * sizeof(VReoBridge *)); 2.483 -// //bridgesForVP[0] = boundaryBridges[CKT_VP_CONS0]; 2.484 -// 2.485 -// bridgesForVP = PR_WL__malloc(2 * sizeof(VReoBridge *)); 2.486 -// bridgesForVP[0] = bridges[CKT_BRIDGE_Out_0]; 2.487 -// bridgesForVP[0] = bridges[CKT_BRIDGE_Out_1]; 2.488 -// 2.489 -// consParams->inBridges = bridgesForVP; 2.490 -// consParams->outBridges = NULL; 2.491 -// 2.492 -// VPs[CKT_VP_CONS0] = VReo__create_VP(&consumer_Fn, consParams, circuit, animVP); 2.493 -// boundaryBridges[CKT_VP_CONS0]->reader = VPs[CKT_VP_CONS0]; 2.494 -// boundaryBridges[CKT_VP_CONS0]->readerType = VP; 2.495 + /* Create Producer VP 3. */ 2.496 + bridgesForVP = PR_WL__malloc(1 * sizeof(VReoBridge *)); 2.497 + bridgesForVP[0] = boundaryBridges[CKT_VP_PROD3]; 2.498 2.499 -// /* Create Consumer VP 1. */ 2.500 -// consParams = PR_WL__malloc(sizeof(TestAppConsumerParams)); 2.501 -// 2.502 -// //bridgesForVP = PR_WL__malloc(1 * sizeof(VReoBridge *)); 2.503 -// //bridgesForVP[0] = boundaryBridges[CKT_VP_CONS1]; 2.504 -// 2.505 -// bridgesForVP = PR_WL__malloc(2 * sizeof(VReoBridge *)); 2.506 -// bridgesForVP[0] = bridges[CKT_BRIDGE_Out_0]; 2.507 -// bridgesForVP[0] = bridges[CKT_BRIDGE_Out_1]; 2.508 -// 2.509 -// consParams->inBridges = bridgesForVP; 2.510 -// consParams->outBridges = NULL; 2.511 -// 2.512 -// VPs[CKT_VP_CONS1] = VReo__create_VP(&consumer_Fn, consParams, circuit, animVP); 2.513 -// boundaryBridges[CKT_VP_CONS1]->reader = VPs[CKT_VP_CONS1]; 2.514 -// boundaryBridges[CKT_VP_CONS1]->readerType = VP; 2.515 + prodParams = PR_WL__malloc(sizeof(VPParams)); 2.516 + prodParams->inBridges = NULL; 2.517 + prodParams->outBridges = bridgesForVP; 2.518 + prodParams->initData = initDatums[2]; //third work unit 2.519 + 2.520 + VPs[CKT_VP_PROD3] = VReo__create_VP(&producer_Fn, prodParams, circuit, animVP); 2.521 + 2.522 + boundaryBridges[CKT_VP_PROD3]->writer = VPs[CKT_VP_PROD3]; 2.523 + boundaryBridges[CKT_VP_PROD3]->writerType = VP; 2.524 + 2.525 + /* Create Producer VP 4. */ 2.526 + bridgesForVP = PR_WL__malloc(1 * sizeof(VReoBridge *)); 2.527 + bridgesForVP[0] = boundaryBridges[CKT_VP_PROD4]; 2.528 + 2.529 + prodParams = PR_WL__malloc(sizeof(VPParams)); 2.530 + prodParams->inBridges = NULL; 2.531 + prodParams->outBridges = bridgesForVP; 2.532 + prodParams->initData = initDatums[3]; //fourth work-unit 2.533 + 2.534 + VPs[CKT_VP_PROD4] = VReo__create_VP(&producer_Fn, prodParams, circuit, animVP); 2.535 + 2.536 + boundaryBridges[CKT_VP_PROD4]->writer = VPs[CKT_VP_PROD4]; 2.537 + boundaryBridges[CKT_VP_PROD4]->writerType = VP; 2.538 + 2.539 2.540 /* Create Consumer VP. */ 2.541 consParams = PR_WL__malloc(sizeof(VPParams)); 2.542 @@ -529,9 +771,8 @@ 2.543 bridgesForVP[0] = &(bridges[CKT_BRIDGE_Out_0]); 2.544 bridgesForVP[1] = &(bridges[CKT_BRIDGE_Out_1]); 2.545 2.546 - consParams->inBridges = bridgesForVP; 2.547 + consParams->inBridges = bridgesForVP; 2.548 consParams->outBridges = NULL; 2.549 - consParams->initData = initDatums[CKT_VP_CONS0]; 2.550 2.551 VPs[CKT_VP_CONS0] = VReo__create_VP(&consumer_Fn, consParams, circuit, animVP); 2.552 2.553 @@ -549,14 +790,16 @@ 2.554 /* Checkers for Island 0. */ 2.555 2.556 bool32 Checker_0__I0( VReoIsland *island ) { 2.557 - VReoBridge *bridgeBroad_0Output1, *bridgeBroad_0Output2, *bridgeOut_1, *bridgeBroad_0; 2.558 + VReoBridge *bridgeBroad_0Output1, *bridgeBroad_0Output2, *bridgeBroad_0Output3, *bridgeOut_1, *bridgeBroad_0, *bridgeBroad_0Output4; 2.559 bool32 satisfied; 2.560 2.561 bridgeBroad_0Output1 = (island->bridges)[I0_BRIDGE_Broad_0Output1]; 2.562 bridgeBroad_0Output2 = (island->bridges)[I0_BRIDGE_Broad_0Output2]; 2.563 + bridgeBroad_0Output3 = (island->bridges)[I0_BRIDGE_Broad_0Output3]; 2.564 bridgeOut_1 = (island->bridges)[I0_BRIDGE_Out_1]; 2.565 bridgeBroad_0 = (island->bridges)[I0_BRIDGE_Broad_0]; 2.566 - satisfied = READY_FOR_READ_BRIDGE_Broad_0 && READY_FOR_WRITE_BRIDGE_Broad_0Output1 && READY_FOR_WRITE_BRIDGE_Broad_0Output2 && READY_FOR_WRITE_BRIDGE_Out_1; 2.567 + bridgeBroad_0Output4 = (island->bridges)[I0_BRIDGE_Broad_0Output4]; 2.568 + satisfied = READY_FOR_READ_BRIDGE_Broad_0 && READY_FOR_WRITE_BRIDGE_Broad_0Output1 && READY_FOR_WRITE_BRIDGE_Broad_0Output2 && READY_FOR_WRITE_BRIDGE_Broad_0Output3 && READY_FOR_WRITE_BRIDGE_Out_1 && READY_FOR_WRITE_BRIDGE_Broad_0Output4; 2.569 return satisfied; 2.570 } 2.571 2.572 @@ -586,6 +829,32 @@ 2.573 return satisfied; 2.574 } 2.575 2.576 +/* Checkers for Island 3. */ 2.577 + 2.578 +bool32 Checker_0__I3( VReoIsland *island ) { 2.579 + VReoBridge *bridgeIn_2, *bridgeX_2Input0, *bridgeIn_2Output0; 2.580 + bool32 satisfied; 2.581 + 2.582 + bridgeIn_2 = (island->bridges)[I3_BRIDGE_In_2]; 2.583 + bridgeX_2Input0 = (island->bridges)[I3_BRIDGE_X_2Input0]; 2.584 + bridgeIn_2Output0 = (island->bridges)[I3_BRIDGE_In_2Output0]; 2.585 + satisfied = READY_FOR_READ_BRIDGE_In_2 && READY_FOR_READ_BRIDGE_X_2Input0 && READY_FOR_WRITE_BRIDGE_In_2Output0; 2.586 + return satisfied; 2.587 +} 2.588 + 2.589 +/* Checkers for Island 4. */ 2.590 + 2.591 +bool32 Checker_0__I4( VReoIsland *island ) { 2.592 + VReoBridge *bridgeIn_3, *bridgeX_3Input0, *bridgeIn_3Output0; 2.593 + bool32 satisfied; 2.594 + 2.595 + bridgeIn_3 = (island->bridges)[I4_BRIDGE_In_3]; 2.596 + bridgeX_3Input0 = (island->bridges)[I4_BRIDGE_X_3Input0]; 2.597 + bridgeIn_3Output0 = (island->bridges)[I4_BRIDGE_In_3Output0]; 2.598 + satisfied = READY_FOR_READ_BRIDGE_In_3 && READY_FOR_READ_BRIDGE_X_3Input0 && READY_FOR_WRITE_BRIDGE_In_3Output0; 2.599 + return satisfied; 2.600 +} 2.601 + 2.602 //============================================================================== 2.603 2.604 /* Declaration of auxiliary doers. */ 2.605 @@ -593,41 +862,61 @@ 2.606 void Auxdoer_for_bridge_Broad_0( VReoBridge *bridge ); 2.607 void Auxdoer_for_bridge_In_0( VReoBridge *bridge ); 2.608 void Auxdoer_for_bridge_In_1( VReoBridge *bridge ); 2.609 +void Auxdoer_for_bridge_In_2( VReoBridge *bridge ); 2.610 +void Auxdoer_for_bridge_In_3( VReoBridge *bridge ); 2.611 void Auxdoer_for_bridge_Out_0( VReoBridge *bridge ); 2.612 void Auxdoer_for_bridge_Out_1( VReoBridge *bridge ); 2.613 void Auxdoer_for_bridge_In_0Output1( VReoBridge *bridge ); 2.614 -void Auxdoer_for_bridge_Out_0Input1( VReoBridge *bridge ); 2.615 +void Auxdoer_for_bridge_Out_0Input3( VReoBridge *bridge ); 2.616 2.617 void Auxdoer_for_bridge_Broad_0Output1( VReoBridge *bridge ); 2.618 void Auxdoer_for_bridge_X_0Input0( VReoBridge *bridge ); 2.619 2.620 void Auxdoer_for_bridge_In_1Output0( VReoBridge *bridge ); 2.621 -void Auxdoer_for_bridge_Out_0Input0( VReoBridge *bridge ); 2.622 +void Auxdoer_for_bridge_Out_0Input2( VReoBridge *bridge ); 2.623 2.624 void Auxdoer_for_bridge_Broad_0Output2( VReoBridge *bridge ); 2.625 void Auxdoer_for_bridge_X_1Input0( VReoBridge *bridge ); 2.626 2.627 +void Auxdoer_for_bridge_In_2Output0( VReoBridge *bridge ); 2.628 +void Auxdoer_for_bridge_Out_0Input1( VReoBridge *bridge ); 2.629 + 2.630 +void Auxdoer_for_bridge_Broad_0Output3( VReoBridge *bridge ); 2.631 +void Auxdoer_for_bridge_X_2Input0( VReoBridge *bridge ); 2.632 + 2.633 +void Auxdoer_for_bridge_In_3Output0( VReoBridge *bridge ); 2.634 +void Auxdoer_for_bridge_Out_0Input0( VReoBridge *bridge ); 2.635 + 2.636 +void Auxdoer_for_bridge_Broad_0Output4( VReoBridge *bridge ); 2.637 +void Auxdoer_for_bridge_X_3Input0( VReoBridge *bridge ); 2.638 + 2.639 /* Doers for Island 0. */ 2.640 2.641 void Doer_0__I0( VReoIsland *island ) { 2.642 - VReoBridge *bridgeBroad_0Output1, *bridgeBroad_0Output2, *bridgeOut_1, *bridgeBroad_0; 2.643 + VReoBridge *bridgeBroad_0Output1, *bridgeBroad_0Output2, *bridgeBroad_0Output3, *bridgeOut_1, *bridgeBroad_0, *bridgeBroad_0Output4; 2.644 2.645 /* Initialize bridges. */ 2.646 bridgeBroad_0Output1 = (island->bridges)[I0_BRIDGE_Broad_0Output1]; 2.647 bridgeBroad_0Output2 = (island->bridges)[I0_BRIDGE_Broad_0Output2]; 2.648 + bridgeBroad_0Output3 = (island->bridges)[I0_BRIDGE_Broad_0Output3]; 2.649 bridgeOut_1 = (island->bridges)[I0_BRIDGE_Out_1]; 2.650 bridgeBroad_0 = (island->bridges)[I0_BRIDGE_Broad_0]; 2.651 + bridgeBroad_0Output4 = (island->bridges)[I0_BRIDGE_Broad_0Output4]; 2.652 2.653 /* Distribute data. */ 2.654 bridgeBroad_0Output1->buffer = bridgeBroad_0->buffer; 2.655 bridgeBroad_0Output2->buffer = bridgeBroad_0->buffer; 2.656 + bridgeBroad_0Output3->buffer = bridgeBroad_0->buffer; 2.657 bridgeOut_1->buffer = bridgeBroad_0->buffer; 2.658 + bridgeBroad_0Output4->buffer = bridgeBroad_0->buffer; 2.659 2.660 /* Update bridge status. */ 2.661 bridgeBroad_0->bridgeIsFull = FALSE; 2.662 bridgeBroad_0Output1->bridgeIsFull = TRUE; 2.663 bridgeBroad_0Output2->bridgeIsFull = TRUE; 2.664 + bridgeBroad_0Output3->bridgeIsFull = TRUE; 2.665 bridgeOut_1->bridgeIsFull = TRUE; 2.666 + bridgeBroad_0Output4->bridgeIsFull = TRUE; 2.667 2.668 /* Prepare reader VPs. */ 2.669 PR_PI__make_slave_ready_for_lang(bridgeOut_1->waitingReaderVP, VReo_MAGIC_NUMBER); 2.670 @@ -642,8 +931,10 @@ 2.671 /* Call auxiliary doers to complete this transition. */ 2.672 Auxdoer_for_bridge_Broad_0Output1(bridgeBroad_0Output1); 2.673 Auxdoer_for_bridge_Broad_0Output2(bridgeBroad_0Output2); 2.674 + Auxdoer_for_bridge_Broad_0Output3(bridgeBroad_0Output3); 2.675 Auxdoer_for_bridge_Out_1(bridgeOut_1); 2.676 Auxdoer_for_bridge_Broad_0(bridgeBroad_0); 2.677 + Auxdoer_for_bridge_Broad_0Output4(bridgeBroad_0Output4); 2.678 } 2.679 2.680 /* Doers for Island 1. */ 2.681 @@ -706,6 +997,66 @@ 2.682 Auxdoer_for_bridge_X_1Input0(bridgeX_1Input0); 2.683 } 2.684 2.685 +/* Doers for Island 3. */ 2.686 + 2.687 +void Doer_0__I3( VReoIsland *island ) { 2.688 + VReoBridge *bridgeIn_2, *bridgeX_2Input0, *bridgeIn_2Output0; 2.689 + 2.690 + /* Initialize bridges. */ 2.691 + bridgeIn_2 = (island->bridges)[I3_BRIDGE_In_2]; 2.692 + bridgeX_2Input0 = (island->bridges)[I3_BRIDGE_X_2Input0]; 2.693 + bridgeIn_2Output0 = (island->bridges)[I3_BRIDGE_In_2Output0]; 2.694 + 2.695 + /* Distribute data. */ 2.696 + bridgeIn_2Output0->buffer = bridgeIn_2->buffer; 2.697 + 2.698 + /* Update bridge status. */ 2.699 + bridgeIn_2->bridgeIsFull = FALSE; 2.700 + bridgeX_2Input0->bridgeIsFull = FALSE; 2.701 + bridgeIn_2Output0->bridgeIsFull = TRUE; 2.702 + 2.703 + /* Prepare reader VPs. */ 2.704 + 2.705 + /* Prepare writer VPs. */ 2.706 + PR_PI__make_slave_ready_for_lang(bridgeIn_2->waitingWriterVP, VReo_MAGIC_NUMBER); 2.707 + bridgeIn_2->waitingWriterVP = NULL; 2.708 + 2.709 + /* Call auxiliary doers to complete this transition. */ 2.710 + Auxdoer_for_bridge_In_2(bridgeIn_2); 2.711 + Auxdoer_for_bridge_X_2Input0(bridgeX_2Input0); 2.712 + Auxdoer_for_bridge_In_2Output0(bridgeIn_2Output0); 2.713 +} 2.714 + 2.715 +/* Doers for Island 4. */ 2.716 + 2.717 +void Doer_0__I4( VReoIsland *island ) { 2.718 + VReoBridge *bridgeIn_3, *bridgeX_3Input0, *bridgeIn_3Output0; 2.719 + 2.720 + /* Initialize bridges. */ 2.721 + bridgeIn_3 = (island->bridges)[I4_BRIDGE_In_3]; 2.722 + bridgeX_3Input0 = (island->bridges)[I4_BRIDGE_X_3Input0]; 2.723 + bridgeIn_3Output0 = (island->bridges)[I4_BRIDGE_In_3Output0]; 2.724 + 2.725 + /* Distribute data. */ 2.726 + bridgeIn_3Output0->buffer = bridgeIn_3->buffer; 2.727 + 2.728 + /* Update bridge status. */ 2.729 + bridgeIn_3->bridgeIsFull = FALSE; 2.730 + bridgeX_3Input0->bridgeIsFull = FALSE; 2.731 + bridgeIn_3Output0->bridgeIsFull = TRUE; 2.732 + 2.733 + /* Prepare reader VPs. */ 2.734 + 2.735 + /* Prepare writer VPs. */ 2.736 + PR_PI__make_slave_ready_for_lang(bridgeIn_3->waitingWriterVP, VReo_MAGIC_NUMBER); 2.737 + bridgeIn_3->waitingWriterVP = NULL; 2.738 + 2.739 + /* Call auxiliary doers to complete this transition. */ 2.740 + Auxdoer_for_bridge_In_3(bridgeIn_3); 2.741 + Auxdoer_for_bridge_X_3Input0(bridgeX_3Input0); 2.742 + Auxdoer_for_bridge_In_3Output0(bridgeIn_3Output0); 2.743 +} 2.744 + 2.745 //============================================================================== 2.746 2.747 /* Auxiliary doers for input bridges. */ 2.748 @@ -722,6 +1073,14 @@ 2.749 ; 2.750 } 2.751 2.752 +void Auxdoer_for_bridge_In_2( VReoBridge *bridge ) { 2.753 + ; 2.754 +} 2.755 + 2.756 +void Auxdoer_for_bridge_In_3( VReoBridge *bridge ) { 2.757 + ; 2.758 +} 2.759 + 2.760 /* Auxiliary doers for output bridges. */ 2.761 2.762 void Auxdoer_for_bridge_Out_0( VReoBridge *bridge ) { 2.763 @@ -759,7 +1118,7 @@ 2.764 VReo__check_an_o1island_that_reads_bridge( o1islandOnOtherSide, bridge, partnerQstruct ); 2.765 } 2.766 } 2.767 -void Auxdoer_for_bridge_Out_0Input1( VReoBridge *bridge ) { 2.768 +void Auxdoer_for_bridge_Out_0Input3( VReoBridge *bridge ) { 2.769 int32 numCheckerFns; 2.770 VReoIsland *islandOnOtherSide; 2.771 VReoCheckerFn *checkerFns; 2.772 @@ -861,7 +1220,7 @@ 2.773 VReo__check_an_o1island_that_reads_bridge( o1islandOnOtherSide, bridge, partnerQstruct ); 2.774 } 2.775 } 2.776 -void Auxdoer_for_bridge_Out_0Input0( VReoBridge *bridge ) { 2.777 +void Auxdoer_for_bridge_Out_0Input2( VReoBridge *bridge ) { 2.778 int32 numCheckerFns; 2.779 VReoIsland *islandOnOtherSide; 2.780 VReoCheckerFn *checkerFns; 2.781 @@ -936,4 +1295,208 @@ 2.782 2.783 VReo__check_an_o1island_that_writes_bridge( o1islandOnOtherSide, bridge, partnerQstruct ); 2.784 } 2.785 +} 2.786 + 2.787 +void Auxdoer_for_bridge_In_2Output0( VReoBridge *bridge ) { 2.788 + int32 numCheckerFns; 2.789 + VReoIsland *islandOnOtherSide; 2.790 + VReoCheckerFn *checkerFns; 2.791 + VReoDoerFn *doerFns; 2.792 + 2.793 + VReoO1island *o1islandOnOtherSide; 2.794 + VReoPartnerQStruct *partnerQstruct; 2.795 + 2.796 + if (bridge->readerType == Island) { 2.797 + islandOnOtherSide = (VReoIsland*) bridge->reader; 2.798 + numCheckerFns = bridge->numReaderCheckerFns; 2.799 + checkerFns = bridge->readerCheckerFns; 2.800 + doerFns = bridge->readerDoerFns; 2.801 + 2.802 + VReo__check_an_island( islandOnOtherSide, numCheckerFns, checkerFns, doerFns ); 2.803 + } 2.804 + 2.805 + else if (bridge->readerType == O1island) { 2.806 + o1islandOnOtherSide = (VReoO1island *)bridge->reader; 2.807 + partnerQstruct = bridge->readerPartnerQStruct; 2.808 + 2.809 + VReo__check_an_o1island_that_reads_bridge( o1islandOnOtherSide, bridge, partnerQstruct ); 2.810 + } 2.811 +} 2.812 +void Auxdoer_for_bridge_Out_0Input1( VReoBridge *bridge ) { 2.813 + int32 numCheckerFns; 2.814 + VReoIsland *islandOnOtherSide; 2.815 + VReoCheckerFn *checkerFns; 2.816 + VReoDoerFn *doerFns; 2.817 + 2.818 + VReoO1island *o1islandOnOtherSide; 2.819 + VReoPartnerQStruct *partnerQstruct; 2.820 + 2.821 + if (bridge->writerType == Island) { 2.822 + islandOnOtherSide = (VReoIsland*) bridge->writer; 2.823 + numCheckerFns = bridge->numWriterCheckerFns; 2.824 + checkerFns = bridge->writerCheckerFns; 2.825 + doerFns = bridge->writerDoerFns; 2.826 + 2.827 + VReo__check_an_island( islandOnOtherSide, numCheckerFns, checkerFns, doerFns ); 2.828 + } 2.829 + 2.830 + else if (bridge->writerType == O1island) { 2.831 + o1islandOnOtherSide = (VReoO1island *)bridge->writer; 2.832 + partnerQstruct = bridge->writerPartnerQStruct; 2.833 + 2.834 + VReo__check_an_o1island_that_writes_bridge( o1islandOnOtherSide, bridge, partnerQstruct ); 2.835 + } 2.836 +} 2.837 + 2.838 +void Auxdoer_for_bridge_Broad_0Output3( VReoBridge *bridge ) { 2.839 + int32 numCheckerFns; 2.840 + VReoIsland *islandOnOtherSide; 2.841 + VReoCheckerFn *checkerFns; 2.842 + VReoDoerFn *doerFns; 2.843 + 2.844 + VReoO1island *o1islandOnOtherSide; 2.845 + VReoPartnerQStruct *partnerQstruct; 2.846 + 2.847 + if (bridge->readerType == Island) { 2.848 + islandOnOtherSide = (VReoIsland*) bridge->reader; 2.849 + numCheckerFns = bridge->numReaderCheckerFns; 2.850 + checkerFns = bridge->readerCheckerFns; 2.851 + doerFns = bridge->readerDoerFns; 2.852 + 2.853 + VReo__check_an_island( islandOnOtherSide, numCheckerFns, checkerFns, doerFns ); 2.854 + } 2.855 + 2.856 + else if (bridge->readerType == O1island) { 2.857 + o1islandOnOtherSide = (VReoO1island *)bridge->reader; 2.858 + partnerQstruct = bridge->readerPartnerQStruct; 2.859 + 2.860 + VReo__check_an_o1island_that_reads_bridge( o1islandOnOtherSide, bridge, partnerQstruct ); 2.861 + } 2.862 +} 2.863 +void Auxdoer_for_bridge_X_2Input0( VReoBridge *bridge ) { 2.864 + int32 numCheckerFns; 2.865 + VReoIsland *islandOnOtherSide; 2.866 + VReoCheckerFn *checkerFns; 2.867 + VReoDoerFn *doerFns; 2.868 + 2.869 + VReoO1island *o1islandOnOtherSide; 2.870 + VReoPartnerQStruct *partnerQstruct; 2.871 + 2.872 + if (bridge->writerType == Island) { 2.873 + islandOnOtherSide = (VReoIsland*) bridge->writer; 2.874 + numCheckerFns = bridge->numWriterCheckerFns; 2.875 + checkerFns = bridge->writerCheckerFns; 2.876 + doerFns = bridge->writerDoerFns; 2.877 + 2.878 + VReo__check_an_island( islandOnOtherSide, numCheckerFns, checkerFns, doerFns ); 2.879 + } 2.880 + 2.881 + else if (bridge->writerType == O1island) { 2.882 + o1islandOnOtherSide = (VReoO1island *)bridge->writer; 2.883 + partnerQstruct = bridge->writerPartnerQStruct; 2.884 + 2.885 + VReo__check_an_o1island_that_writes_bridge( o1islandOnOtherSide, bridge, partnerQstruct ); 2.886 + } 2.887 +} 2.888 + 2.889 +void Auxdoer_for_bridge_In_3Output0( VReoBridge *bridge ) { 2.890 + int32 numCheckerFns; 2.891 + VReoIsland *islandOnOtherSide; 2.892 + VReoCheckerFn *checkerFns; 2.893 + VReoDoerFn *doerFns; 2.894 + 2.895 + VReoO1island *o1islandOnOtherSide; 2.896 + VReoPartnerQStruct *partnerQstruct; 2.897 + 2.898 + if (bridge->readerType == Island) { 2.899 + islandOnOtherSide = (VReoIsland*) bridge->reader; 2.900 + numCheckerFns = bridge->numReaderCheckerFns; 2.901 + checkerFns = bridge->readerCheckerFns; 2.902 + doerFns = bridge->readerDoerFns; 2.903 + 2.904 + VReo__check_an_island( islandOnOtherSide, numCheckerFns, checkerFns, doerFns ); 2.905 + } 2.906 + 2.907 + else if (bridge->readerType == O1island) { 2.908 + o1islandOnOtherSide = (VReoO1island *)bridge->reader; 2.909 + partnerQstruct = bridge->readerPartnerQStruct; 2.910 + 2.911 + VReo__check_an_o1island_that_reads_bridge( o1islandOnOtherSide, bridge, partnerQstruct ); 2.912 + } 2.913 +} 2.914 +void Auxdoer_for_bridge_Out_0Input0( VReoBridge *bridge ) { 2.915 + int32 numCheckerFns; 2.916 + VReoIsland *islandOnOtherSide; 2.917 + VReoCheckerFn *checkerFns; 2.918 + VReoDoerFn *doerFns; 2.919 + 2.920 + VReoO1island *o1islandOnOtherSide; 2.921 + VReoPartnerQStruct *partnerQstruct; 2.922 + 2.923 + if (bridge->writerType == Island) { 2.924 + islandOnOtherSide = (VReoIsland*) bridge->writer; 2.925 + numCheckerFns = bridge->numWriterCheckerFns; 2.926 + checkerFns = bridge->writerCheckerFns; 2.927 + doerFns = bridge->writerDoerFns; 2.928 + 2.929 + VReo__check_an_island( islandOnOtherSide, numCheckerFns, checkerFns, doerFns ); 2.930 + } 2.931 + 2.932 + else if (bridge->writerType == O1island) { 2.933 + o1islandOnOtherSide = (VReoO1island *)bridge->writer; 2.934 + partnerQstruct = bridge->writerPartnerQStruct; 2.935 + 2.936 + VReo__check_an_o1island_that_writes_bridge( o1islandOnOtherSide, bridge, partnerQstruct ); 2.937 + } 2.938 +} 2.939 + 2.940 +void Auxdoer_for_bridge_Broad_0Output4( VReoBridge *bridge ) { 2.941 + int32 numCheckerFns; 2.942 + VReoIsland *islandOnOtherSide; 2.943 + VReoCheckerFn *checkerFns; 2.944 + VReoDoerFn *doerFns; 2.945 + 2.946 + VReoO1island *o1islandOnOtherSide; 2.947 + VReoPartnerQStruct *partnerQstruct; 2.948 + 2.949 + if (bridge->readerType == Island) { 2.950 + islandOnOtherSide = (VReoIsland*) bridge->reader; 2.951 + numCheckerFns = bridge->numReaderCheckerFns; 2.952 + checkerFns = bridge->readerCheckerFns; 2.953 + doerFns = bridge->readerDoerFns; 2.954 + 2.955 + VReo__check_an_island( islandOnOtherSide, numCheckerFns, checkerFns, doerFns ); 2.956 + } 2.957 + 2.958 + else if (bridge->readerType == O1island) { 2.959 + o1islandOnOtherSide = (VReoO1island *)bridge->reader; 2.960 + partnerQstruct = bridge->readerPartnerQStruct; 2.961 + 2.962 + VReo__check_an_o1island_that_reads_bridge( o1islandOnOtherSide, bridge, partnerQstruct ); 2.963 + } 2.964 +} 2.965 +void Auxdoer_for_bridge_X_3Input0( VReoBridge *bridge ) { 2.966 + int32 numCheckerFns; 2.967 + VReoIsland *islandOnOtherSide; 2.968 + VReoCheckerFn *checkerFns; 2.969 + VReoDoerFn *doerFns; 2.970 + 2.971 + VReoO1island *o1islandOnOtherSide; 2.972 + VReoPartnerQStruct *partnerQstruct; 2.973 + 2.974 + if (bridge->writerType == Island) { 2.975 + islandOnOtherSide = (VReoIsland*) bridge->writer; 2.976 + numCheckerFns = bridge->numWriterCheckerFns; 2.977 + checkerFns = bridge->writerCheckerFns; 2.978 + doerFns = bridge->writerDoerFns; 2.979 + 2.980 + VReo__check_an_island( islandOnOtherSide, numCheckerFns, checkerFns, doerFns ); 2.981 + } 2.982 + 2.983 + else if (bridge->writerType == O1island) { 2.984 + o1islandOnOtherSide = (VReoO1island *)bridge->writer; 2.985 + partnerQstruct = bridge->writerPartnerQStruct; 2.986 + 2.987 + VReo__check_an_o1island_that_writes_bridge( o1islandOnOtherSide, bridge, partnerQstruct ); 2.988 + } 2.989 } 2.990 \ No newline at end of file
3.1 --- a/Reo__Matrix_Mult/Circuit.h Wed Feb 19 09:27:10 2014 -0800 3.2 +++ b/Reo__Matrix_Mult/Circuit.h Sat Mar 29 06:02:18 2014 -0700 3.3 @@ -5,33 +5,35 @@ 3.4 //#include "VReo_impl/VReo.h" 3.5 #include <PR__include/PR__structs__common.h> 3.6 #include <PR__include/langlets/vreo_wrapper_library.h> 3.7 -#include <PR__include/prqueue.h> 3.8 -#include <PR__include/PR__WL.h> 3.9 3.10 //============================================================================== 3.11 3.12 /* Counts. */ 3.13 -#define NUM_VPs 5 3.14 -#define NUM_PROD 3 3.15 -#define NUM_ISLANDS 3 3.16 +#define NUM_VPs 7 3.17 +#define NUM_PROD 5 3.18 +#define NUM_ISLANDS 5 3.19 #define NUM_O1ISLANDS 1 3.20 -#define NUM_BRIDGES 9 3.21 -#define NUM_BOUNDARY_BRIDGES 5 3.22 +#define NUM_BRIDGES 15 3.23 +#define NUM_BOUNDARY_BRIDGES 7 3.24 3.25 /* Producer VPs attached to circuit. */ 3.26 #define CKT_VP_PROD0 0 3.27 #define CKT_VP_PROD1 1 3.28 #define CKT_VP_PROD2 2 3.29 +#define CKT_VP_PROD3 3 3.30 +#define CKT_VP_PROD4 4 3.31 3.32 /* Consumer VPs attached to circuit. */ 3.33 -// #define CKT_VP_CONS0 (3+0) 3.34 -// #define CKT_VP_CONS1 (3+1) 3.35 -#define CKT_VP_CONS0 3 3.36 +// #define CKT_VP_CONS0 (5+0) 3.37 +// #define CKT_VP_CONS1 (5+1) 3.38 +#define CKT_VP_CONS0 5 3.39 3.40 /* Islands in circuit. */ 3.41 #define CKT_I0 0 3.42 #define CKT_I1 1 3.43 #define CKT_I2 2 3.44 +#define CKT_I3 3 3.45 +#define CKT_I4 4 3.46 3.47 /* O1Islands in circuit. */ 3.48 #define CKT_O1I0 0 3.49 @@ -40,30 +42,50 @@ 3.50 #define CKT_BRIDGE_Broad_0 0 3.51 #define CKT_BRIDGE_In_0 1 3.52 #define CKT_BRIDGE_In_1 2 3.53 -#define CKT_BRIDGE_Out_0 3 3.54 -#define CKT_BRIDGE_Out_1 4 3.55 +#define CKT_BRIDGE_In_2 3 3.56 +#define CKT_BRIDGE_In_3 4 3.57 +#define CKT_BRIDGE_Out_0 5 3.58 +#define CKT_BRIDGE_Out_1 6 3.59 3.60 -#define CKT_BRIDGE_FIFO0 (5+0) 3.61 -#define CKT_BRIDGE_In_0Output1 (5+0) 3.62 -#define CKT_BRIDGE_Out_0Input1 (5+0) 3.63 +#define CKT_BRIDGE_FIFO0 (7+0) 3.64 +#define CKT_BRIDGE_In_0Output1 (7+0) 3.65 +#define CKT_BRIDGE_Out_0Input3 (7+0) 3.66 3.67 -#define CKT_BRIDGE_FIFO1 (5+1) 3.68 -#define CKT_BRIDGE_Broad_0Output1 (5+1) 3.69 -#define CKT_BRIDGE_X_0Input0 (5+1) 3.70 +#define CKT_BRIDGE_FIFO1 (7+1) 3.71 +#define CKT_BRIDGE_Broad_0Output1 (7+1) 3.72 +#define CKT_BRIDGE_X_0Input0 (7+1) 3.73 3.74 -#define CKT_BRIDGE_FIFO2 (5+2) 3.75 -#define CKT_BRIDGE_In_1Output0 (5+2) 3.76 -#define CKT_BRIDGE_Out_0Input0 (5+2) 3.77 +#define CKT_BRIDGE_FIFO2 (7+2) 3.78 +#define CKT_BRIDGE_In_1Output0 (7+2) 3.79 +#define CKT_BRIDGE_Out_0Input2 (7+2) 3.80 3.81 -#define CKT_BRIDGE_FIFO3 (5+3) 3.82 -#define CKT_BRIDGE_Broad_0Output2 (5+3) 3.83 -#define CKT_BRIDGE_X_1Input0 (5+3) 3.84 +#define CKT_BRIDGE_FIFO3 (7+3) 3.85 +#define CKT_BRIDGE_Broad_0Output2 (7+3) 3.86 +#define CKT_BRIDGE_X_1Input0 (7+3) 3.87 + 3.88 +#define CKT_BRIDGE_FIFO4 (7+4) 3.89 +#define CKT_BRIDGE_In_2Output0 (7+4) 3.90 +#define CKT_BRIDGE_Out_0Input1 (7+4) 3.91 + 3.92 +#define CKT_BRIDGE_FIFO5 (7+5) 3.93 +#define CKT_BRIDGE_Broad_0Output3 (7+5) 3.94 +#define CKT_BRIDGE_X_2Input0 (7+5) 3.95 + 3.96 +#define CKT_BRIDGE_FIFO6 (7+6) 3.97 +#define CKT_BRIDGE_In_3Output0 (7+6) 3.98 +#define CKT_BRIDGE_Out_0Input0 (7+6) 3.99 + 3.100 +#define CKT_BRIDGE_FIFO7 (7+7) 3.101 +#define CKT_BRIDGE_Broad_0Output4 (7+7) 3.102 +#define CKT_BRIDGE_X_3Input0 (7+7) 3.103 3.104 /* Bridges in Island 0. */ 3.105 #define I0_BRIDGE_Broad_0Output1 0 3.106 #define I0_BRIDGE_Broad_0Output2 1 3.107 -#define I0_BRIDGE_Out_1 2 3.108 -#define I0_BRIDGE_Broad_0 3 3.109 +#define I0_BRIDGE_Broad_0Output3 2 3.110 +#define I0_BRIDGE_Out_1 3 3.111 +#define I0_BRIDGE_Broad_0 4 3.112 +#define I0_BRIDGE_Broad_0Output4 5 3.113 3.114 /* Bridges in Island 1. */ 3.115 #define I1_BRIDGE_X_0Input0 0 3.116 @@ -75,21 +97,35 @@ 3.117 #define I2_BRIDGE_In_1 1 3.118 #define I2_BRIDGE_X_1Input0 2 3.119 3.120 +/* Bridges in Island 3. */ 3.121 +#define I3_BRIDGE_In_2 0 3.122 +#define I3_BRIDGE_X_2Input0 1 3.123 +#define I3_BRIDGE_In_2Output0 2 3.124 + 3.125 +/* Bridges in Island 4. */ 3.126 +#define I4_BRIDGE_In_3 0 3.127 +#define I4_BRIDGE_X_3Input0 1 3.128 +#define I4_BRIDGE_In_3Output0 2 3.129 + 3.130 /* Bridges in O1Island 0. */ 3.131 -#define O1I0_BRIDGE_Out_0 0 3.132 -#define O1I0_BRIDGE_Out_0Input1 1 3.133 -#define O1I0_BRIDGE_Out_0Input0 2 3.134 +#define O1I0_BRIDGE_Out_0Input3 0 3.135 +#define O1I0_BRIDGE_Out_0 1 3.136 +#define O1I0_BRIDGE_Out_0Input2 2 3.137 +#define O1I0_BRIDGE_Out_0Input1 3 3.138 +#define O1I0_BRIDGE_Out_0Input0 4 3.139 3.140 /* Readiness of boundary bridges. */ 3.141 #define READY_FOR_READ_BRIDGE_Broad_0 bridgeBroad_0->bridgeIsFull 3.142 #define READY_FOR_READ_BRIDGE_In_0 bridgeIn_0->bridgeIsFull 3.143 #define READY_FOR_READ_BRIDGE_In_1 bridgeIn_1->bridgeIsFull 3.144 +#define READY_FOR_READ_BRIDGE_In_2 bridgeIn_2->bridgeIsFull 3.145 +#define READY_FOR_READ_BRIDGE_In_3 bridgeIn_3->bridgeIsFull 3.146 #define READY_FOR_WRITE_BRIDGE_Out_0 bridgeOut_0->waitingReaderVP 3.147 #define READY_FOR_WRITE_BRIDGE_Out_1 bridgeOut_1->waitingReaderVP 3.148 3.149 /* Readiness of bridges of FIFO 0. */ 3.150 #define READY_FOR_WRITE_BRIDGE_In_0Output1 !bridgeIn_0Output1->bridgeIsFull 3.151 -#define READY_FOR_READ_BRIDGE_Out_0Input1 bridgeOut_0Input1->bridgeIsFull 3.152 +#define READY_FOR_READ_BRIDGE_Out_0Input3 bridgeOut_0Input3->bridgeIsFull 3.153 3.154 /* Readiness of bridges of FIFO 1. */ 3.155 #define READY_FOR_WRITE_BRIDGE_Broad_0Output1 !bridgeBroad_0Output1->bridgeIsFull 3.156 @@ -97,17 +133,35 @@ 3.157 3.158 /* Readiness of bridges of FIFO 2. */ 3.159 #define READY_FOR_WRITE_BRIDGE_In_1Output0 !bridgeIn_1Output0->bridgeIsFull 3.160 -#define READY_FOR_READ_BRIDGE_Out_0Input0 bridgeOut_0Input0->bridgeIsFull 3.161 +#define READY_FOR_READ_BRIDGE_Out_0Input2 bridgeOut_0Input2->bridgeIsFull 3.162 3.163 /* Readiness of bridges of FIFO 3. */ 3.164 #define READY_FOR_WRITE_BRIDGE_Broad_0Output2 !bridgeBroad_0Output2->bridgeIsFull 3.165 #define READY_FOR_READ_BRIDGE_X_1Input0 bridgeX_1Input0->bridgeIsFull 3.166 3.167 +/* Readiness of bridges of FIFO 4. */ 3.168 +#define READY_FOR_WRITE_BRIDGE_In_2Output0 !bridgeIn_2Output0->bridgeIsFull 3.169 +#define READY_FOR_READ_BRIDGE_Out_0Input1 bridgeOut_0Input1->bridgeIsFull 3.170 + 3.171 +/* Readiness of bridges of FIFO 5. */ 3.172 +#define READY_FOR_WRITE_BRIDGE_Broad_0Output3 !bridgeBroad_0Output3->bridgeIsFull 3.173 +#define READY_FOR_READ_BRIDGE_X_2Input0 bridgeX_2Input0->bridgeIsFull 3.174 + 3.175 +/* Readiness of bridges of FIFO 6. */ 3.176 +#define READY_FOR_WRITE_BRIDGE_In_3Output0 !bridgeIn_3Output0->bridgeIsFull 3.177 +#define READY_FOR_READ_BRIDGE_Out_0Input0 bridgeOut_0Input0->bridgeIsFull 3.178 + 3.179 +/* Readiness of bridges of FIFO 7. */ 3.180 +#define READY_FOR_WRITE_BRIDGE_Broad_0Output4 !bridgeBroad_0Output4->bridgeIsFull 3.181 +#define READY_FOR_READ_BRIDGE_X_3Input0 bridgeX_3Input0->bridgeIsFull 3.182 + 3.183 /* Number of checkers per bridge in Island 0. */ 3.184 #define NUM_I0_CHECKERS_INVOLVE_BRIDGE_Broad_0Output1 1 3.185 #define NUM_I0_CHECKERS_INVOLVE_BRIDGE_Broad_0Output2 1 3.186 +#define NUM_I0_CHECKERS_INVOLVE_BRIDGE_Broad_0Output3 1 3.187 #define NUM_I0_CHECKERS_INVOLVE_BRIDGE_Out_1 1 3.188 #define NUM_I0_CHECKERS_INVOLVE_BRIDGE_Broad_0 1 3.189 +#define NUM_I0_CHECKERS_INVOLVE_BRIDGE_Broad_0Output4 1 3.190 3.191 /* Number of checkers per bridge in Island 1. */ 3.192 #define NUM_I1_CHECKERS_INVOLVE_BRIDGE_X_0Input0 1 3.193 @@ -119,9 +173,19 @@ 3.194 #define NUM_I2_CHECKERS_INVOLVE_BRIDGE_In_1 1 3.195 #define NUM_I2_CHECKERS_INVOLVE_BRIDGE_X_1Input0 1 3.196 3.197 +/* Number of checkers per bridge in Island 3. */ 3.198 +#define NUM_I3_CHECKERS_INVOLVE_BRIDGE_In_2 1 3.199 +#define NUM_I3_CHECKERS_INVOLVE_BRIDGE_X_2Input0 1 3.200 +#define NUM_I3_CHECKERS_INVOLVE_BRIDGE_In_2Output0 1 3.201 + 3.202 +/* Number of checkers per bridge in Island 4. */ 3.203 +#define NUM_I4_CHECKERS_INVOLVE_BRIDGE_In_3 1 3.204 +#define NUM_I4_CHECKERS_INVOLVE_BRIDGE_X_3Input0 1 3.205 +#define NUM_I4_CHECKERS_INVOLVE_BRIDGE_In_3Output0 1 3.206 + 3.207 /* Checkers and doers for Island 0. */ 3.208 -#define CHECKER3_I0 Checker_0__I0 3.209 -#define DOER3_I0 Doer_0__I0 3.210 +#define CHECKER2_I0 Checker_0__I0 3.211 +#define DOER2_I0 Doer_0__I0 3.212 3.213 /* Checkers and doers for Island 1. */ 3.214 #define CHECKER2_I1 Checker_0__I1 3.215 @@ -131,6 +195,14 @@ 3.216 #define CHECKER3_I2 Checker_0__I2 3.217 #define DOER3_I2 Doer_0__I2 3.218 3.219 +/* Checkers and doers for Island 3. */ 3.220 +#define CHECKER2_I3 Checker_0__I3 3.221 +#define DOER2_I3 Doer_0__I3 3.222 + 3.223 +/* Checkers and doers for Island 4. */ 3.224 +#define CHECKER3_I4 Checker_0__I4 3.225 +#define DOER3_I4 Doer_0__I4 3.226 + 3.227 //============================================================================== 3.228 3.229 /* Create VPs and connect. */ 3.230 @@ -148,6 +220,12 @@ 3.231 /* Checkers of Island 2. */ 3.232 bool32 Checker_0__I2( VReoIsland *island ); 3.233 3.234 +/* Checkers of Island 3. */ 3.235 +bool32 Checker_0__I3( VReoIsland *island ); 3.236 + 3.237 +/* Checkers of Island 4. */ 3.238 +bool32 Checker_0__I4( VReoIsland *island ); 3.239 + 3.240 /* Doers of Island 0. */ 3.241 void Doer_0__I0( VReoIsland *island ); 3.242 3.243 @@ -157,4 +235,10 @@ 3.244 /* Doers of Island 2. */ 3.245 void Doer_0__I2( VReoIsland *island ); 3.246 3.247 +/* Doers of Island 3. */ 3.248 +void Doer_0__I3( VReoIsland *island ); 3.249 + 3.250 +/* Doers of Island 4. */ 3.251 +void Doer_0__I4( VReoIsland *island ); 3.252 + 3.253 #endif /* _Circuit_App1_H */ 3.254 \ No newline at end of file
4.1 --- a/Reo__Matrix_Mult/DivideWork.c Wed Feb 19 09:27:10 2014 -0800 4.2 +++ b/Reo__Matrix_Mult/DivideWork.c Sat Mar 29 06:02:18 2014 -0700 4.3 @@ -31,16 +31,15 @@ 4.4 4.5 if( leftMatrix->numRows != rightMatrix->numCols ) 4.6 { printf("error: left num rows must == right num cols\n"); exit(0);} 4.7 - if( leftMatrix->numRows % 4 != 0 ) 4.8 - { printf("error: left num rows must be divisible by 4\n"); exit(0);} 4.9 4.10 targetDivisor = (int)sqrt( targetNumUnits ); 4.11 targetIncrement = (int)(leftMatrix->numRows / targetDivisor); 4.12 - if( targetDivisor * targetDivisor != targetNumUnits || 4.13 - targetIncrement * targetDivisor != leftMatrix->numRows ) 4.14 - { printf("error: the target number of units to be made must be a perfect square and it must evenly divide the left number of rows (vector length)\n"); 4.15 + if( targetDivisor * targetDivisor != targetNumUnits ) 4.16 + { printf("error: the target number of units to be made must be a perfect square: %d)\n", targetNumUnits); 4.17 fflush(stdout); exit(0); 4.18 } 4.19 + if( targetIncrement * targetDivisor != leftMatrix->numRows ) 4.20 + { printf("error: left num rows [%d] must be divisible by sqrt(num work-units to make) [%d]\n", leftMatrix->numRows, targetDivisor); exit(0);} 4.21 4.22 4.23 //make a data struct for each work unit, and fill it with params of work
5.1 --- a/Reo__Matrix_Mult/Producer_and_Consumer.c Wed Feb 19 09:27:10 2014 -0800 5.2 +++ b/Reo__Matrix_Mult/Producer_and_Consumer.c Sat Mar 29 06:02:18 2014 -0700 5.3 @@ -10,6 +10,41 @@ 5.4 #include "Reo__Matrix_Mult.h" 5.5 #include "../Matrix_Mult.h" 5.6 5.7 +#define NEVER_ENDS 1 5.8 + 5.9 +/*The input to a VP's birth function is a struct that holds two arrays of 5.10 + * pointers to bridges -- one for input bridges, one for output bridges 5.11 + */ 5.12 +void 5.13 +broadcast_producer_Fn(void *_birthParams, SlaveVP *animVP) 5.14 + { 5.15 + VPParams *birthParams = (VPParams *) _birthParams; 5.16 + 5.17 + //Tell the Reo tool that generates circuit about the bridges of this VP 5.18 + //#Reo numInBridges 0 | numOutbridges 1 5.19 + VReoBridge **outBridges = birthParams->outBridges; 5.20 + VReoBridge *bridge; 5.21 + TestAppProdConsMsg *msg; 5.22 + int32 i = 0; 5.23 + 5.24 + DEBUG__printf(dbgAppFlow, "Broadcast Producer on core: %d", animVP->coreAnimatedBy); 5.25 + 5.26 + bridge = outBridges[0]; 5.27 + 5.28 + //broadcast producer continually puts things onto its output port 5.29 + msg = PR__malloc(sizeof(TestAppProdConsMsg)); 5.30 + msg->producerID = animVP->slaveNum; 5.31 + for( i = 0; i < numIterations; i++ ) 5.32 + { 5.33 + msg->producedCnt = i; 5.34 + VReo__put_into_bridge(msg, bridge, animVP); 5.35 + DEBUG__printf(dbgAppFlow, "Broadcast Producer %d, put in %d", msg->producerID, 5.36 + msg->producedCnt); 5.37 + } 5.38 + DEBUG__printf(dbgAppFlow, "Broadcast producer ending"); 5.39 + VReo__end_VP(animVP); 5.40 + } 5.41 + 5.42 /*The input to a VP's birth function is a struct that holds two arrays of 5.43 * pointers to bridges -- one for input bridges, one for output bridges 5.44 * and, optionally, an array of workUnit params. 5.45 @@ -23,23 +58,23 @@ 5.46 //#Reo numInBridges 0 | numOutbridges 1 5.47 VReoBridge **outBridges = birthParams->outBridges; 5.48 VReoBridge *bridge; 5.49 - TestAppProdConsMsg *msg; 5.50 MatrixMultWorkUnit *matrixMultWorkUnit; 5.51 int32 i; 5.52 5.53 - DEBUG__printf( dbgAppFlow, "Producer on core: %d", animVP->coreAnimatedBy ); 5.54 + DEBUG__printf( dbgAppFlow, "Started Multiply Producer: %d on core: %d", animVP->slaveNum, animVP->coreAnimatedBy ); 5.55 5.56 bridge = outBridges[0]; 5.57 5.58 //Do the multiplies 5.59 matrixMultWorkUnit = (MatrixMultWorkUnit *)birthParams->initData; 5.60 - for (i = 0; i < NUM_ITER; i++) 5.61 + for (i = 0; i < numIterations; i++) 5.62 { 5.63 calcProduct( matrixMultWorkUnit ); //result appears by side effect 5.64 VReo__put_into_bridge( matrixMultWorkUnit, bridge, animVP ); 5.65 DEBUG__printf( dbgAppFlow, "Producer %d, put in %d", 5.66 - msg->producerID, msg->producedCnt ); 5.67 + animVP->slaveNum, i ); 5.68 } 5.69 + DEBUG__printf(dbgAppFlow, "Producer %d done, ending", animVP->slaveNum); 5.70 VReo__end_VP( animVP ); 5.71 } 5.72 5.73 @@ -75,13 +110,13 @@ 5.74 float *finalArray, *partArray; 5.75 Matrix *leftMatrix, *rightMatrix, *resultMatrix; 5.76 5.77 - for (i = 0; i < NUM_ITER; i++) 5.78 + for (i = 0; i < numIterations; i++) 5.79 { 5.80 - for (j = 0; j < NUM_PROD; j++) 5.81 + for (j = 0; j < NUM_PROD -1; j++) 5.82 { 5.83 //get next result from a producer 5.84 resWorkUnit = (MatrixMultWorkUnit *) VReo__get_from_bridge(inBridge0, animVP); 5.85 - DEBUG__printf( dbgAppFlow, "Consumer got \n" ); 5.86 + DEBUG__printf( dbgAppFlow, "Consumer got something" ); 5.87 //now set up variables will use to copy partial result to final matrix array 5.88 partArray = resWorkUnit->prodArray; 5.89 resultMatrix = resWorkUnit->resultMatrix; //matrix for full orig piece 5.90 @@ -115,10 +150,11 @@ 5.91 // PR__free(resWorkUnit->partResArray); 5.92 // PR__free(resWorkUnit); 5.93 } 5.94 - 5.95 + DEBUG__printf(dbgAppFlow, "Completed Iteration: %d", i+1); 5.96 //tell producers they can go on to next matrix 5.97 VReo__get_from_bridge(inBridge1, animVP); //doing a get triggers broadcast 5.98 } 5.99 + DEBUG__printf(dbgAppFlow, "Consumer done, ending"); 5.100 VReo__end_VP(animVP); 5.101 } 5.102
6.1 --- a/Reo__Matrix_Mult/Reo__Matrix_Mult.h Wed Feb 19 09:27:10 2014 -0800 6.2 +++ b/Reo__Matrix_Mult/Reo__Matrix_Mult.h Sat Mar 29 06:02:18 2014 -0700 6.3 @@ -4,10 +4,11 @@ 6.4 #include <stdio.h> 6.5 6.6 #include <PR__include/langlets/vreo_wrapper_library.h> 6.7 +#include "../PR_defs__turn_on_and_off.h" 6.8 #include "Circuit.h" 6.9 #include "../Matrix_Mult.h" 6.10 6.11 -extern int NUM_ITER; 6.12 +extern int numIterations; 6.13 6.14 //=============================== Defines ============================== 6.15 /* The parameter values in here represent one unit of work 6.16 @@ -80,6 +81,7 @@ 6.17 6.18 //============================= Processor Functions ========================= 6.19 void matrix_mult__seed_Fn(void *data, SlaveVP *animatingVP); //seed VP function 6.20 +void broadcast_producer_Fn(void *_birthParams, SlaveVP *animVP); 6.21 void producer_Fn(void *data, SlaveVP *animatingVP); 6.22 void consumer_Fn(void *data, SlaveVP *animatingVP); 6.23
7.1 --- a/Reo__Matrix_Mult/SeedVP.c Wed Feb 19 09:27:10 2014 -0800 7.2 +++ b/Reo__Matrix_Mult/SeedVP.c Sat Mar 29 06:02:18 2014 -0700 7.3 @@ -79,7 +79,7 @@ 7.4 #endif 7.5 7.6 fflush(stdout); 7.7 - exit(0); 7.8 +// exit(0); 7.9 7.10 /* Stop Reo plug-in. */ 7.11 VReo__shutdown(seedVP);
8.1 --- a/main.c Wed Feb 19 09:27:10 2014 -0800 8.2 +++ b/main.c Sat Mar 29 06:02:18 2014 -0700 8.3 @@ -9,7 +9,7 @@ 8.4 8.5 // ============================================================================= 8.6 8.7 -int NUM_ITER; 8.8 +int numIterations; 8.9 8.10 8.11 int main(int argc, char **argv) 8.12 @@ -24,10 +24,10 @@ 8.13 8.14 DEBUG__printf(TRUE, "arguments -- numIter: %s | path: %s", argv[1], argv[2] ); 8.15 if(argc < 3) {printf("give: num iter and path to param file on cmd line\n"); exit(1);} 8.16 - NUM_ITER = atoi(argv[1]); 8.17 - numUnitsToMake = NUM_PROD; //defined by Reo circuit generator 8.18 + numIterations = atoi(argv[1]); 8.19 + numUnitsToMake = NUM_PROD-1; //defined by Reo circuit generator 8.20 8.21 - printf("[reo] Settings: %i workers, %i iterations | file: %s \n", NUM_PROD, NUM_ITER, argv[2]); 8.22 + printf("[reo] Settings: %i workers, %i iterations | file: %s \n", NUM_PROD, numIterations, argv[2]); 8.23 8.24 set_up_performance_counters(); 8.25 8.26 @@ -80,6 +80,7 @@ 8.27 8.28 PR__wait_for_process_to_end(matrixMultProcess); 8.29 PR__wait_for_all_activity_to_end(); 8.30 + DEBUG__printf(dbgAppFlow, "activity ended, about to call PR__shutdown"); 8.31 fflush(stdout); 8.32 PR__shutdown(); 8.33
9.1 --- a/nb__Reo_matrix_mult/nbproject/Makefile-Debug.mk Wed Feb 19 09:27:10 2014 -0800 9.2 +++ b/nb__Reo_matrix_mult/nbproject/Makefile-Debug.mk Sat Mar 29 06:02:18 2014 -0700 9.3 @@ -38,11 +38,11 @@ 9.4 ${OBJECTDIR}/_ext/1472/Matrix_Mult.o \ 9.5 ${OBJECTDIR}/_ext/1539317932/ParamBag.o \ 9.6 ${OBJECTDIR}/_ext/1539317932/ReadParamsFromFile.o \ 9.7 - ${OBJECTDIR}/_ext/1702716545/Circuit.o \ 9.8 ${OBJECTDIR}/_ext/1702716545/DivideWork.o \ 9.9 ${OBJECTDIR}/_ext/1702716545/Producer_and_Consumer.o \ 9.10 ${OBJECTDIR}/_ext/1702716545/SeedVP.o \ 9.11 - ${OBJECTDIR}/_ext/1472/main.o 9.12 + ${OBJECTDIR}/_ext/1472/main.o \ 9.13 + ${OBJECTDIR}/_ext/1435311123/Circuit.o 9.14 9.15 9.16 # C Compiler Flags 9.17 @@ -84,11 +84,6 @@ 9.18 ${RM} "$@.d" 9.19 $(COMPILE.c) -g -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1539317932/ReadParamsFromFile.o ../ParamHelper/ReadParamsFromFile.c 9.20 9.21 -${OBJECTDIR}/_ext/1702716545/Circuit.o: ../Reo__Matrix_Mult/Circuit.c 9.22 - ${MKDIR} -p ${OBJECTDIR}/_ext/1702716545 9.23 - ${RM} "$@.d" 9.24 - $(COMPILE.c) -g -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1702716545/Circuit.o ../Reo__Matrix_Mult/Circuit.c 9.25 - 9.26 ${OBJECTDIR}/_ext/1702716545/DivideWork.o: ../Reo__Matrix_Mult/DivideWork.c 9.27 ${MKDIR} -p ${OBJECTDIR}/_ext/1702716545 9.28 ${RM} "$@.d" 9.29 @@ -109,6 +104,11 @@ 9.30 ${RM} "$@.d" 9.31 $(COMPILE.c) -g -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1472/main.o ../main.c 9.32 9.33 +${OBJECTDIR}/_ext/1435311123/Circuit.o: /win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/Circuit.c 9.34 + ${MKDIR} -p ${OBJECTDIR}/_ext/1435311123 9.35 + ${RM} "$@.d" 9.36 + $(COMPILE.c) -g -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1435311123/Circuit.o /win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/Circuit.c 9.37 + 9.38 # Subprojects 9.39 .build-subprojects: 9.40
10.1 --- a/nb__Reo_matrix_mult/nbproject/Makefile-Debug_Sequential.mk Wed Feb 19 09:27:10 2014 -0800 10.2 +++ b/nb__Reo_matrix_mult/nbproject/Makefile-Debug_Sequential.mk Sat Mar 29 06:02:18 2014 -0700 10.3 @@ -38,11 +38,11 @@ 10.4 ${OBJECTDIR}/_ext/1472/Matrix_Mult.o \ 10.5 ${OBJECTDIR}/_ext/1539317932/ParamBag.o \ 10.6 ${OBJECTDIR}/_ext/1539317932/ReadParamsFromFile.o \ 10.7 - ${OBJECTDIR}/_ext/1702716545/Circuit.o \ 10.8 ${OBJECTDIR}/_ext/1702716545/DivideWork.o \ 10.9 ${OBJECTDIR}/_ext/1702716545/Producer_and_Consumer.o \ 10.10 ${OBJECTDIR}/_ext/1702716545/SeedVP.o \ 10.11 - ${OBJECTDIR}/_ext/1472/main.o 10.12 + ${OBJECTDIR}/_ext/1472/main.o \ 10.13 + ${OBJECTDIR}/_ext/1435311123/Circuit.o 10.14 10.15 10.16 # C Compiler Flags 10.17 @@ -59,66 +59,78 @@ 10.18 ASFLAGS= 10.19 10.20 # Link Libraries and Options 10.21 -LDLIBSOPTIONS=-L../../PR__lib -lpr__ml__sharedmem__dku_debug -lprmalloc -lprparam -lprqueue -lreo_wrapper_lib_opt1 10.22 +LDLIBSOPTIONS=-L../../PR__lib -Wl,-rpath,../../PR__lib -lprmalloc -lprparam -lprqueue -lm -Wl,-rpath,/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/library__Reo_opt1/nb__reo_opt1_wrapper_lib__as_lib/../../PR__lib -L/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/library__Reo_opt1/nb__reo_opt1_wrapper_lib__as_lib/../../PR__lib -lreo_opt1_ml_lib -Wl,-rpath,/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/library__proto-runtime/nb__PR__ML__wDKU__lib/../../PR__lib -L/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/library__proto-runtime/nb__PR__ML__wDKU__lib/../../PR__lib -lpr__ml__sharedmem_debug_seq 10.23 10.24 # Build Targets 10.25 .build-conf: ${BUILD_SUBPROJECTS} 10.26 - "${MAKE}" -f nbproject/Makefile-${CND_CONF}.mk ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/nb__reo_matrix_mult 10.27 + "${MAKE}" -f nbproject/Makefile-${CND_CONF}.mk ../../dist/bin/reo_matrix_mult__debug_seq 10.28 10.29 -${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/nb__reo_matrix_mult: ${OBJECTFILES} 10.30 - ${MKDIR} -p ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM} 10.31 - ${LINK.c} -o ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/nb__reo_matrix_mult ${OBJECTFILES} ${LDLIBSOPTIONS} 10.32 +../../dist/bin/reo_matrix_mult__debug_seq: /win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/library__Reo_opt1/nb__reo_opt1_wrapper_lib__as_lib/../../PR__lib/libreo_opt1_ml_lib.so 10.33 + 10.34 +../../dist/bin/reo_matrix_mult__debug_seq: /win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/library__proto-runtime/nb__PR__ML__wDKU__lib/../../PR__lib/libpr__ml__sharedmem_debug_seq.so 10.35 + 10.36 +../../dist/bin/reo_matrix_mult__debug_seq: ${OBJECTFILES} 10.37 + ${MKDIR} -p ../../dist/bin 10.38 + ${LINK.c} -o ../../dist/bin/reo_matrix_mult__debug_seq ${OBJECTFILES} ${LDLIBSOPTIONS} 10.39 10.40 ${OBJECTDIR}/_ext/1472/Matrix_Mult.o: ../Matrix_Mult.c 10.41 ${MKDIR} -p ${OBJECTDIR}/_ext/1472 10.42 ${RM} "$@.d" 10.43 - $(COMPILE.c) -g -DDEBUG__SEQUENTIAL_MODE -DDEBUG__TURN_ON_DEBUG_PRINT -I../.. -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1472/Matrix_Mult.o ../Matrix_Mult.c 10.44 + $(COMPILE.c) -g -DDEBUG__TURN_ON_DEBUG_PRINT -DDEBUG__TURN_ON_SEQUENTIAL_MODE -I../.. -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1472/Matrix_Mult.o ../Matrix_Mult.c 10.45 10.46 ${OBJECTDIR}/_ext/1539317932/ParamBag.o: ../ParamHelper/ParamBag.c 10.47 ${MKDIR} -p ${OBJECTDIR}/_ext/1539317932 10.48 ${RM} "$@.d" 10.49 - $(COMPILE.c) -g -DDEBUG__SEQUENTIAL_MODE -DDEBUG__TURN_ON_DEBUG_PRINT -I../.. -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1539317932/ParamBag.o ../ParamHelper/ParamBag.c 10.50 + $(COMPILE.c) -g -DDEBUG__TURN_ON_DEBUG_PRINT -DDEBUG__TURN_ON_SEQUENTIAL_MODE -I../.. -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1539317932/ParamBag.o ../ParamHelper/ParamBag.c 10.51 10.52 ${OBJECTDIR}/_ext/1539317932/ReadParamsFromFile.o: ../ParamHelper/ReadParamsFromFile.c 10.53 ${MKDIR} -p ${OBJECTDIR}/_ext/1539317932 10.54 ${RM} "$@.d" 10.55 - $(COMPILE.c) -g -DDEBUG__SEQUENTIAL_MODE -DDEBUG__TURN_ON_DEBUG_PRINT -I../.. -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1539317932/ReadParamsFromFile.o ../ParamHelper/ReadParamsFromFile.c 10.56 - 10.57 -${OBJECTDIR}/_ext/1702716545/Circuit.o: ../Reo__Matrix_Mult/Circuit.c 10.58 - ${MKDIR} -p ${OBJECTDIR}/_ext/1702716545 10.59 - ${RM} "$@.d" 10.60 - $(COMPILE.c) -g -DDEBUG__SEQUENTIAL_MODE -DDEBUG__TURN_ON_DEBUG_PRINT -I../.. -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1702716545/Circuit.o ../Reo__Matrix_Mult/Circuit.c 10.61 + $(COMPILE.c) -g -DDEBUG__TURN_ON_DEBUG_PRINT -DDEBUG__TURN_ON_SEQUENTIAL_MODE -I../.. -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1539317932/ReadParamsFromFile.o ../ParamHelper/ReadParamsFromFile.c 10.62 10.63 ${OBJECTDIR}/_ext/1702716545/DivideWork.o: ../Reo__Matrix_Mult/DivideWork.c 10.64 ${MKDIR} -p ${OBJECTDIR}/_ext/1702716545 10.65 ${RM} "$@.d" 10.66 - $(COMPILE.c) -g -DDEBUG__SEQUENTIAL_MODE -DDEBUG__TURN_ON_DEBUG_PRINT -I../.. -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1702716545/DivideWork.o ../Reo__Matrix_Mult/DivideWork.c 10.67 + $(COMPILE.c) -g -DDEBUG__TURN_ON_DEBUG_PRINT -DDEBUG__TURN_ON_SEQUENTIAL_MODE -I../.. -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1702716545/DivideWork.o ../Reo__Matrix_Mult/DivideWork.c 10.68 10.69 ${OBJECTDIR}/_ext/1702716545/Producer_and_Consumer.o: ../Reo__Matrix_Mult/Producer_and_Consumer.c 10.70 ${MKDIR} -p ${OBJECTDIR}/_ext/1702716545 10.71 ${RM} "$@.d" 10.72 - $(COMPILE.c) -g -DDEBUG__SEQUENTIAL_MODE -DDEBUG__TURN_ON_DEBUG_PRINT -I../.. -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1702716545/Producer_and_Consumer.o ../Reo__Matrix_Mult/Producer_and_Consumer.c 10.73 + $(COMPILE.c) -g -DDEBUG__TURN_ON_DEBUG_PRINT -DDEBUG__TURN_ON_SEQUENTIAL_MODE -I../.. -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1702716545/Producer_and_Consumer.o ../Reo__Matrix_Mult/Producer_and_Consumer.c 10.74 10.75 ${OBJECTDIR}/_ext/1702716545/SeedVP.o: ../Reo__Matrix_Mult/SeedVP.c 10.76 ${MKDIR} -p ${OBJECTDIR}/_ext/1702716545 10.77 ${RM} "$@.d" 10.78 - $(COMPILE.c) -g -DDEBUG__SEQUENTIAL_MODE -DDEBUG__TURN_ON_DEBUG_PRINT -I../.. -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1702716545/SeedVP.o ../Reo__Matrix_Mult/SeedVP.c 10.79 + $(COMPILE.c) -g -DDEBUG__TURN_ON_DEBUG_PRINT -DDEBUG__TURN_ON_SEQUENTIAL_MODE -I../.. -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1702716545/SeedVP.o ../Reo__Matrix_Mult/SeedVP.c 10.80 10.81 ${OBJECTDIR}/_ext/1472/main.o: ../main.c 10.82 ${MKDIR} -p ${OBJECTDIR}/_ext/1472 10.83 ${RM} "$@.d" 10.84 - $(COMPILE.c) -g -DDEBUG__SEQUENTIAL_MODE -DDEBUG__TURN_ON_DEBUG_PRINT -I../.. -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1472/main.o ../main.c 10.85 + $(COMPILE.c) -g -DDEBUG__TURN_ON_DEBUG_PRINT -DDEBUG__TURN_ON_SEQUENTIAL_MODE -I../.. -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1472/main.o ../main.c 10.86 + 10.87 +${OBJECTDIR}/_ext/1435311123/Circuit.o: /win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/Circuit.c 10.88 + ${MKDIR} -p ${OBJECTDIR}/_ext/1435311123 10.89 + ${RM} "$@.d" 10.90 + $(COMPILE.c) -g -DDEBUG__TURN_ON_DEBUG_PRINT -DDEBUG__TURN_ON_SEQUENTIAL_MODE -I../.. -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1435311123/Circuit.o /win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/Circuit.c 10.91 10.92 # Subprojects 10.93 .build-subprojects: 10.94 + cd /win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/library__Reo_opt1/nb__reo_opt1_wrapper_lib__as_lib && ${MAKE} -f Makefile CONF=Debug 10.95 + cd /win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/library__proto-runtime/nb__PR__ML__wDKU__lib && ${MAKE} -f Makefile CONF=MEAS_ON 10.96 + cd /win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/library__Reo_opt1/nb__reo_opt1_wrapper_lib__as_lib && ${MAKE} -f Makefile CONF=Debug 10.97 + cd /win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/library__proto-runtime/nb__PR__ML__wDKU__lib && ${MAKE} -f Makefile CONF=MEAS_ON 10.98 10.99 # Clean Targets 10.100 .clean-conf: ${CLEAN_SUBPROJECTS} 10.101 ${RM} -r ${CND_BUILDDIR}/${CND_CONF} 10.102 - ${RM} ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/nb__reo_matrix_mult 10.103 + ${RM} ../../dist/bin/reo_matrix_mult__debug_seq 10.104 10.105 # Subprojects 10.106 .clean-subprojects: 10.107 + cd /win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/library__Reo_opt1/nb__reo_opt1_wrapper_lib__as_lib && ${MAKE} -f Makefile CONF=Debug clean 10.108 + cd /win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/library__proto-runtime/nb__PR__ML__wDKU__lib && ${MAKE} -f Makefile CONF=MEAS_ON clean 10.109 + cd /win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/library__Reo_opt1/nb__reo_opt1_wrapper_lib__as_lib && ${MAKE} -f Makefile CONF=Debug clean 10.110 + cd /win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/library__proto-runtime/nb__PR__ML__wDKU__lib && ${MAKE} -f Makefile CONF=MEAS_ON clean 10.111 10.112 # Enable dependency checking 10.113 .dep.inc: .depcheck-impl
11.1 --- a/nb__Reo_matrix_mult/nbproject/Makefile-Release.mk Wed Feb 19 09:27:10 2014 -0800 11.2 +++ b/nb__Reo_matrix_mult/nbproject/Makefile-Release.mk Sat Mar 29 06:02:18 2014 -0700 11.3 @@ -38,11 +38,11 @@ 11.4 ${OBJECTDIR}/_ext/1472/Matrix_Mult.o \ 11.5 ${OBJECTDIR}/_ext/1539317932/ParamBag.o \ 11.6 ${OBJECTDIR}/_ext/1539317932/ReadParamsFromFile.o \ 11.7 - ${OBJECTDIR}/_ext/1702716545/Circuit.o \ 11.8 ${OBJECTDIR}/_ext/1702716545/DivideWork.o \ 11.9 ${OBJECTDIR}/_ext/1702716545/Producer_and_Consumer.o \ 11.10 ${OBJECTDIR}/_ext/1702716545/SeedVP.o \ 11.11 - ${OBJECTDIR}/_ext/1472/main.o 11.12 + ${OBJECTDIR}/_ext/1472/main.o \ 11.13 + ${OBJECTDIR}/_ext/1435311123/Circuit.o 11.14 11.15 11.16 # C Compiler Flags 11.17 @@ -84,11 +84,6 @@ 11.18 ${RM} "$@.d" 11.19 $(COMPILE.c) -O2 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1539317932/ReadParamsFromFile.o ../ParamHelper/ReadParamsFromFile.c 11.20 11.21 -${OBJECTDIR}/_ext/1702716545/Circuit.o: ../Reo__Matrix_Mult/Circuit.c 11.22 - ${MKDIR} -p ${OBJECTDIR}/_ext/1702716545 11.23 - ${RM} "$@.d" 11.24 - $(COMPILE.c) -O2 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1702716545/Circuit.o ../Reo__Matrix_Mult/Circuit.c 11.25 - 11.26 ${OBJECTDIR}/_ext/1702716545/DivideWork.o: ../Reo__Matrix_Mult/DivideWork.c 11.27 ${MKDIR} -p ${OBJECTDIR}/_ext/1702716545 11.28 ${RM} "$@.d" 11.29 @@ -109,6 +104,11 @@ 11.30 ${RM} "$@.d" 11.31 $(COMPILE.c) -O2 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1472/main.o ../main.c 11.32 11.33 +${OBJECTDIR}/_ext/1435311123/Circuit.o: /win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/Circuit.c 11.34 + ${MKDIR} -p ${OBJECTDIR}/_ext/1435311123 11.35 + ${RM} "$@.d" 11.36 + $(COMPILE.c) -O2 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1435311123/Circuit.o /win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/Circuit.c 11.37 + 11.38 # Subprojects 11.39 .build-subprojects: 11.40
12.1 --- a/nb__Reo_matrix_mult/nbproject/Makefile-impl.mk Wed Feb 19 09:27:10 2014 -0800 12.2 +++ b/nb__Reo_matrix_mult/nbproject/Makefile-impl.mk Sat Mar 29 06:02:18 2014 -0700 12.3 @@ -31,7 +31,7 @@ 12.4 CONF=${DEFAULTCONF} 12.5 12.6 # All Configurations 12.7 -ALLCONFS=Debug Release Debug_Sequential 12.8 +ALLCONFS=Debug Release Debug_Sequential MEAS_ON 12.9 12.10 12.11 # build
13.1 --- a/nb__Reo_matrix_mult/nbproject/Makefile-variables.mk Wed Feb 19 09:27:10 2014 -0800 13.2 +++ b/nb__Reo_matrix_mult/nbproject/Makefile-variables.mk Sat Mar 29 06:02:18 2014 -0700 13.3 @@ -24,12 +24,20 @@ 13.4 CND_PACKAGE_PATH_Release=dist/Release/GNU-Linux-x86/package/nbreomatrixmult.tar 13.5 # Debug_Sequential configuration 13.6 CND_PLATFORM_Debug_Sequential=GNU-Linux-x86 13.7 -CND_ARTIFACT_DIR_Debug_Sequential=dist/Debug_Sequential/GNU-Linux-x86 13.8 -CND_ARTIFACT_NAME_Debug_Sequential=nb__reo_matrix_mult 13.9 -CND_ARTIFACT_PATH_Debug_Sequential=dist/Debug_Sequential/GNU-Linux-x86/nb__reo_matrix_mult 13.10 +CND_ARTIFACT_DIR_Debug_Sequential=../../dist/bin 13.11 +CND_ARTIFACT_NAME_Debug_Sequential=reo_matrix_mult__debug_seq 13.12 +CND_ARTIFACT_PATH_Debug_Sequential=../../dist/bin/reo_matrix_mult__debug_seq 13.13 CND_PACKAGE_DIR_Debug_Sequential=dist/Debug_Sequential/GNU-Linux-x86/package 13.14 CND_PACKAGE_NAME_Debug_Sequential=nbreomatrixmult.tar 13.15 CND_PACKAGE_PATH_Debug_Sequential=dist/Debug_Sequential/GNU-Linux-x86/package/nbreomatrixmult.tar 13.16 +# MEAS_ON configuration 13.17 +CND_PLATFORM_MEAS_ON=GNU-Linux-x86 13.18 +CND_ARTIFACT_DIR_MEAS_ON=../../dist/bin 13.19 +CND_ARTIFACT_NAME_MEAS_ON=reo_matrix_mult__meas_on 13.20 +CND_ARTIFACT_PATH_MEAS_ON=../../dist/bin/reo_matrix_mult__meas_on 13.21 +CND_PACKAGE_DIR_MEAS_ON=dist/MEAS_ON/GNU-Linux-x86/package 13.22 +CND_PACKAGE_NAME_MEAS_ON=nbreomatrixmult.tar 13.23 +CND_PACKAGE_PATH_MEAS_ON=dist/MEAS_ON/GNU-Linux-x86/package/nbreomatrixmult.tar 13.24 # 13.25 # include compiler specific variables 13.26 #
14.1 --- a/nb__Reo_matrix_mult/nbproject/Package-Debug_Sequential.bash Wed Feb 19 09:27:10 2014 -0800 14.2 +++ b/nb__Reo_matrix_mult/nbproject/Package-Debug_Sequential.bash Sat Mar 29 06:02:18 2014 -0700 14.3 @@ -13,8 +13,8 @@ 14.4 CND_DLIB_EXT=so 14.5 NBTMPDIR=${CND_BUILDDIR}/${CND_CONF}/${CND_PLATFORM}/tmp-packaging 14.6 TMPDIRNAME=tmp-packaging 14.7 -OUTPUT_PATH=${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/nb__reo_matrix_mult 14.8 -OUTPUT_BASENAME=nb__reo_matrix_mult 14.9 +OUTPUT_PATH=../../dist/bin/reo_matrix_mult__debug_seq 14.10 +OUTPUT_BASENAME=reo_matrix_mult__debug_seq 14.11 PACKAGE_TOP_DIR=nbreomatrixmult/ 14.12 14.13 # Functions
15.1 --- a/nb__Reo_matrix_mult/nbproject/configurations.xml Wed Feb 19 09:27:10 2014 -0800 15.2 +++ b/nb__Reo_matrix_mult/nbproject/configurations.xml Sat Mar 29 06:02:18 2014 -0700 15.3 @@ -4,6 +4,35 @@ 15.4 <logicalFolder name="HeaderFiles" 15.5 displayName="Header Files" 15.6 projectFiles="true"> 15.7 + <logicalFolder name="PR__include" displayName="PR__include" projectFiles="true"> 15.8 + <logicalFolder name="langlets" displayName="langlets" projectFiles="true"> 15.9 + <itemPath>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/langlets/PRServ__wrapper_library.h</itemPath> 15.10 + <itemPath>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/langlets/prdsl_wrapper_library.h</itemPath> 15.11 + <itemPath>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/langlets/vreo_wrapper_library.h</itemPath> 15.12 + </logicalFolder> 15.13 + <logicalFolder name="Services_offered_by_PR" 15.14 + displayName="Services_offered_by_PR" 15.15 + projectFiles="true"> 15.16 + <itemPath>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/Services_offered_by_PR/DEBUG__macros.h</itemPath> 15.17 + <itemPath>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/Services_offered_by_PR/MEAS__Counter_Recording.h</itemPath> 15.18 + <itemPath>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/Services_offered_by_PR/MEAS__macros.h</itemPath> 15.19 + <itemPath>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/Services_offered_by_PR/prdependency.h</itemPath> 15.20 + <itemPath>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/Services_offered_by_PR/probes__wrapper_library.h</itemPath> 15.21 + </logicalFolder> 15.22 + <itemPath>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__PI.h</itemPath> 15.23 + <itemPath>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__SS.h</itemPath> 15.24 + <itemPath>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__WL.h</itemPath> 15.25 + <itemPath>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__int.h</itemPath> 15.26 + <itemPath>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__primitive_data_types.h</itemPath> 15.27 + <itemPath>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__structs__common.h</itemPath> 15.28 + <itemPath>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prdynarray.h</itemPath> 15.29 + <itemPath>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prhash.h</itemPath> 15.30 + <itemPath>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prhistogram.h</itemPath> 15.31 + <itemPath>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prlistofarrays.h</itemPath> 15.32 + <itemPath>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prmalloc.h</itemPath> 15.33 + <itemPath>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prparam.h</itemPath> 15.34 + <itemPath>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prqueue.h</itemPath> 15.35 + </logicalFolder> 15.36 </logicalFolder> 15.37 <logicalFolder name="ResourceFiles" 15.38 displayName="Resource Files" 15.39 @@ -20,8 +49,8 @@ 15.40 <logicalFolder name="Reo__Matrix_Mult" 15.41 displayName="Reo__Matrix_Mult" 15.42 projectFiles="true"> 15.43 - <itemPath>../Reo__Matrix_Mult/Circuit.c</itemPath> 15.44 - <itemPath>../Reo__Matrix_Mult/Circuit.h</itemPath> 15.45 + <itemPath>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/Circuit.c</itemPath> 15.46 + <itemPath>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/Circuit.h</itemPath> 15.47 <itemPath>../Reo__Matrix_Mult/DivideWork.c</itemPath> 15.48 <itemPath>../Reo__Matrix_Mult/Producer_and_Consumer.c</itemPath> 15.49 <itemPath>../Reo__Matrix_Mult/Reo__Matrix_Mult.h</itemPath> 15.50 @@ -46,6 +75,7 @@ 15.51 <sourceRootList> 15.52 <Elem>../ParamHelper</Elem> 15.53 <Elem>../Reo__Matrix_Mult</Elem> 15.54 + <Elem>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include</Elem> 15.55 </sourceRootList> 15.56 <projectmakefile>Makefile</projectmakefile> 15.57 <confs> 15.58 @@ -70,10 +100,6 @@ 15.59 tool="0" 15.60 flavor2="0"> 15.61 </item> 15.62 - <item path="../Reo__Matrix_Mult/Circuit.c" ex="false" tool="0" flavor2="0"> 15.63 - </item> 15.64 - <item path="../Reo__Matrix_Mult/Circuit.h" ex="false" tool="3" flavor2="0"> 15.65 - </item> 15.66 <item path="../Reo__Matrix_Mult/DivideWork.c" ex="false" tool="0" flavor2="0"> 15.67 </item> 15.68 <item path="../Reo__Matrix_Mult/Producer_and_Consumer.c" 15.69 @@ -90,6 +116,121 @@ 15.70 </item> 15.71 <item path="../main.c" ex="false" tool="0" flavor2="0"> 15.72 </item> 15.73 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/Circuit.c" 15.74 + ex="false" 15.75 + tool="0" 15.76 + flavor2="0"> 15.77 + </item> 15.78 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/Circuit.h" 15.79 + ex="false" 15.80 + tool="3" 15.81 + flavor2="0"> 15.82 + </item> 15.83 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__PI.h" 15.84 + ex="false" 15.85 + tool="3" 15.86 + flavor2="0"> 15.87 + </item> 15.88 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__SS.h" 15.89 + ex="false" 15.90 + tool="3" 15.91 + flavor2="0"> 15.92 + </item> 15.93 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__WL.h" 15.94 + ex="false" 15.95 + tool="3" 15.96 + flavor2="0"> 15.97 + </item> 15.98 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__int.h" 15.99 + ex="false" 15.100 + tool="3" 15.101 + flavor2="0"> 15.102 + </item> 15.103 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__primitive_data_types.h" 15.104 + ex="false" 15.105 + tool="3" 15.106 + flavor2="0"> 15.107 + </item> 15.108 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__structs__common.h" 15.109 + ex="false" 15.110 + tool="3" 15.111 + flavor2="0"> 15.112 + </item> 15.113 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/Services_offered_by_PR/DEBUG__macros.h" 15.114 + ex="false" 15.115 + tool="3" 15.116 + flavor2="0"> 15.117 + </item> 15.118 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/Services_offered_by_PR/MEAS__Counter_Recording.h" 15.119 + ex="false" 15.120 + tool="3" 15.121 + flavor2="0"> 15.122 + </item> 15.123 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/Services_offered_by_PR/MEAS__macros.h" 15.124 + ex="false" 15.125 + tool="3" 15.126 + flavor2="0"> 15.127 + </item> 15.128 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/Services_offered_by_PR/prdependency.h" 15.129 + ex="false" 15.130 + tool="3" 15.131 + flavor2="0"> 15.132 + </item> 15.133 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/Services_offered_by_PR/probes__wrapper_library.h" 15.134 + ex="false" 15.135 + tool="3" 15.136 + flavor2="0"> 15.137 + </item> 15.138 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/langlets/PRServ__wrapper_library.h" 15.139 + ex="false" 15.140 + tool="3" 15.141 + flavor2="0"> 15.142 + </item> 15.143 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/langlets/prdsl_wrapper_library.h" 15.144 + ex="false" 15.145 + tool="3" 15.146 + flavor2="0"> 15.147 + </item> 15.148 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/langlets/vreo_wrapper_library.h" 15.149 + ex="false" 15.150 + tool="3" 15.151 + flavor2="0"> 15.152 + </item> 15.153 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prdynarray.h" 15.154 + ex="false" 15.155 + tool="3" 15.156 + flavor2="0"> 15.157 + </item> 15.158 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prhash.h" 15.159 + ex="false" 15.160 + tool="3" 15.161 + flavor2="0"> 15.162 + </item> 15.163 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prhistogram.h" 15.164 + ex="false" 15.165 + tool="3" 15.166 + flavor2="0"> 15.167 + </item> 15.168 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prlistofarrays.h" 15.169 + ex="false" 15.170 + tool="3" 15.171 + flavor2="0"> 15.172 + </item> 15.173 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prmalloc.h" 15.174 + ex="false" 15.175 + tool="3" 15.176 + flavor2="0"> 15.177 + </item> 15.178 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prparam.h" 15.179 + ex="false" 15.180 + tool="3" 15.181 + flavor2="0"> 15.182 + </item> 15.183 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prqueue.h" 15.184 + ex="false" 15.185 + tool="3" 15.186 + flavor2="0"> 15.187 + </item> 15.188 </conf> 15.189 <conf name="Release" type="1"> 15.190 <toolsSet> 15.191 @@ -124,9 +265,228 @@ 15.192 tool="0" 15.193 flavor2="0"> 15.194 </item> 15.195 - <item path="../Reo__Matrix_Mult/Circuit.c" ex="false" tool="0" flavor2="0"> 15.196 + <item path="../Reo__Matrix_Mult/DivideWork.c" ex="false" tool="0" flavor2="0"> 15.197 </item> 15.198 - <item path="../Reo__Matrix_Mult/Circuit.h" ex="false" tool="3" flavor2="0"> 15.199 + <item path="../Reo__Matrix_Mult/Producer_and_Consumer.c" 15.200 + ex="false" 15.201 + tool="0" 15.202 + flavor2="0"> 15.203 + </item> 15.204 + <item path="../Reo__Matrix_Mult/Reo__Matrix_Mult.h" 15.205 + ex="false" 15.206 + tool="3" 15.207 + flavor2="0"> 15.208 + </item> 15.209 + <item path="../Reo__Matrix_Mult/SeedVP.c" ex="false" tool="0" flavor2="0"> 15.210 + </item> 15.211 + <item path="../main.c" ex="false" tool="0" flavor2="0"> 15.212 + </item> 15.213 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/Circuit.c" 15.214 + ex="false" 15.215 + tool="0" 15.216 + flavor2="0"> 15.217 + </item> 15.218 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/Circuit.h" 15.219 + ex="false" 15.220 + tool="3" 15.221 + flavor2="0"> 15.222 + </item> 15.223 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__PI.h" 15.224 + ex="false" 15.225 + tool="3" 15.226 + flavor2="0"> 15.227 + </item> 15.228 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__SS.h" 15.229 + ex="false" 15.230 + tool="3" 15.231 + flavor2="0"> 15.232 + </item> 15.233 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__WL.h" 15.234 + ex="false" 15.235 + tool="3" 15.236 + flavor2="0"> 15.237 + </item> 15.238 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__int.h" 15.239 + ex="false" 15.240 + tool="3" 15.241 + flavor2="0"> 15.242 + </item> 15.243 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__primitive_data_types.h" 15.244 + ex="false" 15.245 + tool="3" 15.246 + flavor2="0"> 15.247 + </item> 15.248 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__structs__common.h" 15.249 + ex="false" 15.250 + tool="3" 15.251 + flavor2="0"> 15.252 + </item> 15.253 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/Services_offered_by_PR/DEBUG__macros.h" 15.254 + ex="false" 15.255 + tool="3" 15.256 + flavor2="0"> 15.257 + </item> 15.258 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/Services_offered_by_PR/MEAS__Counter_Recording.h" 15.259 + ex="false" 15.260 + tool="3" 15.261 + flavor2="0"> 15.262 + </item> 15.263 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/Services_offered_by_PR/MEAS__macros.h" 15.264 + ex="false" 15.265 + tool="3" 15.266 + flavor2="0"> 15.267 + </item> 15.268 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/Services_offered_by_PR/prdependency.h" 15.269 + ex="false" 15.270 + tool="3" 15.271 + flavor2="0"> 15.272 + </item> 15.273 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/Services_offered_by_PR/probes__wrapper_library.h" 15.274 + ex="false" 15.275 + tool="3" 15.276 + flavor2="0"> 15.277 + </item> 15.278 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/langlets/PRServ__wrapper_library.h" 15.279 + ex="false" 15.280 + tool="3" 15.281 + flavor2="0"> 15.282 + </item> 15.283 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/langlets/prdsl_wrapper_library.h" 15.284 + ex="false" 15.285 + tool="3" 15.286 + flavor2="0"> 15.287 + </item> 15.288 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/langlets/vreo_wrapper_library.h" 15.289 + ex="false" 15.290 + tool="3" 15.291 + flavor2="0"> 15.292 + </item> 15.293 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prdynarray.h" 15.294 + ex="false" 15.295 + tool="3" 15.296 + flavor2="0"> 15.297 + </item> 15.298 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prhash.h" 15.299 + ex="false" 15.300 + tool="3" 15.301 + flavor2="0"> 15.302 + </item> 15.303 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prhistogram.h" 15.304 + ex="false" 15.305 + tool="3" 15.306 + flavor2="0"> 15.307 + </item> 15.308 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prlistofarrays.h" 15.309 + ex="false" 15.310 + tool="3" 15.311 + flavor2="0"> 15.312 + </item> 15.313 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prmalloc.h" 15.314 + ex="false" 15.315 + tool="3" 15.316 + flavor2="0"> 15.317 + </item> 15.318 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prparam.h" 15.319 + ex="false" 15.320 + tool="3" 15.321 + flavor2="0"> 15.322 + </item> 15.323 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prqueue.h" 15.324 + ex="false" 15.325 + tool="3" 15.326 + flavor2="0"> 15.327 + </item> 15.328 + </conf> 15.329 + <conf name="Debug_Sequential" type="1"> 15.330 + <toolsSet> 15.331 + <compilerSet>default</compilerSet> 15.332 + <dependencyChecking>true</dependencyChecking> 15.333 + <rebuildPropChanged>false</rebuildPropChanged> 15.334 + </toolsSet> 15.335 + <compileType> 15.336 + <cTool> 15.337 + <incDir> 15.338 + <pElem>../..</pElem> 15.339 + </incDir> 15.340 + <preprocessorList> 15.341 + <Elem>DEBUG__TURN_ON_DEBUG_PRINT</Elem> 15.342 + <Elem>DEBUG__TURN_ON_SEQUENTIAL_MODE</Elem> 15.343 + </preprocessorList> 15.344 + </cTool> 15.345 + <linkerTool> 15.346 + <output>../../dist/bin/reo_matrix_mult__debug_seq</output> 15.347 + <linkerAddLib> 15.348 + <pElem>../../PR__lib</pElem> 15.349 + </linkerAddLib> 15.350 + <linkerDynSerch> 15.351 + <pElem>../../PR__lib</pElem> 15.352 + </linkerDynSerch> 15.353 + <linkerLibItems> 15.354 + <linkerLibLibItem>prmalloc</linkerLibLibItem> 15.355 + <linkerLibLibItem>prparam</linkerLibLibItem> 15.356 + <linkerLibLibItem>prqueue</linkerLibLibItem> 15.357 + <linkerLibStdlibItem>Mathematics</linkerLibStdlibItem> 15.358 + <linkerLibProjectItem> 15.359 + <makeArtifact PL="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/library__Reo_opt1/nb__reo_opt1_wrapper_lib__as_lib" 15.360 + CT="2" 15.361 + CN="Debug" 15.362 + AC="false" 15.363 + BL="true" 15.364 + WD="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/library__Reo_opt1/nb__reo_opt1_wrapper_lib__as_lib" 15.365 + BC="${MAKE} -f Makefile CONF=Debug" 15.366 + CC="${MAKE} -f Makefile CONF=Debug clean" 15.367 + OP="../../PR__lib/libreo_opt1_ml_lib.so"> 15.368 + </makeArtifact> 15.369 + </linkerLibProjectItem> 15.370 + <linkerLibProjectItem> 15.371 + <makeArtifact PL="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/library__proto-runtime/nb__PR__ML__wDKU__lib" 15.372 + CT="2" 15.373 + CN="MEAS_ON" 15.374 + AC="true" 15.375 + BL="true" 15.376 + WD="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/library__proto-runtime/nb__PR__ML__wDKU__lib" 15.377 + BC="${MAKE} -f Makefile CONF=MEAS_ON" 15.378 + CC="${MAKE} -f Makefile CONF=MEAS_ON clean" 15.379 + OP="../../PR__lib/libpr__ml__sharedmem_debug_seq.so"> 15.380 + </makeArtifact> 15.381 + </linkerLibProjectItem> 15.382 + </linkerLibItems> 15.383 + </linkerTool> 15.384 + <requiredProjects> 15.385 + <makeArtifact PL="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/library__Reo_opt1/nb__reo_opt1_wrapper_lib__as_lib" 15.386 + CT="2" 15.387 + CN="Debug" 15.388 + AC="false" 15.389 + BL="true" 15.390 + WD="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/library__Reo_opt1/nb__reo_opt1_wrapper_lib__as_lib" 15.391 + BC="${MAKE} -f Makefile CONF=Debug" 15.392 + CC="${MAKE} -f Makefile CONF=Debug clean" 15.393 + OP="../../PR__lib/libreo_opt1_ml_lib.so"> 15.394 + </makeArtifact> 15.395 + <makeArtifact PL="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/library__proto-runtime/nb__PR__ML__wDKU__lib" 15.396 + CT="2" 15.397 + CN="MEAS_ON" 15.398 + AC="true" 15.399 + BL="true" 15.400 + WD="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/library__proto-runtime/nb__PR__ML__wDKU__lib" 15.401 + BC="${MAKE} -f Makefile CONF=MEAS_ON" 15.402 + CC="${MAKE} -f Makefile CONF=MEAS_ON clean" 15.403 + OP="../../PR__lib/libpr__ml__sharedmem_debug_seq.so"> 15.404 + </makeArtifact> 15.405 + </requiredProjects> 15.406 + </compileType> 15.407 + <item path="../Matrix_Mult.c" ex="false" tool="0" flavor2="0"> 15.408 + </item> 15.409 + <item path="../Matrix_Mult.h" ex="false" tool="3" flavor2="0"> 15.410 + </item> 15.411 + <item path="../ParamHelper/Param.h" ex="false" tool="3" flavor2="0"> 15.412 + </item> 15.413 + <item path="../ParamHelper/ParamBag.c" ex="false" tool="0" flavor2="0"> 15.414 + </item> 15.415 + <item path="../ParamHelper/ReadParamsFromFile.c" 15.416 + ex="false" 15.417 + tool="0" 15.418 + flavor2="0"> 15.419 </item> 15.420 <item path="../Reo__Matrix_Mult/DivideWork.c" ex="false" tool="0" flavor2="0"> 15.421 </item> 15.422 @@ -144,8 +504,123 @@ 15.423 </item> 15.424 <item path="../main.c" ex="false" tool="0" flavor2="0"> 15.425 </item> 15.426 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/Circuit.c" 15.427 + ex="false" 15.428 + tool="0" 15.429 + flavor2="0"> 15.430 + </item> 15.431 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/Circuit.h" 15.432 + ex="false" 15.433 + tool="3" 15.434 + flavor2="0"> 15.435 + </item> 15.436 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__PI.h" 15.437 + ex="false" 15.438 + tool="3" 15.439 + flavor2="0"> 15.440 + </item> 15.441 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__SS.h" 15.442 + ex="false" 15.443 + tool="3" 15.444 + flavor2="0"> 15.445 + </item> 15.446 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__WL.h" 15.447 + ex="false" 15.448 + tool="3" 15.449 + flavor2="0"> 15.450 + </item> 15.451 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__int.h" 15.452 + ex="false" 15.453 + tool="3" 15.454 + flavor2="0"> 15.455 + </item> 15.456 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__primitive_data_types.h" 15.457 + ex="false" 15.458 + tool="3" 15.459 + flavor2="0"> 15.460 + </item> 15.461 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__structs__common.h" 15.462 + ex="false" 15.463 + tool="3" 15.464 + flavor2="0"> 15.465 + </item> 15.466 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/Services_offered_by_PR/DEBUG__macros.h" 15.467 + ex="false" 15.468 + tool="3" 15.469 + flavor2="0"> 15.470 + </item> 15.471 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/Services_offered_by_PR/MEAS__Counter_Recording.h" 15.472 + ex="false" 15.473 + tool="3" 15.474 + flavor2="0"> 15.475 + </item> 15.476 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/Services_offered_by_PR/MEAS__macros.h" 15.477 + ex="false" 15.478 + tool="3" 15.479 + flavor2="0"> 15.480 + </item> 15.481 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/Services_offered_by_PR/prdependency.h" 15.482 + ex="false" 15.483 + tool="3" 15.484 + flavor2="0"> 15.485 + </item> 15.486 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/Services_offered_by_PR/probes__wrapper_library.h" 15.487 + ex="false" 15.488 + tool="3" 15.489 + flavor2="0"> 15.490 + </item> 15.491 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/langlets/PRServ__wrapper_library.h" 15.492 + ex="false" 15.493 + tool="3" 15.494 + flavor2="0"> 15.495 + </item> 15.496 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/langlets/prdsl_wrapper_library.h" 15.497 + ex="false" 15.498 + tool="3" 15.499 + flavor2="0"> 15.500 + </item> 15.501 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/langlets/vreo_wrapper_library.h" 15.502 + ex="false" 15.503 + tool="3" 15.504 + flavor2="0"> 15.505 + </item> 15.506 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prdynarray.h" 15.507 + ex="false" 15.508 + tool="3" 15.509 + flavor2="0"> 15.510 + </item> 15.511 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prhash.h" 15.512 + ex="false" 15.513 + tool="3" 15.514 + flavor2="0"> 15.515 + </item> 15.516 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prhistogram.h" 15.517 + ex="false" 15.518 + tool="3" 15.519 + flavor2="0"> 15.520 + </item> 15.521 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prlistofarrays.h" 15.522 + ex="false" 15.523 + tool="3" 15.524 + flavor2="0"> 15.525 + </item> 15.526 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prmalloc.h" 15.527 + ex="false" 15.528 + tool="3" 15.529 + flavor2="0"> 15.530 + </item> 15.531 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prparam.h" 15.532 + ex="false" 15.533 + tool="3" 15.534 + flavor2="0"> 15.535 + </item> 15.536 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prqueue.h" 15.537 + ex="false" 15.538 + tool="3" 15.539 + flavor2="0"> 15.540 + </item> 15.541 </conf> 15.542 - <conf name="Debug_Sequential" type="1"> 15.543 + <conf name="MEAS_ON" type="1"> 15.544 <toolsSet> 15.545 <compilerSet>default</compilerSet> 15.546 <dependencyChecking>true</dependencyChecking> 15.547 @@ -156,21 +631,22 @@ 15.548 <incDir> 15.549 <pElem>../..</pElem> 15.550 </incDir> 15.551 - <preprocessorList> 15.552 - <Elem>DEBUG__SEQUENTIAL_MODE</Elem> 15.553 - <Elem>DEBUG__TURN_ON_DEBUG_PRINT</Elem> 15.554 - </preprocessorList> 15.555 </cTool> 15.556 <linkerTool> 15.557 + <output>../../dist/bin/reo_matrix_mult__meas_on</output> 15.558 <linkerAddLib> 15.559 <pElem>../../PR__lib</pElem> 15.560 </linkerAddLib> 15.561 + <linkerDynSerch> 15.562 + <pElem>../../PR__lib</pElem> 15.563 + </linkerDynSerch> 15.564 <linkerLibItems> 15.565 - <linkerLibLibItem>pr__ml__sharedmem__dku_debug</linkerLibLibItem> 15.566 <linkerLibLibItem>prmalloc</linkerLibLibItem> 15.567 <linkerLibLibItem>prparam</linkerLibLibItem> 15.568 <linkerLibLibItem>prqueue</linkerLibLibItem> 15.569 - <linkerLibLibItem>reo_wrapper_lib_opt1</linkerLibLibItem> 15.570 + <linkerLibStdlibItem>Mathematics</linkerLibStdlibItem> 15.571 + <linkerLibLibItem>pr__ml__sharedmem__meas_on</linkerLibLibItem> 15.572 + <linkerLibLibItem>reo_opt1_ml_lib__meas_on</linkerLibLibItem> 15.573 </linkerLibItems> 15.574 </linkerTool> 15.575 </compileType> 15.576 @@ -187,10 +663,6 @@ 15.577 tool="0" 15.578 flavor2="0"> 15.579 </item> 15.580 - <item path="../Reo__Matrix_Mult/Circuit.c" ex="false" tool="0" flavor2="0"> 15.581 - </item> 15.582 - <item path="../Reo__Matrix_Mult/Circuit.h" ex="false" tool="3" flavor2="0"> 15.583 - </item> 15.584 <item path="../Reo__Matrix_Mult/DivideWork.c" ex="false" tool="0" flavor2="0"> 15.585 </item> 15.586 <item path="../Reo__Matrix_Mult/Producer_and_Consumer.c" 15.587 @@ -207,6 +679,121 @@ 15.588 </item> 15.589 <item path="../main.c" ex="false" tool="0" flavor2="0"> 15.590 </item> 15.591 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/Circuit.c" 15.592 + ex="false" 15.593 + tool="0" 15.594 + flavor2="0"> 15.595 + </item> 15.596 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/Circuit.h" 15.597 + ex="false" 15.598 + tool="3" 15.599 + flavor2="0"> 15.600 + </item> 15.601 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__PI.h" 15.602 + ex="false" 15.603 + tool="3" 15.604 + flavor2="0"> 15.605 + </item> 15.606 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__SS.h" 15.607 + ex="false" 15.608 + tool="3" 15.609 + flavor2="0"> 15.610 + </item> 15.611 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__WL.h" 15.612 + ex="false" 15.613 + tool="3" 15.614 + flavor2="0"> 15.615 + </item> 15.616 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__int.h" 15.617 + ex="false" 15.618 + tool="3" 15.619 + flavor2="0"> 15.620 + </item> 15.621 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__primitive_data_types.h" 15.622 + ex="false" 15.623 + tool="3" 15.624 + flavor2="0"> 15.625 + </item> 15.626 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__structs__common.h" 15.627 + ex="false" 15.628 + tool="3" 15.629 + flavor2="0"> 15.630 + </item> 15.631 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/Services_offered_by_PR/DEBUG__macros.h" 15.632 + ex="false" 15.633 + tool="3" 15.634 + flavor2="0"> 15.635 + </item> 15.636 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/Services_offered_by_PR/MEAS__Counter_Recording.h" 15.637 + ex="false" 15.638 + tool="3" 15.639 + flavor2="0"> 15.640 + </item> 15.641 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/Services_offered_by_PR/MEAS__macros.h" 15.642 + ex="false" 15.643 + tool="3" 15.644 + flavor2="0"> 15.645 + </item> 15.646 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/Services_offered_by_PR/prdependency.h" 15.647 + ex="false" 15.648 + tool="3" 15.649 + flavor2="0"> 15.650 + </item> 15.651 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/Services_offered_by_PR/probes__wrapper_library.h" 15.652 + ex="false" 15.653 + tool="3" 15.654 + flavor2="0"> 15.655 + </item> 15.656 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/langlets/PRServ__wrapper_library.h" 15.657 + ex="false" 15.658 + tool="3" 15.659 + flavor2="0"> 15.660 + </item> 15.661 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/langlets/prdsl_wrapper_library.h" 15.662 + ex="false" 15.663 + tool="3" 15.664 + flavor2="0"> 15.665 + </item> 15.666 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/langlets/vreo_wrapper_library.h" 15.667 + ex="false" 15.668 + tool="3" 15.669 + flavor2="0"> 15.670 + </item> 15.671 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prdynarray.h" 15.672 + ex="false" 15.673 + tool="3" 15.674 + flavor2="0"> 15.675 + </item> 15.676 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prhash.h" 15.677 + ex="false" 15.678 + tool="3" 15.679 + flavor2="0"> 15.680 + </item> 15.681 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prhistogram.h" 15.682 + ex="false" 15.683 + tool="3" 15.684 + flavor2="0"> 15.685 + </item> 15.686 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prlistofarrays.h" 15.687 + ex="false" 15.688 + tool="3" 15.689 + flavor2="0"> 15.690 + </item> 15.691 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prmalloc.h" 15.692 + ex="false" 15.693 + tool="3" 15.694 + flavor2="0"> 15.695 + </item> 15.696 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prparam.h" 15.697 + ex="false" 15.698 + tool="3" 15.699 + flavor2="0"> 15.700 + </item> 15.701 + <item path="/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/prqueue.h" 15.702 + ex="false" 15.703 + tool="3" 15.704 + flavor2="0"> 15.705 + </item> 15.706 </conf> 15.707 </confs> 15.708 </configurationDescriptor>
16.1 --- a/nb__Reo_matrix_mult/nbproject/private/Makefile-variables.mk Wed Feb 19 09:27:10 2014 -0800 16.2 +++ b/nb__Reo_matrix_mult/nbproject/private/Makefile-variables.mk Sat Mar 29 06:02:18 2014 -0700 16.3 @@ -6,3 +6,4 @@ 16.4 # Debug configuration 16.5 # Release configuration 16.6 # Debug_Sequential configuration 16.7 +# MEAS_ON configuration
17.1 --- a/nb__Reo_matrix_mult/nbproject/private/configurations.xml Wed Feb 19 09:27:10 2014 -0800 17.2 +++ b/nb__Reo_matrix_mult/nbproject/private/configurations.xml Sat Mar 29 06:02:18 2014 -0700 17.3 @@ -95,12 +95,54 @@ 17.4 <runcommandpicklistitem>"${OUTPUT_PATH}" 10 config_files/9x9.txt</runcommandpicklistitem> 17.5 <runcommandpicklistitem>"${OUTPUT_PATH}" 10 config_files/Matrix_Mult_config_files/ matrix_mult_config_size_9.txt</runcommandpicklistitem> 17.6 <runcommandpicklistitem>"${OUTPUT_PATH}" 10 ./config_files/Matrix_Mult_config_files/ matrix_mult_config_size_9.txt</runcommandpicklistitem> 17.7 + <runcommandpicklistitem>"${OUTPUT_PATH}" 10 ./config_files/Matrix_Mult_config_files/matrix_mult_config_size_8.txt</runcommandpicklistitem> 17.8 <runcommandpicklistitem>"${OUTPUT_PATH}" 10 ./config_files/Matrix_Mult_config_files/matrix_mult_config_size_9.txt</runcommandpicklistitem> 17.9 - <runcommandpicklistitem>"${OUTPUT_PATH}" 10 ./config_files/Matrix_Mult_config_files/matrix_mult_config_size_8.txt</runcommandpicklistitem> 17.10 <runcommandpicklistitem>"${OUTPUT_PATH}" 10 ./config_files/Matrix_Mult_config_files/matrix_mult_config_size_16.txt</runcommandpicklistitem> 17.11 </runcommandpicklist> 17.12 <runcommand>"${OUTPUT_PATH}" 10 ./config_files/Matrix_Mult_config_files/matrix_mult_config_size_16.txt</runcommand> 17.13 - <rundir>/mnt/hgfs/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/dist</rundir> 17.14 + <rundir>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/dist</rundir> 17.15 + <buildfirst>true</buildfirst> 17.16 + <terminal-type>0</terminal-type> 17.17 + <remove-instrumentation>0</remove-instrumentation> 17.18 + <environment> 17.19 + <variable name="LD_LIBRARY_PATH" value="../PR__lib"/> 17.20 + </environment> 17.21 + </runprofile> 17.22 + </conf> 17.23 + <conf name="MEAS_ON" type="1"> 17.24 + <toolsSet> 17.25 + <developmentServer>localhost</developmentServer> 17.26 + <platform>2</platform> 17.27 + </toolsSet> 17.28 + <dbx_gdbdebugger version="1"> 17.29 + <gdb_pathmaps> 17.30 + </gdb_pathmaps> 17.31 + <gdb_interceptlist> 17.32 + <gdbinterceptoptions gdb_all="false" gdb_unhandled="true" gdb_unexpected="true"/> 17.33 + </gdb_interceptlist> 17.34 + <gdb_options> 17.35 + <DebugOptions> 17.36 + </DebugOptions> 17.37 + </gdb_options> 17.38 + <gdb_buildfirst gdb_buildfirst_overriden="false" gdb_buildfirst_old="false"/> 17.39 + </dbx_gdbdebugger> 17.40 + <nativedebugger version="1"> 17.41 + <engine>gdb</engine> 17.42 + </nativedebugger> 17.43 + <runprofile version="9"> 17.44 + <runcommandpicklist> 17.45 + <runcommandpicklistitem>"${OUTPUT_PATH}"</runcommandpicklistitem> 17.46 + <runcommandpicklistitem>"${OUTPUT_PATH}" 10 9x9.txt</runcommandpicklistitem> 17.47 + <runcommandpicklistitem>"${OUTPUT_PATH}" 10 config_files/9x9.txt</runcommandpicklistitem> 17.48 + <runcommandpicklistitem>"${OUTPUT_PATH}" 10 config_files/Matrix_Mult_config_files/ matrix_mult_config_size_9.txt</runcommandpicklistitem> 17.49 + <runcommandpicklistitem>"${OUTPUT_PATH}" 10 ./config_files/Matrix_Mult_config_files/ matrix_mult_config_size_9.txt</runcommandpicklistitem> 17.50 + <runcommandpicklistitem>"${OUTPUT_PATH}" 10 ./config_files/Matrix_Mult_config_files/matrix_mult_config_size_8.txt</runcommandpicklistitem> 17.51 + <runcommandpicklistitem>"${OUTPUT_PATH}" 10 ./config_files/Matrix_Mult_config_files/matrix_mult_config_size_9.txt</runcommandpicklistitem> 17.52 + <runcommandpicklistitem>"${OUTPUT_PATH}" 10 ./config_files/Matrix_Mult_config_files/matrix_mult_config_size_16.txt</runcommandpicklistitem> 17.53 + <runcommandpicklistitem>"${OUTPUT_PATH}" 10 ./config_files/Matrix_Mult_config_files/matrix_mult_config_size_2048.txt</runcommandpicklistitem> 17.54 + </runcommandpicklist> 17.55 + <runcommand>"${OUTPUT_PATH}" 10 ./config_files/Matrix_Mult_config_files/matrix_mult_config_size_2048.txt</runcommand> 17.56 + <rundir>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/dist</rundir> 17.57 <buildfirst>true</buildfirst> 17.58 <terminal-type>0</terminal-type> 17.59 <remove-instrumentation>0</remove-instrumentation>
18.1 --- a/nb__Reo_matrix_mult/nbproject/private/private.xml Wed Feb 19 09:27:10 2014 -0800 18.2 +++ b/nb__Reo_matrix_mult/nbproject/private/private.xml Sat Mar 29 06:02:18 2014 -0700 18.3 @@ -2,9 +2,32 @@ 18.4 <project-private xmlns="http://www.netbeans.org/ns/project-private/1"> 18.5 <data xmlns="http://www.netbeans.org/ns/make-project-private/1"> 18.6 <activeConfTypeElem>1</activeConfTypeElem> 18.7 - <activeConfIndexElem>2</activeConfIndexElem> 18.8 + <activeConfIndexElem>3</activeConfIndexElem> 18.9 </data> 18.10 + <editor-bookmarks xmlns="http://www.netbeans.org/ns/editor-bookmarks/2" lastBookmarkId="0"/> 18.11 <open-files xmlns="http://www.netbeans.org/ns/projectui-open-files/2"> 18.12 - <group/> 18.13 + <group> 18.14 + <file>file:/home/kshalle/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/main.c</file> 18.15 + <file>file:/home/kshalle/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/SeedVP.c</file> 18.16 + <file>file:/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/Services_offered_by_PR/DEBUG__macros.h</file> 18.17 + <file>file:/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include/PR__WL.h</file> 18.18 + <file>file:/home/kshalle/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/Circuit.h</file> 18.19 + <file>file:/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/PR_defs__turn_on_and_off.h</file> 18.20 + <file>file:/home/kshalle/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Matrix_Mult.h</file> 18.21 + <file>file:/home/kshalle/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/DivideWork.c</file> 18.22 + <file>file:/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/Circuit.c</file> 18.23 + <file>file:/home/kshalle/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/Reo__Matrix_Mult.h</file> 18.24 + <file>file:/home/kshalle/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/Producer_and_Consumer.c</file> 18.25 + </group> 18.26 + <group name="matrix_mult"> 18.27 + <file>file:/home/kshalle/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/DivideWork.c</file> 18.28 + <file>file:/home/kshalle/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/main.c</file> 18.29 + <file>file:/home/kshalle/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Matrix_Mult.h</file> 18.30 + <file>file:/home/kshalle/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/Reo__Matrix_Mult.h</file> 18.31 + <file>file:/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/Circuit.c</file> 18.32 + <file>file:/home/kshalle/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/Producer_and_Consumer.c</file> 18.33 + <file>file:/home/kshalle/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/Circuit.h</file> 18.34 + <file>file:/home/kshalle/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/Application/Reo__Matrix_Mult/SeedVP.c</file> 18.35 + </group> 18.36 </open-files> 18.37 </project-private>
19.1 --- a/nb__Reo_matrix_mult/nbproject/project.xml Wed Feb 19 09:27:10 2014 -0800 19.2 +++ b/nb__Reo_matrix_mult/nbproject/project.xml Sat Mar 29 06:02:18 2014 -0700 19.3 @@ -8,10 +8,14 @@ 19.4 <cpp-extensions/> 19.5 <header-extensions>h</header-extensions> 19.6 <sourceEncoding>UTF-8</sourceEncoding> 19.7 - <make-dep-projects/> 19.8 + <make-dep-projects> 19.9 + <make-dep-project>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/library__proto-runtime/nb__PR__ML__wDKU__lib</make-dep-project> 19.10 + <make-dep-project>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/library__Reo_opt1/nb__reo_opt1_wrapper_lib__as_lib</make-dep-project> 19.11 + </make-dep-projects> 19.12 <sourceRootList> 19.13 <sourceRootElem>../ParamHelper</sourceRootElem> 19.14 <sourceRootElem>../Reo__Matrix_Mult</sourceRootElem> 19.15 + <sourceRootElem>/win/D/2__Work/1__Development/0__Code/PR/PR__ML_lib__sharedMem/Projects/Reo_Opt1__matrix_mult/PR__include</sourceRootElem> 19.16 </sourceRootList> 19.17 <confList> 19.18 <confElem> 19.19 @@ -26,6 +30,10 @@ 19.20 <name>Debug_Sequential</name> 19.21 <type>1</type> 19.22 </confElem> 19.23 + <confElem> 19.24 + <name>MEAS_ON</name> 19.25 + <type>1</type> 19.26 + </confElem> 19.27 </confList> 19.28 <formatting> 19.29 <project-formatting-style>false</project-formatting-style>
