No there is no postgres query for each chunk. The chunk maps are completely independent and per-instance. Postgres stores only metadata like array schema, instance names. So when you start the query, postgres takes some hits in the beginning but after that there is no per-chunk postgres business.
RelWithDebInfo has to do with debug symbols. I think you should still be able to turn on DEBUG logging even if it’s built in Release mode. Have you tried? It’s controlled in /opt/scidb/…/share/scidb/log4cxx.properties and the log file is written independently by each instance.
In our case of course scaling depends on the op performed. Things like sort / redimension and some joins have to share data and move data around - so they’re not going to be perfect. For things like sums and compute-parallel tasks you can get pretty good. See example here: https://github.com/paradigm4/elastic_resource_groups
Of course - if one instance gets stuck with more data than others, he will slow the whole query down. Also if the task is sub-second, then the little setup/teardown handshakes start to dominate. In essence - because of Amdahl’s law you rarely see just a straight line - eventually the line flattens but the shape depends on the task, data distribution and so on.
Another good test is to double the cores AND double the data at the same time - expecting the curve to stay flat. That is another useful measurement that is less sensitive to overhead.