mirror of
https://github.com/PaddlePaddle/FastDeploy.git
synced 2025-10-06 09:07:10 +08:00
Support disable logging information (#254)
* Support disable logging information * Support disable logging information
This commit is contained in:
@@ -166,7 +166,7 @@ std::map<std::string, float> FastDeployModel::PrintStatisInfoOfRuntime() {
|
|||||||
std::map<std::string, float> statis_info_of_runtime_dict;
|
std::map<std::string, float> statis_info_of_runtime_dict;
|
||||||
|
|
||||||
if (time_of_runtime_.size() < 10) {
|
if (time_of_runtime_.size() < 10) {
|
||||||
FDWARNING << "PrintStatisInfoOfRuntime require the runtime ran 10 times at "
|
std::cout << "[FastDeploy] [WARNING] PrintStatisInfoOfRuntime require the runtime ran 10 times at "
|
||||||
"least, but now you only ran "
|
"least, but now you only ran "
|
||||||
<< time_of_runtime_.size() << " times." << std::endl;
|
<< time_of_runtime_.size() << " times." << std::endl;
|
||||||
}
|
}
|
||||||
|
@@ -75,7 +75,7 @@ class FASTDEPLOY_DECL FastDeployModel {
|
|||||||
#define TIMERECORD_END(id, prefix) \
|
#define TIMERECORD_END(id, prefix) \
|
||||||
if (DebugEnabled()) { \
|
if (DebugEnabled()) { \
|
||||||
tc_##id.End(); \
|
tc_##id.End(); \
|
||||||
FDLogger() << __FILE__ << "(" << __LINE__ << "):" << __FUNCTION__ << " " \
|
FDINFO << __FILE__ << "(" << __LINE__ << "):" << __FUNCTION__ << " " \
|
||||||
<< prefix << " duration = " << tc_##id.Duration() << "s." \
|
<< prefix << " duration = " << tc_##id.Duration() << "s." \
|
||||||
<< std::endl; \
|
<< std::endl; \
|
||||||
}
|
}
|
||||||
|
@@ -114,11 +114,11 @@ bool CheckModelFormat(const std::string& model_file,
|
|||||||
Frontend GuessModelFormat(const std::string& model_file) {
|
Frontend GuessModelFormat(const std::string& model_file) {
|
||||||
if (model_file.size() > 8 &&
|
if (model_file.size() > 8 &&
|
||||||
model_file.substr(model_file.size() - 8, 8) == ".pdmodel") {
|
model_file.substr(model_file.size() - 8, 8) == ".pdmodel") {
|
||||||
FDLogger() << "Model Format: PaddlePaddle." << std::endl;
|
FDINFO << "Model Format: PaddlePaddle." << std::endl;
|
||||||
return Frontend::PADDLE;
|
return Frontend::PADDLE;
|
||||||
} else if (model_file.size() > 5 &&
|
} else if (model_file.size() > 5 &&
|
||||||
model_file.substr(model_file.size() - 5, 5) == ".onnx") {
|
model_file.substr(model_file.size() - 5, 5) == ".onnx") {
|
||||||
FDLogger() << "Model Format: ONNX." << std::endl;
|
FDINFO << "Model Format: ONNX." << std::endl;
|
||||||
return Frontend::ONNX;
|
return Frontend::ONNX;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -137,6 +137,10 @@ PYBIND11_MODULE(@PY_LIBRARY_NAME@, m) {
|
|||||||
"Make programer easier to deploy deeplearning model, save time to save "
|
"Make programer easier to deploy deeplearning model, save time to save "
|
||||||
"the world!";
|
"the world!";
|
||||||
|
|
||||||
|
pybind11::class_<FDLogger>(m, "FDLogger")
|
||||||
|
.def_readwrite_static("disable_info", &FDLogger::disable_info)
|
||||||
|
.def_readwrite_static("disable_warning", &FDLogger::disable_warning);
|
||||||
|
|
||||||
BindRuntime(m);
|
BindRuntime(m);
|
||||||
BindFDModel(m);
|
BindFDModel(m);
|
||||||
#ifdef ENABLE_VISION
|
#ifdef ENABLE_VISION
|
||||||
|
@@ -38,7 +38,7 @@ class FASTDEPLOY_DECL TimeCounter {
|
|||||||
if (!print_out) {
|
if (!print_out) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
FDLogger() << prefix << " duration = " << Duration() << "s." << std::endl;
|
std::cout << prefix << " duration = " << Duration() << "s." << std::endl;
|
||||||
}
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
@@ -16,14 +16,17 @@
|
|||||||
|
|
||||||
namespace fastdeploy {
|
namespace fastdeploy {
|
||||||
|
|
||||||
FDLogger::FDLogger(bool verbose, const std::string& prefix) {
|
bool FDLogger::disable_info = false;
|
||||||
verbose_ = verbose;
|
bool FDLogger::disable_warning = false;
|
||||||
|
|
||||||
|
FDLogger::FDLogger(int level, const std::string& prefix) {
|
||||||
line_ = "";
|
line_ = "";
|
||||||
|
level_ = level;
|
||||||
prefix_ = prefix;
|
prefix_ = prefix;
|
||||||
}
|
}
|
||||||
|
|
||||||
FDLogger& FDLogger::operator<<(std::ostream& (*os)(std::ostream&)) {
|
FDLogger& FDLogger::operator<<(std::ostream& (*os)(std::ostream&)) {
|
||||||
if (!verbose_) {
|
if (!verbose()) {
|
||||||
return *this;
|
return *this;
|
||||||
}
|
}
|
||||||
std::cout << prefix_ << " " << line_ << std::endl;
|
std::cout << prefix_ << " " << line_ << std::endl;
|
||||||
|
@@ -37,16 +37,31 @@ namespace fastdeploy {
|
|||||||
|
|
||||||
class FASTDEPLOY_DECL FDLogger {
|
class FASTDEPLOY_DECL FDLogger {
|
||||||
public:
|
public:
|
||||||
|
static bool disable_info;
|
||||||
|
static bool disable_warning;
|
||||||
FDLogger() {
|
FDLogger() {
|
||||||
line_ = "";
|
line_ = "";
|
||||||
prefix_ = "[FastDeploy]";
|
prefix_ = "[FastDeploy]";
|
||||||
verbose_ = true;
|
level_ = 0;
|
||||||
|
}
|
||||||
|
// 0: INFO
|
||||||
|
// 1: WARNING
|
||||||
|
// 2: ERROR
|
||||||
|
explicit FDLogger(int level = 0, const std::string& prefix = "[FastDeploy]");
|
||||||
|
|
||||||
|
bool verbose() {
|
||||||
|
if (disable_info && level_ == 0) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (disable_warning && level_ == 1) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
explicit FDLogger(bool verbose, const std::string& prefix = "[FastDeploy]");
|
|
||||||
|
|
||||||
template <typename T>
|
template <typename T>
|
||||||
FDLogger& operator<<(const T& val) {
|
FDLogger& operator<<(const T& val) {
|
||||||
if (!verbose_) {
|
if (!verbose()) {
|
||||||
return *this;
|
return *this;
|
||||||
}
|
}
|
||||||
std::stringstream ss;
|
std::stringstream ss;
|
||||||
@@ -56,7 +71,7 @@ class FASTDEPLOY_DECL FDLogger {
|
|||||||
}
|
}
|
||||||
FDLogger& operator<<(std::ostream& (*os)(std::ostream&));
|
FDLogger& operator<<(std::ostream& (*os)(std::ostream&));
|
||||||
~FDLogger() {
|
~FDLogger() {
|
||||||
if (!verbose_ && line_ != "") {
|
if (!verbose() && line_ != "") {
|
||||||
std::cout << line_ << std::endl;
|
std::cout << line_ << std::endl;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -64,7 +79,7 @@ class FASTDEPLOY_DECL FDLogger {
|
|||||||
private:
|
private:
|
||||||
std::string line_;
|
std::string line_;
|
||||||
std::string prefix_;
|
std::string prefix_;
|
||||||
bool verbose_ = true;
|
int level_ = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
FASTDEPLOY_DECL bool ReadBinaryFromFile(const std::string& file,
|
FASTDEPLOY_DECL bool ReadBinaryFromFile(const std::string& file,
|
||||||
@@ -75,15 +90,15 @@ FASTDEPLOY_DECL bool ReadBinaryFromFile(const std::string& file,
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define FDERROR \
|
#define FDERROR \
|
||||||
FDLogger(true, "[ERROR]") << __REL_FILE__ << "(" << __LINE__ \
|
FDLogger(2, "[ERROR]") << __REL_FILE__ << "(" << __LINE__ \
|
||||||
<< ")::" << __FUNCTION__ << "\t"
|
<< ")::" << __FUNCTION__ << "\t"
|
||||||
|
|
||||||
#define FDWARNING \
|
#define FDWARNING \
|
||||||
FDLogger(true, "[WARNING]") << __REL_FILE__ << "(" << __LINE__ \
|
FDLogger(1, "[WARNING]") << __REL_FILE__ << "(" << __LINE__ \
|
||||||
<< ")::" << __FUNCTION__ << "\t"
|
<< ")::" << __FUNCTION__ << "\t"
|
||||||
|
|
||||||
#define FDINFO \
|
#define FDINFO \
|
||||||
FDLogger(true, "[INFO]") << __REL_FILE__ << "(" << __LINE__ \
|
FDLogger(0, "[INFO]") << __REL_FILE__ << "(" << __LINE__ \
|
||||||
<< ")::" << __FUNCTION__ << "\t"
|
<< ")::" << __FUNCTION__ << "\t"
|
||||||
|
|
||||||
#define FDASSERT(condition, format, ...) \
|
#define FDASSERT(condition, format, ...) \
|
||||||
|
@@ -17,7 +17,7 @@ import os
|
|||||||
import sys
|
import sys
|
||||||
|
|
||||||
from .c_lib_wrap import (Frontend, Backend, FDDataType, TensorInfo, Device,
|
from .c_lib_wrap import (Frontend, Backend, FDDataType, TensorInfo, Device,
|
||||||
is_built_with_gpu, is_built_with_ort,
|
FDLogger, is_built_with_gpu, is_built_with_ort,
|
||||||
is_built_with_paddle, is_built_with_trt,
|
is_built_with_paddle, is_built_with_trt,
|
||||||
get_default_cuda_directory)
|
get_default_cuda_directory)
|
||||||
from .runtime import Runtime, RuntimeOption
|
from .runtime import Runtime, RuntimeOption
|
||||||
|
Reference in New Issue
Block a user