Skip to content

Latest commit

 

History

History
13 lines (11 loc) · 1.54 KB

TESTS.md

File metadata and controls

13 lines (11 loc) · 1.54 KB

Unit and integration tests

cuNVSM comes with a test harness to verify its implementation. Here we give a brief overview of the tests:

  • cuda_utils_tests verifies the implementation of custom CUDA kernels and transformation functions (e.g., truncated_sigmoid). Note that most CUDA-related functionality is tested by the device_matrix library.
  • cudnn_utils_tests tests the integration of cuDNN within cuNVSM and, in particular, batch normalization.
  • data_tests checks whether all the data loading works properly. For example, it contains tests that verify the integration with Indri.
  • gradient_checking_tests provides automated tests, using numerical differentiation, that verify whether the forward and backward passes are correctly implemented. If a change to the loss functions is made, the consistency can be verified using this module.
  • intermediate_results_tests provides shallow tests for verifying the correct workings of internal cuNVSM data structures.
  • model_tests is a mixed bag of tests that verify the interface to the Model class.
  • updates_tests verifies the implementation of parameter update methods (e.g., Adam).
  • utils_tests contains a few short tests that verify auxiliary functions.