On Fri, Nov 25, 2016 at 6:55 PM, Dilip Kumar <dilipbalaut@gmail.com> wrote: > I have changed the design to directly make it based on DSA instead of using DHT. > In new version we no longer use DHT. Instead, of that I have made some > change in simplehash[1], so that it can allow external allocator. In > tidbitmap.c, I have register the allocator to simplehash and those > allocator functions will allocate memory directly from DSA. > > simplehash is always using one single memory (during expand it copy > from old memory to new memory). Which makes remaining processing very > simple for us. > > In tbm_begin_iterate, we need not to scan complete hash table instead > of that we can just process dsa memory and convert into page array and > chunk array. > > I have tested the performance in my local machine and I observed that > it's slightly better than older > DHT based version (complete performance number will be published soon). > > Dependency on other patches: > 1. dsa_area (dsa-v7.patch) > https://www.postgresql.org/message-id/CAEepm%3D024p-MeAsDmG%3DR3%2BtR4EGhuGJs_%2BrjFKF0eRoSTmMJnA%40mail.gmail.com > > 2. Creating a DSA area to provide work space for parallel execution > (dsa-area-for-executor-v3.patch) > https://www.postgresql.org/message-id/CAEepm%3D0HmRefi1%2BxDJ99Gj5APHr8Qr05KZtAxrMj8b%2Bay3o6sA%40mail.gmail.com > > patch details > 1. hash_support_alloc_free_v1.patch [1]. > 2. parallel-bitmap-heap-scan-v3.patch
I just realised that, my latest patch I just sent to Andres, instead of replying to all. Forwarding the same mail to Hackers.
Performance reading with new patch.. TPCH-scale factor 10. work_mem 20MB, Power 4 socket machine