Available Commands

Backends

enum [anonymous]

Values:

enumerator CCV_NNC_NO_BACKEND = 0
enumerator CCV_NNC_BACKEND_CPU_REF = 0x3d9883e5
enumerator CCV_NNC_BACKEND_GPU_REF = 0x5f19790a
enumerator CCV_NNC_BACKEND_CPU_OPT = 0x46deb194
enumerator CCV_NNC_BACKEND_GPU_CUDNN = 0x854b679a
enumerator CCV_NNC_BACKEND_GPU_CUBLAS = 0x9b8cfed
enumerator CCV_NNC_BACKEND_GPU_NCCL = 0x7afed9c7
enumerator CCV_NNC_BACKEND_COUNT = 6

Commands

The list is available once you included <nnc/ccv_nnc_easy.h>. To do it the hard way, you should check the underlying implementation. These APIs can be called in places that requires ccv_nnc_cmd_t data structure.

CMD_NOOP()
CMD_CUSTOM_FORWARD(f)
CMD_RANDOM_UNIFORM_FORWARD(_lb, _ub)
CMD_RANDOM_UNIFORM_BACKWARD(_lb, _ub)
CMD_CONVOLUTION_FORWARD(_groups, _count, ...)
CMD_CONVOLUTION_BACKWARD(_groups, _count, ...)
CMD_SWISH_FORWARD()
CMD_SWISH_BACKWARD()
CMD_DROPOUT_FORWARD_X_F(...)
CMD_DROPOUT_FORWARD_X_1(_p)
CMD_DROPOUT_FORWARD_X_2(_p, _entirety)
CMD_DROPOUT_FORWARD_X_SEL(_0, _1, _2, _FX, ...)
CMD_DROPOUT_FORWARD(...)
CMD_DROPOUT_BACKWARD_X_F(...)
CMD_DROPOUT_BACKWARD_X_1(_p)
CMD_DROPOUT_BACKWARD_X_2(_p, _entirety)
CMD_DROPOUT_BACKWARD_X_SEL(_0, _1, _2, _FX, ...)
CMD_DROPOUT_BACKWARD(...)
CMD_SOFTMAX_CROSSENTROPY_FORWARD_X_0()
CMD_SOFTMAX_CROSSENTROPY_FORWARD_X_F(...)
CMD_SOFTMAX_CROSSENTROPY_FORWARD_X_2(_trim0, _trim1)
CMD_SOFTMAX_CROSSENTROPY_FORWARD_X_SEL(_0, _1, _2, _FX, ...)
CMD_SOFTMAX_CROSSENTROPY_FORWARD(...)
CMD_SOFTMAX_CROSSENTROPY_BACKWARD_X_0()
CMD_SOFTMAX_CROSSENTROPY_BACKWARD_X_F(...)
CMD_SOFTMAX_CROSSENTROPY_BACKWARD_X_2(_trim0, _trim1)
CMD_SOFTMAX_CROSSENTROPY_BACKWARD_X_SEL(_0, _1, _2, _FX, ...)
CMD_SOFTMAX_CROSSENTROPY_BACKWARD(...)
CMD_SGD_FORWARD(_nesterov, _rate, _scale, _decay, _momentum, _dampening)
CMD_MAX_POOL_FORWARD(rows, cols)
CMD_MAX_POOL_BACKWARD(rows, cols)
CMD_AVERAGE_POOL_FORWARD(rows, cols)
CMD_AVERAGE_POOL_BACKWARD(rows, cols)
CMD_SIGMOID_BINARY_CROSSENTROPY_FORWARD_X_0()
CMD_SIGMOID_BINARY_CROSSENTROPY_FORWARD_X_F(...)
CMD_SIGMOID_BINARY_CROSSENTROPY_FORWARD_X_1(_pos_weight)
CMD_SIGMOID_BINARY_CROSSENTROPY_FORWARD_X_SEL(_0, _1, _FX, ...)
CMD_SIGMOID_BINARY_CROSSENTROPY_FORWARD(...)
CMD_SIGMOID_BINARY_CROSSENTROPY_BACKWARD_X_0()
CMD_SIGMOID_BINARY_CROSSENTROPY_BACKWARD_X_F(...)
CMD_SIGMOID_BINARY_CROSSENTROPY_BACKWARD_X_1(_pos_weight)
CMD_SIGMOID_BINARY_CROSSENTROPY_BACKWARD_X_SEL(_0, _1, _FX, ...)
CMD_SIGMOID_BINARY_CROSSENTROPY_BACKWARD(...)
CMD_COMPRESSION_LSSC_FORWARD()
CMD_COMPRESSION_LSSC_BACKWARD()
CMD_SOFTMAX_FORWARD()
CMD_SOFTMAX_BACKWARD()
CMD_BINARY_CROSSENTROPY_FORWARD_X_0()
CMD_BINARY_CROSSENTROPY_FORWARD_X_F(...)
CMD_BINARY_CROSSENTROPY_FORWARD_X_1(_pos_weight)
CMD_BINARY_CROSSENTROPY_FORWARD_X_SEL(_0, _1, _FX, ...)
CMD_BINARY_CROSSENTROPY_FORWARD(...)
CMD_BINARY_CROSSENTROPY_BACKWARD_X_0()
CMD_BINARY_CROSSENTROPY_BACKWARD_X_F(...)
CMD_BINARY_CROSSENTROPY_BACKWARD_X_1(_pos_weight)
CMD_BINARY_CROSSENTROPY_BACKWARD_X_SEL(_0, _1, _FX, ...)
CMD_BINARY_CROSSENTROPY_BACKWARD(...)
CMD_CATEGORICAL_CROSSENTROPY_FORWARD_X_0()
CMD_CATEGORICAL_CROSSENTROPY_FORWARD_X_F(...)
CMD_CATEGORICAL_CROSSENTROPY_FORWARD_X_2(_trim0, _trim1)
CMD_CATEGORICAL_CROSSENTROPY_FORWARD_X_SEL(_0, _1, _2, _FX, ...)
CMD_CATEGORICAL_CROSSENTROPY_FORWARD(...)
CMD_CATEGORICAL_CROSSENTROPY_BACKWARD_X_0()
CMD_CATEGORICAL_CROSSENTROPY_BACKWARD_X_F(...)
CMD_CATEGORICAL_CROSSENTROPY_BACKWARD_X_2(_trim0, _trim1)
CMD_CATEGORICAL_CROSSENTROPY_BACKWARD_X_SEL(_0, _1, _2, _FX, ...)
CMD_CATEGORICAL_CROSSENTROPY_BACKWARD(...)
CMD_SMOOTH_L1_FORWARD()
CMD_SMOOTH_L1_BACKWARD()
CMD_RELU_FORWARD()
CMD_RELU_BACKWARD()
CMD_ADAM_FORWARD(_step, _rate, _beta1, _beta2, _decay, _epsilon)
CMD_GEMM_FORWARD(...)
CMD_GEMM_BACKWARD(...)
CMD_ADD_FORWARD(_p, _q)
CMD_ADD_BACKWARD(_p, _q)
CMD_MUL_FORWARD(_p)
CMD_MUL_BACKWARD(_p)
CMD_SCALAR_MUL_FORWARD(_a)
CMD_SCALAR_MUL_BACKWARD(_a)
CMD_UPSAMPLE_BILINEAR_FORWARD(_width_scale, _height_scale)
CMD_UPSAMPLE_BILINEAR_BACKWARD(_width_scale, _height_scale)
CMD_COMM_ALLREDUCE_FORWARD()
CMD_COMM_ALLREDUCE_BACKWARD()
CMD_COMM_BROADCAST_FORWARD()
CMD_COMM_BROADCAST_BACKWARD()
CMD_COMM_REDUCE_FORWARD()
CMD_COMM_REDUCE_BACKWARD()
CMD_SET_FORWARD(_val)
CMD_SET_BACKWARD(_val)
CMD_MASKED_FILL_FORWARD(_eq, _fill)
CMD_MASKED_FILL_BACKWARD(_eq, _fill)
CMD_DATA_TRANSFER_FORWARD()
CMD_DATA_TRANSFER_BACKWARD()
CMD_FORMAT_TRANSFORM_FORWARD()
CMD_FORMAT_TRANSFORM_BACKWARD()
CMD_TRANSPOSE_FORWARD(_axis_a, _axis_b)
CMD_TRANSPOSE_BACKWARD(_axis_a, _axis_b)
CMD_DATATYPE_CONVERSION_FORWARD()
CMD_DATATYPE_CONVERSION_BACKWARD()
CMD_SIGMOID_FORWARD()
CMD_SIGMOID_BACKWARD()
CMD_INDEX_SELECT_FORWARD()
CMD_INDEX_SELECT_BACKWARD()
CMD_RMSPROP_FORWARD(_rate, _decay, _alpha, _momentum, _epsilon)
CMD_EWSUM_FORWARD()
CMD_EWSUM_BACKWARD()
CMD_EWPROD_FORWARD()
CMD_EWPROD_BACKWARD()
CMD_EWDIV_FORWARD()
CMD_EWDIV_BACKWARD()
CMD_EWEXP_FORWARD()
CMD_EWEXP_BACKWARD()
CMD_EWLOG_FORWARD()
CMD_EWLOG_BACKWARD()
CMD_EWSQRT_FORWARD()
CMD_EWSQRT_BACKWARD()
CMD_REDUCE_SUM_FORWARD(...)
CMD_REDUCE_SUM_BACKWARD(...)
CMD_REDUCE_MAX_FORWARD(...)
CMD_REDUCE_MAX_BACKWARD(...)
CMD_BATCH_NORM_FORWARD(_epsilon, _is_test, _momentum, ...)
CMD_BATCH_NORM_BACKWARD(_epsilon, _is_test, _momentum, ...)
CMD_LAYER_NORM_FORWARD(_epsilon, ...)
CMD_LAYER_NORM_BACKWARD(_epsilon, ...)

Command Identifiers

enum [anonymous]

Values:

enumerator CCV_NNC_NOOP = 0
enumerator CCV_NNC_CUSTOM_FORWARD = 2
enumerator CCV_NNC_CUSTOM_BACKWARD
enumerator CCV_NNC_GRAPH_FORWARD
enumerator CCV_NNC_GRAPH_BACKWARD
enumerator CCV_NNC_RANDOM_UNIFORM_FORWARD = 0xa0cd1d5e
enumerator CCV_NNC_RANDOM_UNIFORM_BACKWARD = 0xa0cd1d5f
enumerator CCV_NNC_CONVOLUTION_FORWARD = 0x254d05f4
enumerator CCV_NNC_CONVOLUTION_BACKWARD = 0x254d05f5
enumerator CCV_NNC_SWISH_FORWARD = 0x583d90c2
enumerator CCV_NNC_SWISH_BACKWARD = 0x583d90c3
enumerator CCV_NNC_DROPOUT_FORWARD = 0x7f2dc3e4
enumerator CCV_NNC_DROPOUT_BACKWARD = 0x7f2dc3e5
enumerator CCV_NNC_SOFTMAX_CROSSENTROPY_FORWARD = 0xc26b7b5e
enumerator CCV_NNC_SOFTMAX_CROSSENTROPY_BACKWARD = 0xc26b7b5f
enumerator CCV_NNC_SGD_FORWARD = 0xe650ad26
enumerator CCV_NNC_SGD_BACKWARD = 0xe650ad27
enumerator CCV_NNC_MAX_POOL_FORWARD = 0x7bec9360
enumerator CCV_NNC_MAX_POOL_BACKWARD = 0x7bec9361
enumerator CCV_NNC_AVERAGE_POOL_FORWARD = 0x51267ab8
enumerator CCV_NNC_AVERAGE_POOL_BACKWARD = 0x51267ab9
enumerator CCV_NNC_SIGMOID_BINARY_CROSSENTROPY_FORWARD = 0xd9e0e4a
enumerator CCV_NNC_SIGMOID_BINARY_CROSSENTROPY_BACKWARD = 0xd9e0e4b
enumerator CCV_NNC_COMPRESSION_LSSC_FORWARD = 0x17ea8f72
enumerator CCV_NNC_COMPRESSION_LSSC_BACKWARD = 0x17ea8f73
enumerator CCV_NNC_SOFTMAX_FORWARD = 0xc969a252
enumerator CCV_NNC_SOFTMAX_BACKWARD = 0xc969a253
enumerator CCV_NNC_BINARY_CROSSENTROPY_FORWARD = 0xcd2107ec
enumerator CCV_NNC_BINARY_CROSSENTROPY_BACKWARD = 0xcd2107ed
enumerator CCV_NNC_CATEGORICAL_CROSSENTROPY_FORWARD = 0x1eb327a2
enumerator CCV_NNC_CATEGORICAL_CROSSENTROPY_BACKWARD = 0x1eb327a3
enumerator CCV_NNC_SMOOTH_L1_FORWARD = 0x4e428e
enumerator CCV_NNC_SMOOTH_L1_BACKWARD = 0x4e428f
enumerator CCV_NNC_RELU_FORWARD = 0xc51eaa80
enumerator CCV_NNC_RELU_BACKWARD = 0xc51eaa81
enumerator CCV_NNC_ADAM_FORWARD = 0xe30099dc
enumerator CCV_NNC_ADAM_BACKWARD = 0xe30099dd
enumerator CCV_NNC_GEMM_FORWARD = 0x7e87d00c
enumerator CCV_NNC_GEMM_BACKWARD = 0x7e87d00d
enumerator CCV_NNC_ADD_FORWARD = 0x58fb3664
enumerator CCV_NNC_ADD_BACKWARD = 0x58fb3665
enumerator CCV_NNC_MUL_FORWARD = 0x24721a46
enumerator CCV_NNC_MUL_BACKWARD = 0x24721a47
enumerator CCV_NNC_SCALAR_MUL_FORWARD = 0x8b4d86aa
enumerator CCV_NNC_SCALAR_MUL_BACKWARD = 0x8b4d86ab
enumerator CCV_NNC_UPSAMPLE_BILINEAR_FORWARD = 0x48252aac
enumerator CCV_NNC_UPSAMPLE_BILINEAR_BACKWARD = 0x48252aad
enumerator CCV_NNC_COMM_ALLREDUCE_FORWARD = 0x75c8d340
enumerator CCV_NNC_COMM_ALLREDUCE_BACKWARD = 0x75c8d341
enumerator CCV_NNC_COMM_BROADCAST_FORWARD = 0x830eee
enumerator CCV_NNC_COMM_BROADCAST_BACKWARD = 0x830eef
enumerator CCV_NNC_COMM_REDUCE_FORWARD = 0x3434ead8
enumerator CCV_NNC_COMM_REDUCE_BACKWARD = 0x3434ead9
enumerator CCV_NNC_SET_FORWARD = 0x2b070804
enumerator CCV_NNC_SET_BACKWARD = 0x2b070805
enumerator CCV_NNC_MASKED_FILL_FORWARD = 0x7f992d84
enumerator CCV_NNC_MASKED_FILL_BACKWARD = 0x7f992d85
enumerator CCV_NNC_DATA_TRANSFER_FORWARD = 0x12d21e1a
enumerator CCV_NNC_DATA_TRANSFER_BACKWARD = 0x12d21e1b
enumerator CCV_NNC_FORMAT_TRANSFORM_FORWARD = 0xe4a2b192
enumerator CCV_NNC_FORMAT_TRANSFORM_BACKWARD = 0xe4a2b193
enumerator CCV_NNC_TRANSPOSE_FORWARD = 0xb4d506e0
enumerator CCV_NNC_TRANSPOSE_BACKWARD = 0xb4d506e1
enumerator CCV_NNC_DATATYPE_CONVERSION_FORWARD = 0xd873e38c
enumerator CCV_NNC_DATATYPE_CONVERSION_BACKWARD = 0xd873e38d
enumerator CCV_NNC_SIGMOID_FORWARD = 0xf2f69650
enumerator CCV_NNC_SIGMOID_BACKWARD = 0xf2f69651
enumerator CCV_NNC_INDEX_SELECT_FORWARD = 0x7ee7771e
enumerator CCV_NNC_INDEX_SELECT_BACKWARD = 0x7ee7771f
enumerator CCV_NNC_RMSPROP_FORWARD = 0x9c886b1c
enumerator CCV_NNC_RMSPROP_BACKWARD = 0x9c886b1d
enumerator CCV_NNC_EWSUM_FORWARD = 0xe21a2c4c
enumerator CCV_NNC_EWSUM_BACKWARD = 0xe21a2c4d
enumerator CCV_NNC_EWPROD_FORWARD = 0xee07e8fe
enumerator CCV_NNC_EWPROD_BACKWARD = 0xee07e8ff
enumerator CCV_NNC_EWDIV_FORWARD = 0x1cd2fa18
enumerator CCV_NNC_EWDIV_BACKWARD = 0x1cd2fa19
enumerator CCV_NNC_EWEXP_FORWARD = 0xd784b170
enumerator CCV_NNC_EWEXP_BACKWARD = 0xd784b171
enumerator CCV_NNC_EWLOG_FORWARD = 0xf4191bf2
enumerator CCV_NNC_EWLOG_BACKWARD = 0xf4191bf3
enumerator CCV_NNC_EWSQRT_FORWARD = 0x8870a61e
enumerator CCV_NNC_EWSQRT_BACKWARD = 0x8870a61f
enumerator CCV_NNC_REDUCE_SUM_FORWARD = 0x52970f06
enumerator CCV_NNC_REDUCE_SUM_BACKWARD = 0x52970f07
enumerator CCV_NNC_REDUCE_MAX_FORWARD = 0x80f1a506
enumerator CCV_NNC_REDUCE_MAX_BACKWARD = 0x80f1a507
enumerator CCV_NNC_BATCH_NORM_FORWARD = 0x5419819c
enumerator CCV_NNC_BATCH_NORM_BACKWARD = 0x5419819d
enumerator CCV_NNC_LAYER_NORM_FORWARD = 0xbed3c264
enumerator CCV_NNC_LAYER_NORM_BACKWARD = 0xbed3c265
enumerator CCV_NNC_COUNT = 89