diff --git a/common/include/util.hpp b/common/include/util.hpp index 1ab894349364cbe1dc29bcff089937c2d0ee885f..c031dee88a8bb28b67d75948ab09d4d0f65ceb1d 100644 --- a/common/include/util.hpp +++ b/common/include/util.hpp @@ -54,6 +54,8 @@ bool isSeparator(utf8char c); bool isIllegal(utf8char c); +std::string getTime(); + template <typename T> bool isEmpty(const std::vector<T> & s) { diff --git a/common/src/util.cpp b/common/src/util.cpp index 23f5a6e0af99c9066d90518a08bb5773e225a82f..e5b501609c14ae34ff3dacab6487db2a3104163a 100644 --- a/common/src/util.cpp +++ b/common/src/util.cpp @@ -186,3 +186,14 @@ std::vector<std::filesystem::path> util::findFilesByExtension(std::filesystem::p return files; } +std::string util::getTime() +{ + std::time_t rawtime; + char buffer[80]; + + std::time(&rawtime); + + std::strftime(buffer, sizeof(buffer), "%H:%M:%S", std::localtime(&rawtime)); + return std::string(buffer); +} + diff --git a/trainer/src/MacaonTrain.cpp b/trainer/src/MacaonTrain.cpp index 3df1365266758b5044b5b65db86221a807b05dbf..5f5db36efb2de7ce50e77dc29121b85a6c0a032d 100644 --- a/trainer/src/MacaonTrain.cpp +++ b/trainer/src/MacaonTrain.cpp @@ -92,7 +92,7 @@ int MacaonTrain::main() bool printAdvancement = !debug && variables.count("silent") == 0 ? true : false; bool computeDevScore = variables.count("devScore") == 0 ? false : true; - fmt::print(stderr, "Training using device : {}\n", NeuralNetworkImpl::device.str()); + fmt::print(stderr, "[{}] Training using device : {}\n", util::getTime(), NeuralNetworkImpl::device.str()); try { @@ -159,10 +159,9 @@ int MacaonTrain::main() bestDevScore = devScoreMean; machine.save(); } - if (debug) - fmt::print(stderr, "Epoch {:^5} loss = {:6.1f} dev = {} {:5}\n", fmt::format("{}/{}", i+1, nbEpoch), loss, devScoresStr, saved ? "SAVED" : ""); - else - fmt::print(stderr, "\r{:80}\rEpoch {:^5} loss = {:6.1f} dev = {} {:5}\n", " ", fmt::format("{}/{}", i+1, nbEpoch), loss, devScoresStr, saved ? "SAVED" : ""); + if (!debug) + fmt::print(stderr, "\r{:80}\r", ""); + fmt::print(stderr, "[{}] Epoch {:^5} loss = {:6.1f} dev = {} {:5}\n", util::getTime(), fmt::format("{}/{}", i+1, nbEpoch), loss, devScoresStr, saved ? "SAVED" : ""); } }