Open3

TVM,VTA runtimeによるHost,アクセラレーター連携

xiangzexiangze

https://tvm.apache.org/docs/arch/runtime.html

VTAの runtimeは
https://github.com/apache/tvm/blob/main/vta/runtime/runtime.cc
に実装されている。

  • class
    AlignmentAllocator
    DeviceAllocStat
    UopKernel // Micro op kernel.
    struct LoopEntry //loop information
    BaseQueue
    UopQueue
    UopKernelMap
    InsnQueue
    CommandQueue

  • struct
    Databuffer

などのクラス、構造体からなる。
Hostが以下にあるようなアクセラレーターのメモリ領域を操作する。

VTAの設計思想は
https://arxiv.org/abs/1807.04188
http://cparch-mclearn.blogspot.com/2018/09/vta-open-hardware-software-stack-for.html

xiangzexiangze

VTAはFPGA向け実装でアーキテクチャが固定されている。自由度を高めたハードウェアを実装するにはtvm/src/runtime以下のコードが動くものにしなければいけないはず