提交 e1e11b84 编写于 作者: B buxue

fix codedex

上级 4e85ca68
......@@ -584,7 +584,7 @@ void ExecutorPy::ProcessVmArg(const py::tuple &args, const std::string &phase, V
if (ms_context->backend_policy() == kMsConvert && py::isinstance<py::array>(arg)) {
MS_LOG(EXCEPTION) << "Args[" << i << "] is numpy array, not tensor";
}
(*arg_list).push_back(arg);
arg_list->push_back(arg);
}
ResourcePtr res = GetResource(phase);
......
......@@ -462,7 +462,7 @@ void ProcessGeArg(const std::map<std::string, ExecutorInfoPtr> &info, const py::
MS_LOG(EXCEPTION) << "Args convert error";
}
if (converted->isa<tensor::Tensor>()) {
(*inputs).push_back(converted->cast<tensor::TensorPtr>());
inputs->push_back(converted->cast<tensor::TensorPtr>());
} else {
MS_LOG(EXCEPTION) << "Args " << converted->ToString() << " is not tensor";
}
......
......@@ -28,6 +28,7 @@ class ContractError : public std::logic_error {
public:
explicit ContractError(const std::string &msg) : std::logic_error(msg) {}
explicit ContractError(const char *msg) : std::logic_error(msg) {}
~ContractError() override = default;
};
struct Signatory {
......@@ -60,6 +61,7 @@ class Ensures : public EnsuresAccess<T, R> {
}
template <class O, typename = std::enable_if_t<std::is_convertible_v<O, T>>>
Ensures(const Ensures<O, R> &other) : value_(other.get()) {}
~Ensures() = default;
T get() const { return value_; }
T &get() { return value_; }
......
......@@ -38,26 +38,32 @@ void PrintProfile(std::ostringstream &oss, const TimeInfo &time_info, int indent
void PrintTimeInfoMap(std::ostringstream &oss, const TimeInfoMap &dict, int indent = 0,
std::map<std::string, double> *sums = nullptr, const std::string &prefix = "") {
for (auto iter = dict.begin(); iter != dict.end(); ++iter) {
if (iter->second == nullptr) {
size_t count = 0;
for (const auto &iter : dict) {
count++;
if (iter.second == nullptr) {
continue;
}
// indent by multiples of 4 spaces.
auto name = iter->first.substr(TIME_INFO_PREFIX_NUM_LEN);
if (iter.first.size() < TIME_INFO_PREFIX_NUM_LEN) {
MS_LOG(EXCEPTION) << "In TimeInfoMap, the " << count << "th string key is " << iter.first
<< ", but the length is less than " << TIME_INFO_PREFIX_NUM_LEN;
}
auto name = iter.first.substr(TIME_INFO_PREFIX_NUM_LEN);
oss << std::setw(indent * 4) << ""
<< "[" << name << "]: " << iter->second->time_;
if (iter->second->dict_ != nullptr) {
oss << ", [" << iter->second->dict_->size() << "]";
<< "[" << name << "]: " << iter.second->time_;
if (iter.second->dict_ != nullptr) {
oss << ", [" << iter.second->dict_->size() << "]";
}
oss << "\n";
std::string newPrefix = prefix;
if (iter->first.find("Cycle ") == std::string::npos) {
newPrefix = prefix.empty() ? iter->first : prefix + "." + iter->first;
if (iter.first.find("Cycle ") == std::string::npos) {
newPrefix = prefix.empty() ? iter.first : prefix + "." + iter.first;
}
PrintProfile(oss, *iter->second, indent + 1, sums, newPrefix);
if (iter->second->dict_ == nullptr) {
(*sums)[newPrefix] += iter->second->time_;
PrintProfile(oss, *iter.second, indent + 1, sums, newPrefix);
if (iter.second->dict_ == nullptr) {
(*sums)[newPrefix] += iter.second->time_;
}
}
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册