You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tvm.apache.org by GitBox <gi...@apache.org> on 2021/09/23 22:23:28 UTC

[GitHub] [tvm] junrushao1994 edited a comment on pull request #9061: [Meta Schedule][M3c] Database

junrushao1994 edited a comment on pull request #9061:
URL: https://github.com/apache/tvm/pull/9061#issuecomment-926207149


   > It seems the direct use of the Database is all wrapped in a JSON-related file object, which kind of confuses me, would you mind providing a brief explanation of the class structure somewhere?
   
   Hey thanks @mbrookhart for asking! Let's focus on the database API and ignore the workload registry part (which will be removed according to previous discussion with Cody in this thread).
   
   * The base abstract class is `Database`, which has 4 pure virtual methods: `commit_workload`, `commit_tuning_record`, `get_top_k`, `size`
   * The system interacts with any subclass of `Database` by calling these 4 methods
   * To implement a concrete subclass of `Database`: in pure C++, we can just inherit Database and do so; in pure python, we provide `PyDatabase` which plays some tricks so that everything can be implemented in pure python
   * `JSONFile` is a simple default implementation of `Database` for open source


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@tvm.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org