| 174 | } |
| 175 | |
| 176 | void ComputingGraphImpl::ComputingSequence::ExecContext::perform(NormalExecEnv* env) { |
| 177 | if (!m_need_perform) { |
| 178 | // no need for performing |
| 179 | return; |
| 180 | } else if (m_comp_seq->m_comp_node_seq_recorder) { |
| 181 | // replay recorder |
| 182 | m_comp_seq->m_comp_node_seq_recorder->replay(); |
| 183 | } else { |
| 184 | // normal execute, execute with recorder and partial execution |
| 185 | env->start_exec(); |
| 186 | // wait for all operations to be issued |
| 187 | env->wait_all(); |
| 188 | } |
| 189 | } |
| 190 | |
| 191 | ComputingGraphImpl::ComputingSequence::ExecContext::~ExecContext() noexcept { |
| 192 | if (has_uncaught_exception()) { |
no test coverage detected