DifferentiationInterfaceTest

Build Status Coverage Code Style: Blue ColPrac: Contributor's Guide on Collaborative Practices for Community Packages DOI

PackageDocs
DifferentiationInterfaceStable Dev
DifferentiationInterfaceTestStable Dev

Testing and benchmarking utilities for automatic differentiation (AD) in Julia, based on DifferentiationInterface.

Goal

Make it easy to know, for a given function:

  • which AD backends can differentiate it
  • how fast they can do it

Features

  • Predefined or custom test scenarios
  • Correctness tests
  • Type stability tests
  • Count calls to the function
  • Benchmark runtime and allocations
  • Scenarios with weird array types (GPU, static) in package extensions

Installation

To install the stable version of the package, run the following code in a Julia REPL:

using Pkg

Pkg.add("DifferentiationInterfaceTest")

To install the development version, run this instead:

using Pkg

Pkg.add(
    url="https://github.com/JuliaDiff/DifferentiationInterface.jl",
    subdir="DifferentiationInterface"
)
    
Pkg.add(
    url="https://github.com/JuliaDiff/DifferentiationInterface.jl",
    subdir="DifferentiationInterfaceTest"
)