Skip to content

Commit

Permalink
[MXNET-23] add README for test directory (apache#11390)
Browse files Browse the repository at this point in the history
* add README for tests

* update read me with relative path to test file

* update test readme to include instructions for running with docker

* retrigger

* another retrigger
  • Loading branch information
azai91 authored and eric-haibin-lin committed Jun 28, 2018
1 parent 645057b commit a97a475
Showing 1 changed file with 58 additions and 0 deletions.
58 changes: 58 additions & 0 deletions tests/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
# Testing MXNET

## Running CPP Tests

1. Install [cmake](https://cmake.org/install/)
1. Create a build directory in the root of the mxnet project
```
mkdir build
cd build
```
1. Generate your Makefile and build along with the tests with cmake (specify appropraite flags)
```
cmake -DUSE_CUDNN=ON -DUSE_CUDA=ON -DUSE_MKLDNN=ON -DBLAS=Open -DCMAKE_BUILD_TYPE=Debug .. && make
```
1. Run tests
```
ctest --verbose
```
1. The following will run all the tests the in `cpp` directory. To run just your test file replace the following in your `tests/CMakeLists.txt`
```
file(GLOB_RECURSE UNIT_TEST_SOURCE "cpp/*.cc" "cpp/*.h")
```
with
```
file(GLOB_RECURSE UNIT_TEST_SOURCE "cpp/test_main.cc" "cpp/{RELATIVE_PATH_TO_TEST_FILE}")
```
### Building with Ninja
Ninja is a build tool (like make) that prioritizes building speed. If you will be building frequently, we recommend you use ninja
1. Download Ninja via package manager or directly from [source](https://github.com/ninja-build/ninja)
```
apt-get install ninja-build
```
1. When running cmake, add the `-GNinja` flag to specify cmake to generate a Ninja build file
```
cmake -DUSE_CUDNN=ON -DUSE_CUDA=ON -DUSE_MKLDNN=ON -DBLAS=Open -GNinja -DCMAKE_BUILD_TYPE=Debug ..
```
1. Run the ninja build file with
```
ninja
```
## Runing Python Tests Within Docker
1. To run tests inside docker run the following comamdn
```
ci/build.py --platform {PLATFORM} /work/runtime_functions.sh {RUNTIME_FUNCTION}
```
An example for running python tests would be
```
ci/build.py --platform build_ubuntu_cpu_mkldnn /work/runtime_functions.sh unittest_ubuntu_python3_cpu PYTHONPATH=./python/ nosetests-2.7 tests/python/unittest
```

0 comments on commit a97a475

Please sign in to comment.