Design and evaluation of main memory hash join algorithms for multi-core CPUs | Synapse