Commit 71276f4d authored by Khalique's avatar Khalique
Browse files

initial progress

parent c58ce6f5
......@@ -137,22 +137,36 @@ struct onnx_parser
const std::vector<std::size_t>* s0 = &args[0]->get_shape().lens();
const std::vector<std::size_t>* s1 = &args[1]->get_shape().lens();
bool swapped = false;
// Make sure s0 is the smaller size
if(s0->size() > s1->size())
{
std::swap(s0, s1);
swapped = true;
}
// Copy the larger vector to output_lens
std::vector<std::size_t> output_lens(s1->size());
auto offset = s1->size() - s0->size();
std::transform(s0->begin(),
s0->end(),
s1->begin() + offset,
output_lens.begin() + offset,
[](auto a, auto b) { return std::max(a, b); });
auto l0 = prog.add_instruction(op::multibroadcast{output_lens}, args[0]);
auto l1 = prog.add_instruction(op::multibroadcast{output_lens}, args[1]);
return prog.add_instruction(x, l0, l1);
// if (s0->size() == 0)
// {
// shape s = swapped ? args[0]->get_shape() : args[1]->get_shape();
// auto l0 = prog.add_instruction(migraphx::op::scalar{s}, 1.0f);
// return prog.add_instruction(x, l0, args[1]);
// }
// else
// {
// Copy the larger vector to output_lens
auto offset = s1->size() - s0->size();
std::transform(s0->begin(),
s0->end(),
s1->begin() + offset,
output_lens.begin() + offset,
[](auto a, auto b) { return std::max(a, b); });
auto l0 = prog.add_instruction(op::multibroadcast{output_lens}, args[0]);
auto l1 = prog.add_instruction(op::multibroadcast{output_lens}, args[1]);
return prog.add_instruction(x, l0, l1);
// }
}
else
{
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment