Changeset: f1bc4422e342 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=f1bc4422e342
Modified Files:
monetdb5/optimizer/opt_mitosis.c
Branch: default
Log Message:
Reduce work unit as more clients join
It turns out that reducing the piece sizes with increasing
number of concurrent clients consistently improves throughput.
diffs (21 lines):
diff --git a/monetdb5/optimizer/opt_mitosis.c b/monetdb5/optimizer/opt_mitosis.c
--- a/monetdb5/optimizer/opt_mitosis.c
+++ b/monetdb5/optimizer/opt_mitosis.c
@@ -117,7 +117,7 @@ OPTmitosisImplementation(Client cntxt, M
* Experience shows that the pieces should not be too small.
* If we should limit to |threads| is still an open issue.
*/
- r = (wrd) (monet_memory / argsize);
+ r = (wrd) (monet_memory / argsize/ MCactiveClients());
/* if data exceeds memory size,
* i.e., (rowcnt*argsize > monet_memory),
* i.e., (rowcnt > monet_memory/argsize = r) */
@@ -128,7 +128,7 @@ OPTmitosisImplementation(Client cntxt, M
* i.e., (rowcnt/pieces <= r/threads),
* i.e., (pieces => rowcnt/(r/threads))
* (assuming that (r > threads*MINPARTCNT)) */
- pieces = (int) (rowcnt / (r / threads)) + 1;
+ pieces = (int) (rowcnt / (r / threads/ MCactiveClients())) + 1;
} else if (rowcnt > MINPARTCNT) {
/* exploit parallelism, but ensure minimal partition size to
* limit overhead */
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list