ChainerX Documentation¶
Warning
This feature is still in the earliest stage of its development. The behavior and interface are subject to change.
ChainerX is an ndarray implementation with Define-by-Run automatic differentiation capability. It roughly corresponds to “NumPy/CuPy + Chainer Variable”, while some additional features follow:
Speed: The whole ndarray and autograd implementation is written in C++, with a thin Python binding. It lowers the overhead existing in the pure Python implementation of Chainer.
Extensibility: The backend is pluggable so that it is much easier to add a support of new devices.
The speed is best achieved by directly using ChainerX APIs,
while it also provides a compatibility layer through the conventional chainer.Variable
interface for easier adoption of ChainerX in existing projects.
See ChainerX Tutorial for more details.