Changeset: 618d4826c2cd for MonetDB URL: https://dev.monetdb.org/hg/MonetDB/rev/618d4826c2cd Modified Files: monetdb5/optimizer/opt_mitosis.c Branch: default Log Message:
Slightly increasing the number of partitions improves the larger scalefactors without affecting too much the smaller ones. diffs (20 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 @@ -179,11 +179,14 @@ OPTmitosisImplementation(Client cntxt, M * i.e., (rowcnt/pieces <= m/threads), * i.e., (pieces => rowcnt/(m/threads)) * (assuming that (m > threads*MINPARTCNT)) */ - pieces = (int) (rowcnt / (m / threads)) + 1; + /* the number of pieces affects SF-100, going beyond 8x increases + * the optimizer costs beyond the execution time + */ + pieces = 4 * ceil((double)rowcnt / m / threads); } else if (rowcnt > MINPARTCNT) { /* exploit parallelism, but ensure minimal partition size to * limit overhead */ - pieces = (int) MIN(rowcnt / MINPARTCNT, (BUN) threads); + pieces = 4 * ceil(MIN((double)rowcnt / MINPARTCNT, threads)); } } _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list