summaryrefslogtreecommitdiff
path: root/benchmark
diff options
context:
space:
mode:
authorKonstantin Käfer <mail@kkaefer.com>2017-07-05 15:38:50 +0200
committerKonstantin Käfer <mail@kkaefer.com>2017-07-11 14:59:04 +0200
commit47a003b7420b4a1585a647fb71590fbb13813dd5 (patch)
treea0bd30002e49af3cc9bb3485a09d499fd23f9255 /benchmark
parent2d36983bbb1131282241bd4d8b5240bf2c86d0ec (diff)
downloadqtlocation-mapboxgl-47a003b7420b4a1585a647fb71590fbb13813dd5.tar.gz
[core] add algorithm for computing masks for raster tiles
Diffstat (limited to 'benchmark')
-rw-r--r--benchmark/parse/tile_mask.benchmark.cpp29
1 files changed, 29 insertions, 0 deletions
diff --git a/benchmark/parse/tile_mask.benchmark.cpp b/benchmark/parse/tile_mask.benchmark.cpp
new file mode 100644
index 0000000000..5d50d05c22
--- /dev/null
+++ b/benchmark/parse/tile_mask.benchmark.cpp
@@ -0,0 +1,29 @@
+#include <benchmark/benchmark.h>
+
+#include <mbgl/algorithm/update_tile_masks.hpp>
+
+using namespace mbgl;
+
+struct MaskedRenderable {
+ UnwrappedTileID id;
+ TileMask mask;
+ bool used = true;
+};
+
+static void TileMaskGeneration(benchmark::State& state) {
+ std::vector<MaskedRenderable> renderables = {
+ MaskedRenderable{ UnwrappedTileID{ 12, 1028, 1456 }, {} },
+ MaskedRenderable{ UnwrappedTileID{ 13, 2056, 2912 }, {} },
+ MaskedRenderable{ UnwrappedTileID{ 13, 2056, 2913 }, {} },
+ MaskedRenderable{ UnwrappedTileID{ 14, 4112, 5824 }, {} },
+ MaskedRenderable{ UnwrappedTileID{ 14, 4112, 5827 }, {} },
+ MaskedRenderable{ UnwrappedTileID{ 14, 4114, 5824 }, {} },
+ MaskedRenderable{ UnwrappedTileID{ 14, 4114, 5825 }, {} },
+ };
+
+ while (state.KeepRunning()) {
+ algorithm::updateTileMasks<MaskedRenderable>({ renderables.begin(), renderables.end() });
+ }
+}
+
+BENCHMARK(TileMaskGeneration);