Switched from QMap to std::unordered_map in the calculation of the
column statistics. A lot of time was spent in the calculation of the frequencies of values. For this QMap was used and the sorting in this container is expensive. The performance of unordered_map is much better. For 10 Mil random doubles the calculation of the statistics went down from 15.5s to 8.5s on i7-8700. The next step would be to move out the calculation of the frequencies and the sorting of the data as well as all dependent calculations to new threads.
Showing with 18 additions and 21 deletions