| 817 | } |
| 818 | |
| 819 | void SplitByGatherInputs(const DupFuseRecvTable& full, |
| 820 | DupFuseRecvTable* gather_inputs, |
| 821 | DupFuseRecvTable* no_gather_inputs) { |
| 822 | auto it = full.begin(); |
| 823 | while (it != full.end()) { |
| 824 | const Edge* edge = it->second[0].edge; |
| 825 | if (edge->dst()->type_string() == "Gather" |
| 826 | || edge->src()->type_string() == "Gather" |
| 827 | || edge->dst()->type_string() == "GatherV2" |
| 828 | || edge->src()->type_string() == "GatherV2") { |
| 829 | (*gather_inputs)[it->first] = it->second; |
| 830 | } else { |
| 831 | (*no_gather_inputs)[it->first] = it->second; |
| 832 | } |
| 833 | ++it; |
| 834 | } |
| 835 | } |
| 836 | |
| 837 | Status DoFuseRecv(const PartitionOptions& opts, const GraphInfo& g_info, |
| 838 | const DupFuseRecvTable& recvs, GraphDef* dst_graph, |
no test coverage detected