
Although still unfinished, I can informally share some results from
benchmarking MonetDB as follows (pseudo-bash).
for RELEASE in Nov2019 Jun2020
for CC in gcc clang
for OPT in "-O2" "-O3"
for ARCH in "" "-march=skylake -mtune=skylake" # "" = default,
"skylake"=the architecture I tested on
# compile ...
for WORKLOAD in tpc-h text spinque
for COMPILATION in (those above)
for OPT_PIPE in default_pipe no_mitosis_pipe sequential_pipe
for RUN in cold hot
# test ...
This was on a 16GB 4-core i7 with SSD disk.
As for workloads, tpc-h was sf 10, "text" is a benchmark on string-oriented
functionalities (tokenization, string similarity, etc.), and "spinque"
(still to be expanded) is a small collection of real queries that we run on
Spinque - very long and nested generated SQL queries, rich of aggregations
and string operations, typically on skewed data distributions.
I wanted to write a nice blog about these experiments, but if things stay
as they are it would be a very boring blog.
This is my main finding so far: while the choice of optimization pipeline
can have a big impact on some queries (for some queries mitosis helps a
lot, for others is a real pain),
I have found NO significant difference amongst all the compilation options,
in no workload.
I hope it helps.
Roberto
On Tue, 15 Sep 2020 at 16:32, Sjoerd Mullender
The MonetDB.spec file is part of the source tree, so you can take a look there.
It basically uses the default for CentOS 7. Try: rpm -E %optflags to see what the default flags are on CentOS 7.
On 15/09/2020 15.46, Brian Hood wrote:
Hi Daniel,
I would probably download some source packages like SRPMS or whatever the DEB equivalent is and have a look at the configure options in them.
Regards,
Brian Hood
On Tue, 1 Sep 2020 at 16:28, Daniel Glöckner
mailto:gloeckner.daniel@gmail.com> wrote: Hi,
I'm currently building and testing MonetDB on CentOS7, x86_64.
I was wondering about the recommended compiler version and compiler flags.
So far I'm using gcc 9 and specifically enabled SSE3 extensions (though I did not notice any performance gain).
Here's my cmake command cmake3 -DCMAKE_C_FLAGS="pthread -msse3 -O -Wall" -DCMAKE_INSTALL_PREFIX=../install ../MonetDB
Is there a list of recommended compiler flags?
Kind regards, Daniel _______________________________________________ users-list mailing list users-list@monetdb.org mailto:users-list@monetdb.org https://www.monetdb.org/mailman/listinfo/users-list
_______________________________________________ users-list mailing list users-list@monetdb.org https://www.monetdb.org/mailman/listinfo/users-list
-- Sjoerd Mullender _______________________________________________ users-list mailing list users-list@monetdb.org https://www.monetdb.org/mailman/listinfo/users-list