Browse Source

fix(mge/imperative): fix OutputCallback hang

GitOrigin-RevId: 49c10c79d6
tags/v1.0.0-rc1
Megvii Engine Team 4 years ago
parent
commit
7336b30601
2 changed files with 2 additions and 8 deletions
  1. +1
    -8
      imperative/python/src/graph_rt.h
  2. +1
    -0
      imperative/src/impl/opr_utility.cpp

+ 1
- 8
imperative/python/src/graph_rt.h View File

@@ -44,15 +44,8 @@ class Rendezvous {
public:
Rendezvous() = default;
Rendezvous(const Rendezvous& rhs) = delete;
Rendezvous(Rendezvous&& rhs) = default;
Rendezvous(Rendezvous&& rhs) = delete;
Rendezvous& operator=(const Rendezvous& rhs) = delete;
Rendezvous& operator=(Rendezvous&& rhs) {
MGB_LOCK_GUARD(m_lock);
m_drop_next = rhs.m_drop_next;
m_read_ahead = rhs.m_read_ahead;
m_promise = std::move(rhs.m_promise);
return *this;
}

R get() {
std::future<R> f;


+ 1
- 0
imperative/src/impl/opr_utility.cpp View File

@@ -123,6 +123,7 @@ OutputCallback::OutputCallback(Param param, const VarNodeArray& inputs,
->add_flag(VarNode::Flag::ALLOW_EMPTY_SHAPE)
.add_flag(VarNode::Flag::NO_SYS_MEM_ALLOC)
.dtype(DType::from_enum(DTypeEnum::Byte));
add_equivalence_component<ScalarHash<void*>>(this);
}

SymbolVar OutputCallback::make(Param param, const SymbolVarArray& inputs) {


Loading…
Cancel
Save