diff options
author | Jim Flynn <jim.flynn@arm.com> | 2019-12-13 14:43:24 +0000 |
---|---|---|
committer | TeresaARM <teresa.charlinreyes@arm.com> | 2020-01-24 14:49:52 +0000 |
commit | 829ad30a4f13bc0b9cb32bab5a4efeeeab541f76 (patch) | |
tree | 21fcbeca2f1f94c6a82863ae52aa8aa536f53106 /Utils.hpp | |
parent | 1bde8e31935ac375fd0aaa0dfddb0f7851c16087 (diff) | |
download | android-nn-driver-829ad30a4f13bc0b9cb32bab5a4efeeeab541f76.tar.gz |
IVGCVSW-4270 Change .dot file name to start with netId
* .dot file will start with the same number as the associated input
and output tensor dump files
Change-Id: Ic64539854c2b8c34a7034fa18a142b2dfe67df7d
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
IVGCVSW-4271 Add getSupportedOperations marker file
* Also fix segfault in previous graph dump code
Change-Id: I01915f47ae17d89ad3595430d073a17b1a1fda58
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
Diffstat (limited to 'Utils.hpp')
-rw-r--r-- | Utils.hpp | 43 |
1 files changed, 5 insertions, 38 deletions
@@ -104,47 +104,14 @@ void DumpJsonProfilingIfRequired(bool gpuProfilingEnabled, armnn::NetworkId networkId, const armnn::IProfiler* profiler); -template <typename HalModel> -void ExportNetworkGraphToDotFile(const armnn::IOptimizedNetwork& optimizedNetwork, - const std::string& dumpDir, - const HalModel& model) -{ - // The dump directory must exist in advance. - if (dumpDir.empty()) - { - return; - } - - // Get the memory address of the model and convert it to a hex string (of at least a '0' character). - size_t modelAddress = uintptr_t(&model); - std::stringstream ss; - ss << std::uppercase << std::hex << std::setfill('0') << std::setw(1) << modelAddress; - std::string modelAddressHexString = ss.str(); - - // Set the name of the output .dot file. - const std::string fileName = boost::str(boost::format("%1%/networkgraph_%2%.dot") - % dumpDir - % modelAddressHexString); - - ALOGV("Exporting the optimized network graph to file: %s", fileName.c_str()); +std::string ExportNetworkGraphToDotFile(const armnn::IOptimizedNetwork& optimizedNetwork, + const std::string& dumpDir); - // Write the network graph to a dot file. - std::ofstream fileStream; - fileStream.open(fileName, std::ofstream::out | std::ofstream::trunc); - - if (!fileStream.good()) - { - ALOGW("Could not open file %s for writing", fileName.c_str()); - return; - } - - if (optimizedNetwork.SerializeToDot(fileStream) != armnn::Status::Success) - { - ALOGW("An error occurred when writing to file %s", fileName.c_str()); - } -} +void RenameGraphDotFile(const std::string& oldName, const std::string& dumpDir, const armnn::NetworkId networkId); /// Checks if a tensor info represents a dynamic tensor bool IsDynamicTensor(const armnn::TensorInfo& outputInfo); +std::string GetFileTimestamp(); + } // namespace armnn_driver |