summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLloyd Sheng <i@lloydsheng.com>2018-06-15 16:16:35 +0800
committerLloyd Sheng <i@lloydsheng.com>2018-06-15 16:16:35 +0800
commitbc02a43c67c5365feac95ff551cd1a250754d707 (patch)
treee4a03f55c969f0d58b911abeea6335121abb293a
parent144c167274f629523d265b9a54326ff544133413 (diff)
downloadqtlocation-mapboxgl-bc02a43c67c5365feac95ff551cd1a250754d707.tar.gz
Tile timing
-rw-r--r--platform/default/default_file_source.cpp17
-rw-r--r--src/mbgl/tile/geometry_tile_worker.cpp17
2 files changed, 34 insertions, 0 deletions
diff --git a/platform/default/default_file_source.cpp b/platform/default/default_file_source.cpp
index cb602995a4..125d4df370 100644
--- a/platform/default/default_file_source.cpp
+++ b/platform/default/default_file_source.cpp
@@ -11,8 +11,10 @@
#include <mbgl/util/url.hpp>
#include <mbgl/util/thread.hpp>
#include <mbgl/util/work_request.hpp>
+#include <mbgl/util/logging.hpp>
#include <cassert>
+#include <chrono>
namespace mbgl {
@@ -151,8 +153,23 @@ public:
// Get from the online file source
if (resource.hasLoadingMethod(Resource::LoadingMethod::Network)) {
+#if MBGL_TILE_TIMING
+ using namespace std::chrono;
+ milliseconds requestBeginAt = duration_cast< milliseconds >(system_clock::now().time_since_epoch());
+#endif
tasks[req] = onlineFileSource.request(resource, [=] (Response onlineResponse) mutable {
this->offlineDatabase->put(resource, onlineResponse);
+#if MBGL_TILE_TIMING
+ milliseconds requestEndAt = duration_cast< milliseconds >(system_clock::now().time_since_epoch());
+ if (resource.kind == Resource::Kind::Tile) {
+ Log::Debug(Event::HttpRequest,
+ "Tile:%s, Requesting time:%llims, Size:%u",
+ resource.url.c_str(),
+ requestEndAt - requestBeginAt,
+ onlineResponse.data->size()
+ );
+ }
+#endif
callback(onlineResponse);
});
}
diff --git a/src/mbgl/tile/geometry_tile_worker.cpp b/src/mbgl/tile/geometry_tile_worker.cpp
index ca20c4b8ab..ee55b6a162 100644
--- a/src/mbgl/tile/geometry_tile_worker.cpp
+++ b/src/mbgl/tile/geometry_tile_worker.cpp
@@ -12,8 +12,10 @@
#include <mbgl/util/constants.hpp>
#include <mbgl/util/string.hpp>
#include <mbgl/util/exception.hpp>
+#include <mbgl/util/logging.hpp>
#include <unordered_set>
+#include <chrono>
namespace mbgl {
@@ -319,6 +321,10 @@ void GeometryTileWorker::parse() {
return;
}
+#if MBGL_TILE_TIMING
+ using namespace std::chrono;
+ milliseconds parseBeginAt = duration_cast< milliseconds >(system_clock::now().time_since_epoch());
+#endif
std::vector<std::string> symbolOrder;
for (auto it = layers->rbegin(); it != layers->rend(); it++) {
if ((*it)->type == LayerType::Symbol) {
@@ -404,6 +410,17 @@ void GeometryTileWorker::parse() {
requestNewImages(imageDependencies);
performSymbolLayout();
+#if MBGL_TILE_TIMING
+ milliseconds parseEndAt = duration_cast< milliseconds >(system_clock::now().time_since_epoch());
+ Log::Debug(Event::HttpRequest,
+ "Souce ID:%s, Canonical:%d/%d/%d, Requesting time:%llims",
+ sourceID.c_str(),
+ id.canonical.z,
+ id.canonical.x,
+ id.canonical.y,
+ parseEndAt - parseBeginAt
+ );
+#endif
}
bool GeometryTileWorker::hasPendingSymbolDependencies() const {