commit | 01ed0cd0b65577bb9f8c7dab21a1bcfd87461920 | [log] [tgz] |
---|---|---|
author | Hua Jiang <huaj@xilinx.com> | Thu Jan 23 14:05:07 2020 -0800 |
committer | Thierry Moreau <tmoreau@octoml.ai> | Thu Jan 23 14:05:07 2020 -0800 |
tree | 822c11c54df0f290eb9bb014dd476750e8bc5e26 | |
parent | 3a669d6216eefd718073ae9b91989913a1b25f03 [diff] |
[VTA] Support network which have no unique operator as start/stop name for graph pack. (#4703) * [VTA] Support network which have no unique operator as start/stop name for graph pack. [Issue] Current vta use 'start' and 'stop' name to define the pack start point and end point, but this method not work for these network which have no 2 unique operator as start point and stop point. [Solution] In this solution we give 2 addtional parameters start_name_indx and stop_name_indx to make vta pack logic work with the said network, for exampl for following networks which have no unique operator, %0 = nn.add %1 = nn.conv2d %2 = nn.batch_norm %3 = nn.leaky_relu %4 = nn.add %5 = nn.conv2d %6 = nn.batch_norm %7 = nn.leaky_relu %8 = nn.add with this solution we can use following parameter format to make vta work on it. relay_prog = graph_pack( //.... start_name="nn.add", stop_name="nn.add", start_name_idx=0, stop_name_idx=4) to apply on new network, by printing the network we can get index information like following. print(mod.astext(show_meta_data=False)) relay_prog = graph_pack(mod ... start_name="nn.add", stop_name="nn.add", start_name_idx=0, stop_name_idx=4) * address review comments and fix index count bug issue: when do print(mod), the output not only the Call is also have other type like Var, need add logic to count all except meta. solution: add related logic * address review comments. * address review comments * add more detail comments.
VTA (versatile tensor accelerator) is an open-source deep learning accelerator complemented with an end-to-end TVM-based compiler stack.
The key features of VTA include:
Learn more about VTA here.