You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
5)**Use a different data converter**. The default converter of the PH-Tree results in a reasonably fast index.
450
451
Its biggest advantage is that it provides lossless conversion from floating point coordinates to PH-Tree coordinates
451
452
(integers) and back to floating point coordinates.
452
-
* The `ConverterMultiply` is a lossy converter but it tends to give 10% or more better performance. This is not caused
453
+
* The `ConverterMultiply` is a lossy converter but it tends to improve performance by 10% or more. This is not caused
453
454
by faster operation in the converter itself but by a more compact tree shape. The example shows how to use a converter
454
455
that multiplies coordinates by 100'000, thus preserving roughly 5 fractional digits:
455
456
@@ -460,8 +461,8 @@ Its biggest advantage is that it provides lossless conversion from floating poin
460
461
can often be adapted to be accepted directly by the PH-Tree without conversion. This requires implementing a
461
462
custom converter as described in the section about [Custom Key Types](#custom-key-types).
462
463
463
-
7) Advanced: **Adapt internal Node represenation**. Depending on the dimensionality `DIM`, the PH-Tree uses internally in
464
-
`Nodes` different container types to hold entries. By default it uses an array for `DIM<=3`, a vector
464
+
7) Advanced: **Adapt internal Node representation**. Depending on the dimensionality `DIM`, the PH-Tree uses internally in
465
+
`Nodes` different container types to hold entries. By default, it uses an array for `DIM<=3`, a vector
465
466
for `DIM<=8` and an ordered map for `DIM>8`. Adapting these thresholds can have strong effects on performance as well as
466
467
memory usage.
467
468
One example: Changing the threshold to use vector for `DIM==3` reduced performance of the `update_d` benchmark by 40%-50% but
@@ -484,7 +485,7 @@ This section will guide you through the initial build system and IDE you need to
484
485
485
486
### Build system & dependencies
486
487
487
-
PH-Tree can be built with *cmake 3.14* or [Bazel](https://bazel.build) as build system. All of the code is written in C++ targeting the C++17 standard.
488
+
PH-Tree can be built with *cmake 3.14* or [Bazel](https://bazel.build) as build system. All code is written in C++ targeting the C++17 standard.
488
489
The code has been verified to compile with Clang 9 on Linux and Visual Studio 2019 on Windows.
489
490
490
491
#### Ubuntu Linux
@@ -545,7 +546,7 @@ cmake --build .
545
546
546
547
### Theory
547
548
548
-
The PH-Tree is discussed in the follwoing publications and reports:
549
+
The PH-Tree is discussed in the following publications and reports:
549
550
550
551
- T. Zaeschke, C. Zimmerli, M.C. Norrie:
551
552
"The PH-Tree -- A Space-Efficient Storage Structure and Multi-Dimensional Index", (SIGMOD 2014)
0 commit comments