-
Notifications
You must be signed in to change notification settings - Fork 3.8k
Description
In many of TVM's unit tests (such as the Corstone300 Arm tests), we verify that schedules work by cross-checking them against the x86 implementations of the same operators. However, the x86 operators only support certain kernel and data layouts and contain some restrictions, so doing it this way can be very tedious.
Additionally, it would be awesome to have tests verifying that TVM's implementations of common operators matched those of other major frameworks like Pytorch and Tensorflow. A great way to solve both of these issues would be to switch the "reference implementations" of the operators from our x86 schedules to Tensorflow (or another similar framework)'s implementation.
This would actually be a pretty easy change - we would just have to pass the output of to tf.nn.conv2d (or similar) to AOTTestModel. It would, however, add the weighty tensorflow as a dependency for running the Corstone300 tests.
As @areusch points out below, Tensorflow is already a dependency because of tflite. We do not need to add any dependencies to make this change.
cc @Mousius @alanmacd @driazati @gigiblender @gromero @mehrdadh