| 1132 | }; |
| 1133 | |
| 1134 | inline std::vector<char> loadTimingCacheFile(std::string const& inFileName) |
| 1135 | { |
| 1136 | std::unique_ptr<samplesCommon::FileLock> fileLock{new samplesCommon::FileLock(inFileName)}; |
| 1137 | std::ifstream iFile(inFileName, std::ios::in | std::ios::binary); |
| 1138 | if (!iFile) |
| 1139 | { |
| 1140 | sample::gLogWarning << "Could not read timing cache from: " << inFileName |
| 1141 | << ". A new timing cache will be generated and written." << std::endl; |
| 1142 | return std::vector<char>(); |
| 1143 | } |
| 1144 | iFile.seekg(0, std::ifstream::end); |
| 1145 | size_t fsize = iFile.tellg(); |
| 1146 | iFile.seekg(0, std::ifstream::beg); |
| 1147 | std::vector<char> content(fsize); |
| 1148 | iFile.read(content.data(), fsize); |
| 1149 | iFile.close(); |
| 1150 | sample::gLogInfo << "Loaded " << fsize << " bytes of timing cache from " << inFileName << std::endl; |
| 1151 | return content; |
| 1152 | } |
| 1153 | |
| 1154 | inline void saveTimingCacheFile(std::string const& outFileName, nvinfer1::IHostMemory const* blob) |
| 1155 | { |
no test coverage detected