diff options
author | Ryan OShea <ryan.oshea3@arm.com> | 2022-03-08 01:45:36 +0000 |
---|---|---|
committer | TeresaARM <teresa.charlinreyes@arm.com> | 2022-03-08 10:06:07 +0000 |
commit | c7756cfbd8995962aae3c3a737f1fe918d400940 (patch) | |
tree | 6028cd84e0d54f20c1c592c1206d31a3231f3920 /1.2 | |
parent | f45e3abe36617fc43b0a45b630811305726b550f (diff) | |
download | android-nn-driver-c7756cfbd8995962aae3c3a737f1fe918d400940.tar.gz |
IVGCVSW-6649 Add Timepoints to Android NN Driver
* Added timepoints to ArmnnDriverImpl across all versions
* Added ALOGV message to display time taken for prepareModel function
* Added ALOGV message to display time taken for prepareModelFromCache function
Signed-off-by: Ryan OShea <ryan.oshea3@arm.com>
Change-Id: I07f341099e81a0da45db0e8f575ba3c26631e024
Diffstat (limited to '1.2')
-rw-r--r-- | 1.2/ArmnnDriverImpl.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/1.2/ArmnnDriverImpl.cpp b/1.2/ArmnnDriverImpl.cpp index 1c31384a..563c88e0 100644 --- a/1.2/ArmnnDriverImpl.cpp +++ b/1.2/ArmnnDriverImpl.cpp @@ -12,6 +12,7 @@ #include <log/log.h> #include <sys/stat.h> +#include <chrono> namespace { @@ -101,6 +102,8 @@ Return<V1_0::ErrorStatus> ArmnnDriverImpl::prepareArmnnModel_1_2( { ALOGV("ArmnnDriverImpl::prepareArmnnModel_1_2()"); + std::chrono::time_point<std::chrono::system_clock> prepareModelTimepoint = std::chrono::system_clock::now(); + if (cb.get() == nullptr) { ALOGW("ArmnnDriverImpl::prepareModel: Invalid callback passed to prepareModel"); @@ -372,6 +375,10 @@ Return<V1_0::ErrorStatus> ArmnnDriverImpl::prepareArmnnModel_1_2( } NotifyCallbackAndCheck(cb, V1_0::ErrorStatus::NONE, preparedModel.release()); + + ALOGV("ArmnnDriverImpl::prepareModel cache timing = %lld µs", std::chrono::duration_cast<std::chrono::microseconds> + (std::chrono::system_clock::now() - prepareModelTimepoint).count()); + return V1_0::ErrorStatus::NONE; } @@ -385,6 +392,7 @@ Return<V1_0::ErrorStatus> ArmnnDriverImpl::prepareModelFromCache( bool float32ToFloat16) { ALOGV("ArmnnDriverImpl::prepareModelFromCache()"); + std::chrono::time_point<std::chrono::system_clock> modelFromCacheTimepoint = std::chrono::system_clock::now(); if (cb.get() == nullptr) { @@ -637,6 +645,11 @@ Return<V1_0::ErrorStatus> ArmnnDriverImpl::prepareModelFromCache( true)); NotifyCallbackAndCheck(cb, V1_0::ErrorStatus::NONE, preparedModel.release()); + + ALOGV("ArmnnDriverImpl::prepareModelFromCache cache timing = %lld µs", + std::chrono::duration_cast<std::chrono::microseconds> + (std::chrono::system_clock::now() - modelFromCacheTimepoint).count()); + return V1_0::ErrorStatus::NONE; } |