================== ProfilerBase =================*/
| 567 | |
| 568 | /* ================== ProfilerBase =================*/ |
| 569 | std::string ProfilerBase::OperatorNodeRecord::to_string() const { |
| 570 | auto str = ssprintf( |
| 571 | "\nopr type: %s\nopr name: %s\ninputs:\n", opr->dyn_typeinfo()->name, |
| 572 | opr->cname()); |
| 573 | for (auto&& i : opr->input()) { |
| 574 | str += ssprintf( |
| 575 | "\tvar: %s\n\tshape: %s\n", i->cname(), i->shape().to_string().c_str()); |
| 576 | } |
| 577 | str += ssprintf( |
| 578 | "outputs:\n\tvar: %s\n\tshape: %s\ncosts:\n", opr->output(0)->cname(), |
| 579 | opr->output(0)->shape().to_string().c_str()); |
| 580 | for (auto&& cpair : costs) { |
| 581 | str += ssprintf( |
| 582 | "\tconfig: %s; cost:%f", config_id_to_string(cpair.first), |
| 583 | cpair.second); |
| 584 | } |
| 585 | return str; |
| 586 | } |
| 587 | |
| 588 | std::string ProfilerBase::VarNodeRecord::to_string() const { |
| 589 | auto str = ssprintf("\nvar: %s\ncosts:", var->cname()); |
no test coverage detected