Managed reference to DatabaseNode.
More...
#include <database.h>
|
static Database | MemoryDatabase (String mod_eq_name="structural") |
| An in-memory database. More...
|
|
static Database | ScheduleFnDatabase (runtime::TypedPackedFunc< bool(tir::Schedule)> schedule_fn, String mod_eq_name="structural") |
| A database for injecting handcrafted schedule functions. More...
|
|
static Database | JSONDatabase (String path_workload, String path_tuning_record, bool allow_missing, String mod_eq_name="structural") |
| Create a default database that uses JSON file for tuning records. More...
|
|
static Database | UnionDatabase (Array< Database, void > databases) |
| A database composed of multiple databases, allowing users to guide IR rewriting using combined knowledge of those databases. To each query, it returns the best record among all the databases given. More...
|
|
static Database | OrderedUnionDatabase (Array< Database, void > databases) |
| A database composed of multiple databases, allowing users to guide IR rewriting using combined knowledge of those databases. To each query, it returns the record from the first database that responds to the query. More...
|
|
static Database | PyDatabase (PyDatabaseNode::FHasWorkload f_has_workload, PyDatabaseNode::FCommitWorkload f_commit_workload, PyDatabaseNode::FCommitTuningRecord f_commit_tuning_record, PyDatabaseNode::FGetTopK f_get_top_k, PyDatabaseNode::FGetAllTuningRecords f_get_all_tuning_records, PyDatabaseNode::FQueryTuningRecord f_query_tuning_record, PyDatabaseNode::FQuerySchedule f_query_schedule, PyDatabaseNode::FQueryIRModule f_query_ir_module, PyDatabaseNode::FSize f_size, String mod_eq_name="structural") |
| Create a database with customized methods on the python-side. More...
|
|
static Optional< Database > | Current () |
|
Managed reference to DatabaseNode.
- See also
- DatabaseNode
◆ Current()
- Returns
- The current Database in the scope.
◆ EnterWithScope()
void tvm::meta_schedule::Database::EnterWithScope |
( |
| ) |
|
Entering the scope of the context manager.
◆ ExitWithScope()
void tvm::meta_schedule::Database::ExitWithScope |
( |
| ) |
|
Exiting the scope of the context manager.
◆ JSONDatabase()
static Database tvm::meta_schedule::Database::JSONDatabase |
( |
String |
path_workload, |
|
|
String |
path_tuning_record, |
|
|
bool |
allow_missing, |
|
|
String |
mod_eq_name = "structural" |
|
) |
| |
|
static |
Create a default database that uses JSON file for tuning records.
- Parameters
-
path_workload | The path to the workload table. |
path_tuning_record | The path to the database table. |
allow_missing | Whether to create new file when the given path is not found. |
mod_eq_name | A string to specify the module equality testing and hashing method. |
◆ MemoryDatabase()
static Database tvm::meta_schedule::Database::MemoryDatabase |
( |
String |
mod_eq_name = "structural" | ) |
|
|
static |
An in-memory database.
- Parameters
-
mod_eq_name | A string to specify the module equality testing and hashing method. |
◆ OrderedUnionDatabase()
A database composed of multiple databases, allowing users to guide IR rewriting using combined knowledge of those databases. To each query, it returns the record from the first database that responds to the query.
- Parameters
-
databases | The database to be subsetted. |
- Returns
- The subsetted database.
◆ PyDatabase()
Create a database with customized methods on the python-side.
- Parameters
-
f_has_workload | The packed function of HasWorkload . |
f_commit_workload | The packed function of CommitWorkload . |
f_commit_tuning_record | The packed function of CommitTuningRecord . |
f_get_top_k | The packed function of GetTopK . |
f_get_all_tuning_records | The packed function of GetAllTuningRecords . |
f_query_tuning_record | The packed function of QueryTuningRecord . |
f_query_schedule | The packed function of QuerySchedule . |
f_query_ir_module | The packed function of QueryIRModule . |
f_size | The packed function of Size . |
mod_eq_name | A string to specify the module equality testing and hashing method. |
- Returns
- The created database.
◆ ScheduleFnDatabase()
A database for injecting handcrafted schedule functions.
- Parameters
-
schedule_fn | The function to do scheduling, which takes a TIR schedule, and returns a boolean indicating if the schedule is successful. |
mod_eq_name | A string to specify the module equality testing and hashing method. |
◆ TVM_DEFINE_MUTABLE_NOTNULLABLE_OBJECT_REF_METHODS()
◆ UnionDatabase()
A database composed of multiple databases, allowing users to guide IR rewriting using combined knowledge of those databases. To each query, it returns the best record among all the databases given.
- Parameters
-
databases | The list of databases to be combined. |
- Returns
- The combined database.
The documentation for this class was generated from the following file: