Skip to content

Files

This branch is 303 commits behind pytorch/pytorch:main.

tensorexpr

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
Oct 25, 2024
Feb 21, 2020
Apr 15, 2020
Jul 26, 2022
Oct 19, 2021
Sep 14, 2021
Oct 19, 2021
Jul 31, 2024
Feb 11, 2022
Jun 10, 2022
Oct 19, 2021
Oct 16, 2023
Mar 4, 2022
Oct 16, 2023
Jul 18, 2024
Dec 19, 2022
Dec 18, 2024
Oct 16, 2023
May 14, 2024
Jun 4, 2024
Jul 31, 2024
Oct 16, 2023
Feb 23, 2022
May 4, 2022
May 14, 2024
Oct 19, 2024
Oct 16, 2023
Oct 19, 2024
Mar 31, 2022
Jun 11, 2022
Oct 16, 2023
Aug 18, 2021
Jun 10, 2022

TensorExpr C++ Tests

How to add a new test

First, create a new test file. Test files should have be placed in this directory, with a name that starts with test_, like test_foo.cpp.

Here is an example test file you can copy-paste.

#include <test/cpp/tensorexpr/test_base.h>

// Tests go in torch::jit
namespace torch {
namespace jit {

// 1. Test cases are void() functions.
// 2. They start with the prefix `test`
void testCaseOne() {
    // ...
}

void testCaseTwo() {
    // ...
}
}
}

Then, register your test in tests.h:

// Add to TH_FORALL_TESTS_CUDA instead for CUDA-requiring tests
#define TH_FORALL_TESTS(_)             \
  _(ADFormulas)                        \
  _(Attributes)                        \
  ...
  _(CaseOne)  // note that the `test` prefix is omitted.
  _(CaseTwo)

We glob all the test files together in CMakeLists.txt so that you don't have to edit it every time you add a test. Unfortunately, this means that in order to get the build to pick up your new test file, you need to re-run cmake:

python setup.py build --cmake

How do I run the tests?

The following commands assume you are in PyTorch root.

# (re)build the test binary
ninja build/bin/test_tensorexpr
# run
build/bin/test_tensorexpr --gtest_filter='glob_style_filter*'