From 53032e556a4479d468b4cec986956abc7cd8620d Mon Sep 17 00:00:00 2001 From: Siarhei Fedartsou Date: Tue, 9 Jul 2024 22:53:24 +0200 Subject: [PATCH] wip --- include/contractor/contractor_heap.hpp | 3 ++- include/customizer/cell_customizer.hpp | 2 +- include/util/query_heap.hpp | 13 ++++++++++--- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/include/contractor/contractor_heap.hpp b/include/contractor/contractor_heap.hpp index fc581f3b0..77a0a85af 100644 --- a/include/contractor/contractor_heap.hpp +++ b/include/contractor/contractor_heap.hpp @@ -20,7 +20,8 @@ using ContractorHeap = util::QueryHeap>; + util::XORFastHashStorage, + false>; } // namespace osrm::contractor diff --git a/include/customizer/cell_customizer.hpp b/include/customizer/cell_customizer.hpp index 00d03163a..1e2072d7d 100644 --- a/include/customizer/cell_customizer.hpp +++ b/include/customizer/cell_customizer.hpp @@ -25,7 +25,7 @@ class CellCustomizer public: using Heap = - util::QueryHeap>; + util::QueryHeap, false>; using HeapPtr = tbb::enumerable_thread_specific; CellCustomizer(const partitioner::MultiLevelPartition &partition) : partition(partition) {} diff --git a/include/util/query_heap.hpp b/include/util/query_heap.hpp index 83814a470..77584c73a 100644 --- a/include/util/query_heap.hpp +++ b/include/util/query_heap.hpp @@ -124,7 +124,7 @@ template class UnorderedMapStorage private: template using UnorderedMap = std:: - unordered_map, std::equal_to, PoolAllocator>>; + unordered_map, std::equal_to, PoolAllocator>*/>; UnorderedMap nodes; }; @@ -241,7 +241,8 @@ template > + typename IndexStorage = ArrayStorage, + bool ThreadLocal = true> class QueryHeap { private: @@ -259,11 +260,17 @@ class QueryHeap return weight > other.weight; } }; + + using AllocatorType = typename std::conditional, + std::allocator>::type; + + using HeapContainer = boost::heap::d_ary_heap, boost::heap::mutable_, boost::heap::compare>, - boost::heap::allocator>>; + boost::heap::allocator>; using HeapHandle = typename HeapContainer::handle_type; public: