diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/adjust_contrast.cpp b/libnd4j/include/ops/declarable/generic/images/adjust_contrast.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/adjust_contrast.cpp rename to libnd4j/include/ops/declarable/generic/images/adjust_contrast.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/adjust_hue.cpp b/libnd4j/include/ops/declarable/generic/images/adjust_hue.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/adjust_hue.cpp rename to libnd4j/include/ops/declarable/generic/images/adjust_hue.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/adjust_saturation.cpp b/libnd4j/include/ops/declarable/generic/images/adjust_saturation.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/adjust_saturation.cpp rename to libnd4j/include/ops/declarable/generic/images/adjust_saturation.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/crop_and_resize.cpp b/libnd4j/include/ops/declarable/generic/images/crop_and_resize.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/crop_and_resize.cpp rename to libnd4j/include/ops/declarable/generic/images/crop_and_resize.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/draw_bounding_boxes.cpp b/libnd4j/include/ops/declarable/generic/images/draw_bounding_boxes.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/draw_bounding_boxes.cpp rename to libnd4j/include/ops/declarable/generic/images/draw_bounding_boxes.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/extract_image_patches.cpp b/libnd4j/include/ops/declarable/generic/images/extract_image_patches.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/extract_image_patches.cpp rename to libnd4j/include/ops/declarable/generic/images/extract_image_patches.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/image_resize.cpp b/libnd4j/include/ops/declarable/generic/images/image_resize.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/image_resize.cpp rename to libnd4j/include/ops/declarable/generic/images/image_resize.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/resize_area.cpp b/libnd4j/include/ops/declarable/generic/images/resize_area.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/resize_area.cpp rename to libnd4j/include/ops/declarable/generic/images/resize_area.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/resize_bicubic.cpp b/libnd4j/include/ops/declarable/generic/images/resize_bicubic.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/resize_bicubic.cpp rename to libnd4j/include/ops/declarable/generic/images/resize_bicubic.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/resize_linear.cpp b/libnd4j/include/ops/declarable/generic/images/resize_linear.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/resize_linear.cpp rename to libnd4j/include/ops/declarable/generic/images/resize_linear.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/resize_neighbor.cpp b/libnd4j/include/ops/declarable/generic/images/resize_neighbor.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/resize_neighbor.cpp rename to libnd4j/include/ops/declarable/generic/images/resize_neighbor.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/betaInc.cpp b/libnd4j/include/ops/declarable/generic/linalg/betaInc.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/betaInc.cpp rename to libnd4j/include/ops/declarable/generic/linalg/betaInc.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/cholesky.cpp b/libnd4j/include/ops/declarable/generic/linalg/cholesky.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/cholesky.cpp rename to libnd4j/include/ops/declarable/generic/linalg/cholesky.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/cross.cpp b/libnd4j/include/ops/declarable/generic/linalg/cross.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/cross.cpp rename to libnd4j/include/ops/declarable/generic/linalg/cross.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/diag.cpp b/libnd4j/include/ops/declarable/generic/linalg/diag.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/diag.cpp rename to libnd4j/include/ops/declarable/generic/linalg/diag.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/diagPart.cpp b/libnd4j/include/ops/declarable/generic/linalg/diagPart.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/diagPart.cpp rename to libnd4j/include/ops/declarable/generic/linalg/diagPart.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/digamma.cpp b/libnd4j/include/ops/declarable/generic/linalg/digamma.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/digamma.cpp rename to libnd4j/include/ops/declarable/generic/linalg/digamma.cpp diff --git a/libnd4j/include/ops/declarable/generic/transforms/eye.cpp b/libnd4j/include/ops/declarable/generic/linalg/eye.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/transforms/eye.cpp rename to libnd4j/include/ops/declarable/generic/linalg/eye.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/lgamma.cpp b/libnd4j/include/ops/declarable/generic/linalg/lgamma.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/lgamma.cpp rename to libnd4j/include/ops/declarable/generic/linalg/lgamma.cpp diff --git a/libnd4j/include/ops/declarable/generic/transforms/log1p.cpp b/libnd4j/include/ops/declarable/generic/linalg/log1p.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/transforms/log1p.cpp rename to libnd4j/include/ops/declarable/generic/linalg/log1p.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/lstsq.cpp b/libnd4j/include/ops/declarable/generic/linalg/lstsq.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/lstsq.cpp rename to libnd4j/include/ops/declarable/generic/linalg/lstsq.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/lup.cpp b/libnd4j/include/ops/declarable/generic/linalg/lup.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/lup.cpp rename to libnd4j/include/ops/declarable/generic/linalg/lup.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/matrixDiagPart.cpp b/libnd4j/include/ops/declarable/generic/linalg/matrixDiagPart.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/matrixDiagPart.cpp rename to libnd4j/include/ops/declarable/generic/linalg/matrixDiagPart.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/matrixSetDiag.cpp b/libnd4j/include/ops/declarable/generic/linalg/matrixSetDiag.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/matrixSetDiag.cpp rename to libnd4j/include/ops/declarable/generic/linalg/matrixSetDiag.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/matrix_band_part.cpp b/libnd4j/include/ops/declarable/generic/linalg/matrix_band_part.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/matrix_band_part.cpp rename to libnd4j/include/ops/declarable/generic/linalg/matrix_band_part.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/matrix_determinant.cpp b/libnd4j/include/ops/declarable/generic/linalg/matrix_determinant.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/matrix_determinant.cpp rename to libnd4j/include/ops/declarable/generic/linalg/matrix_determinant.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/matrix_diag.cpp b/libnd4j/include/ops/declarable/generic/linalg/matrix_diag.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/matrix_diag.cpp rename to libnd4j/include/ops/declarable/generic/linalg/matrix_diag.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/matrix_inverse.cpp b/libnd4j/include/ops/declarable/generic/linalg/matrix_inverse.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/matrix_inverse.cpp rename to libnd4j/include/ops/declarable/generic/linalg/matrix_inverse.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/moments.cpp b/libnd4j/include/ops/declarable/generic/linalg/moments.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/moments.cpp rename to libnd4j/include/ops/declarable/generic/linalg/moments.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/polygamma.cpp b/libnd4j/include/ops/declarable/generic/linalg/polygamma.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/polygamma.cpp rename to libnd4j/include/ops/declarable/generic/linalg/polygamma.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/qr.cpp b/libnd4j/include/ops/declarable/generic/linalg/qr.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/qr.cpp rename to libnd4j/include/ops/declarable/generic/linalg/qr.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/solve.cpp b/libnd4j/include/ops/declarable/generic/linalg/solve.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/solve.cpp rename to libnd4j/include/ops/declarable/generic/linalg/solve.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/sufficient_statistics.cpp b/libnd4j/include/ops/declarable/generic/linalg/sufficient_statistics.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/sufficient_statistics.cpp rename to libnd4j/include/ops/declarable/generic/linalg/sufficient_statistics.cpp diff --git a/libnd4j/include/ops/declarable/generic/transforms/trace.cpp b/libnd4j/include/ops/declarable/generic/linalg/trace.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/transforms/trace.cpp rename to libnd4j/include/ops/declarable/generic/linalg/trace.cpp diff --git a/libnd4j/include/ops/declarable/generic/transforms/tri.cpp b/libnd4j/include/ops/declarable/generic/linalg/tri.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/transforms/tri.cpp rename to libnd4j/include/ops/declarable/generic/linalg/tri.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/triangular_solve.cpp b/libnd4j/include/ops/declarable/generic/linalg/triangular_solve.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/triangular_solve.cpp rename to libnd4j/include/ops/declarable/generic/linalg/triangular_solve.cpp diff --git a/libnd4j/include/ops/declarable/generic/transforms/triu.cpp b/libnd4j/include/ops/declarable/generic/linalg/triu.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/transforms/triu.cpp rename to libnd4j/include/ops/declarable/generic/linalg/triu.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/zeta.cpp b/libnd4j/include/ops/declarable/generic/linalg/zeta.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/zeta.cpp rename to libnd4j/include/ops/declarable/generic/linalg/zeta.cpp diff --git a/libnd4j/include/ops/declarable/generic/activations/crelu.cpp b/libnd4j/include/ops/declarable/generic/nn/activations/crelu.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/activations/crelu.cpp rename to libnd4j/include/ops/declarable/generic/nn/activations/crelu.cpp diff --git a/libnd4j/include/ops/declarable/generic/activations/cube.cpp b/libnd4j/include/ops/declarable/generic/nn/activations/cube.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/activations/cube.cpp rename to libnd4j/include/ops/declarable/generic/nn/activations/cube.cpp diff --git a/libnd4j/include/ops/declarable/generic/activations/elu.cpp b/libnd4j/include/ops/declarable/generic/nn/activations/elu.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/activations/elu.cpp rename to libnd4j/include/ops/declarable/generic/nn/activations/elu.cpp diff --git a/libnd4j/include/ops/declarable/generic/activations/hardsigmoid.cpp b/libnd4j/include/ops/declarable/generic/nn/activations/hardsigmoid.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/activations/hardsigmoid.cpp rename to libnd4j/include/ops/declarable/generic/nn/activations/hardsigmoid.cpp diff --git a/libnd4j/include/ops/declarable/generic/activations/hardtanh.cpp b/libnd4j/include/ops/declarable/generic/nn/activations/hardtanh.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/activations/hardtanh.cpp rename to libnd4j/include/ops/declarable/generic/nn/activations/hardtanh.cpp diff --git a/libnd4j/include/ops/declarable/generic/activations/identity.cpp b/libnd4j/include/ops/declarable/generic/nn/activations/identity.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/activations/identity.cpp rename to libnd4j/include/ops/declarable/generic/nn/activations/identity.cpp diff --git a/libnd4j/include/ops/declarable/generic/activations/identity_n.cpp b/libnd4j/include/ops/declarable/generic/nn/activations/identity_n.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/activations/identity_n.cpp rename to libnd4j/include/ops/declarable/generic/nn/activations/identity_n.cpp diff --git a/libnd4j/include/ops/declarable/generic/activations/lrelu.cpp b/libnd4j/include/ops/declarable/generic/nn/activations/lrelu.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/activations/lrelu.cpp rename to libnd4j/include/ops/declarable/generic/nn/activations/lrelu.cpp diff --git a/libnd4j/include/ops/declarable/generic/activations/prelu.cpp b/libnd4j/include/ops/declarable/generic/nn/activations/prelu.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/activations/prelu.cpp rename to libnd4j/include/ops/declarable/generic/nn/activations/prelu.cpp diff --git a/libnd4j/include/ops/declarable/generic/activations/rationaltanh.cpp b/libnd4j/include/ops/declarable/generic/nn/activations/rationaltanh.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/activations/rationaltanh.cpp rename to libnd4j/include/ops/declarable/generic/nn/activations/rationaltanh.cpp diff --git a/libnd4j/include/ops/declarable/generic/activations/rectifiedtanh.cpp b/libnd4j/include/ops/declarable/generic/nn/activations/rectifiedtanh.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/activations/rectifiedtanh.cpp rename to libnd4j/include/ops/declarable/generic/nn/activations/rectifiedtanh.cpp diff --git a/libnd4j/include/ops/declarable/generic/activations/relu.cpp b/libnd4j/include/ops/declarable/generic/nn/activations/relu.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/activations/relu.cpp rename to libnd4j/include/ops/declarable/generic/nn/activations/relu.cpp diff --git a/libnd4j/include/ops/declarable/generic/activations/relu6.cpp b/libnd4j/include/ops/declarable/generic/nn/activations/relu6.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/activations/relu6.cpp rename to libnd4j/include/ops/declarable/generic/nn/activations/relu6.cpp diff --git a/libnd4j/include/ops/declarable/generic/activations/selu.cpp b/libnd4j/include/ops/declarable/generic/nn/activations/selu.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/activations/selu.cpp rename to libnd4j/include/ops/declarable/generic/nn/activations/selu.cpp diff --git a/libnd4j/include/ops/declarable/generic/activations/sigmoid.cpp b/libnd4j/include/ops/declarable/generic/nn/activations/sigmoid.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/activations/sigmoid.cpp rename to libnd4j/include/ops/declarable/generic/nn/activations/sigmoid.cpp diff --git a/libnd4j/include/ops/declarable/generic/activations/softplus.cpp b/libnd4j/include/ops/declarable/generic/nn/activations/softplus.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/activations/softplus.cpp rename to libnd4j/include/ops/declarable/generic/nn/activations/softplus.cpp diff --git a/libnd4j/include/ops/declarable/generic/activations/softsign.cpp b/libnd4j/include/ops/declarable/generic/nn/activations/softsign.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/activations/softsign.cpp rename to libnd4j/include/ops/declarable/generic/nn/activations/softsign.cpp diff --git a/libnd4j/include/ops/declarable/generic/activations/tanh.cpp b/libnd4j/include/ops/declarable/generic/nn/activations/tanh.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/activations/tanh.cpp rename to libnd4j/include/ops/declarable/generic/nn/activations/tanh.cpp diff --git a/libnd4j/include/ops/declarable/generic/activations/thresholdedrelu.cpp b/libnd4j/include/ops/declarable/generic/nn/activations/thresholdedrelu.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/activations/thresholdedrelu.cpp rename to libnd4j/include/ops/declarable/generic/nn/activations/thresholdedrelu.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/bias_add.cpp b/libnd4j/include/ops/declarable/generic/nn/bias_add.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/bias_add.cpp rename to libnd4j/include/ops/declarable/generic/nn/bias_add.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/embedding_lookup.cpp b/libnd4j/include/ops/declarable/generic/nn/embedding_lookup.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/embedding_lookup.cpp rename to libnd4j/include/ops/declarable/generic/nn/embedding_lookup.cpp diff --git a/libnd4j/include/ops/declarable/generic/transforms/layer_norm.cpp b/libnd4j/include/ops/declarable/generic/nn/layer_norm.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/transforms/layer_norm.cpp rename to libnd4j/include/ops/declarable/generic/nn/layer_norm.cpp diff --git a/libnd4j/include/ops/declarable/generic/recurrent/dynamicBidirectionalRNN.cpp b/libnd4j/include/ops/declarable/generic/nn/recurrent/dynamicBidirectionalRNN.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/recurrent/dynamicBidirectionalRNN.cpp rename to libnd4j/include/ops/declarable/generic/nn/recurrent/dynamicBidirectionalRNN.cpp diff --git a/libnd4j/include/ops/declarable/generic/recurrent/dynamicRNN.cpp b/libnd4j/include/ops/declarable/generic/nn/recurrent/dynamicRNN.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/recurrent/dynamicRNN.cpp rename to libnd4j/include/ops/declarable/generic/nn/recurrent/dynamicRNN.cpp diff --git a/libnd4j/include/ops/declarable/generic/recurrent/gru.cpp b/libnd4j/include/ops/declarable/generic/nn/recurrent/gru.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/recurrent/gru.cpp rename to libnd4j/include/ops/declarable/generic/nn/recurrent/gru.cpp diff --git a/libnd4j/include/ops/declarable/generic/recurrent/gruCell.cpp b/libnd4j/include/ops/declarable/generic/nn/recurrent/gruCell.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/recurrent/gruCell.cpp rename to libnd4j/include/ops/declarable/generic/nn/recurrent/gruCell.cpp diff --git a/libnd4j/include/ops/declarable/generic/recurrent/lstm.cpp b/libnd4j/include/ops/declarable/generic/nn/recurrent/lstm.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/recurrent/lstm.cpp rename to libnd4j/include/ops/declarable/generic/nn/recurrent/lstm.cpp diff --git a/libnd4j/include/ops/declarable/generic/recurrent/lstmBlock.cpp b/libnd4j/include/ops/declarable/generic/nn/recurrent/lstmBlock.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/recurrent/lstmBlock.cpp rename to libnd4j/include/ops/declarable/generic/nn/recurrent/lstmBlock.cpp diff --git a/libnd4j/include/ops/declarable/generic/recurrent/lstmBlockCell.cpp b/libnd4j/include/ops/declarable/generic/nn/recurrent/lstmBlockCell.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/recurrent/lstmBlockCell.cpp rename to libnd4j/include/ops/declarable/generic/nn/recurrent/lstmBlockCell.cpp diff --git a/libnd4j/include/ops/declarable/generic/recurrent/lstmCell.cpp b/libnd4j/include/ops/declarable/generic/nn/recurrent/lstmCell.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/recurrent/lstmCell.cpp rename to libnd4j/include/ops/declarable/generic/nn/recurrent/lstmCell.cpp diff --git a/libnd4j/include/ops/declarable/generic/recurrent/lstmLayer.cpp b/libnd4j/include/ops/declarable/generic/nn/recurrent/lstmLayer.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/recurrent/lstmLayer.cpp rename to libnd4j/include/ops/declarable/generic/nn/recurrent/lstmLayer.cpp diff --git a/libnd4j/include/ops/declarable/generic/recurrent/sru.cpp b/libnd4j/include/ops/declarable/generic/nn/recurrent/sru.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/recurrent/sru.cpp rename to libnd4j/include/ops/declarable/generic/nn/recurrent/sru.cpp diff --git a/libnd4j/include/ops/declarable/generic/recurrent/sruCell.cpp b/libnd4j/include/ops/declarable/generic/nn/recurrent/sruCell.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/recurrent/sruCell.cpp rename to libnd4j/include/ops/declarable/generic/nn/recurrent/sruCell.cpp diff --git a/libnd4j/include/ops/declarable/generic/recurrent/staticBidirectionalRNN.cpp b/libnd4j/include/ops/declarable/generic/nn/recurrent/staticBidirectionalRNN.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/recurrent/staticBidirectionalRNN.cpp rename to libnd4j/include/ops/declarable/generic/nn/recurrent/staticBidirectionalRNN.cpp diff --git a/libnd4j/include/ops/declarable/generic/recurrent/staticRNN.cpp b/libnd4j/include/ops/declarable/generic/nn/recurrent/staticRNN.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/recurrent/staticRNN.cpp rename to libnd4j/include/ops/declarable/generic/nn/recurrent/staticRNN.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/xw_plus_b.cpp b/libnd4j/include/ops/declarable/generic/nn/xw_plus_b.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/xw_plus_b.cpp rename to libnd4j/include/ops/declarable/generic/nn/xw_plus_b.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/dropout.cpp b/libnd4j/include/ops/declarable/generic/random/dropout.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/dropout.cpp rename to libnd4j/include/ops/declarable/generic/random/dropout.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/argmax.cpp b/libnd4j/include/ops/declarable/generic/reduce/argmax.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/argmax.cpp rename to libnd4j/include/ops/declarable/generic/reduce/argmax.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/argmin.cpp b/libnd4j/include/ops/declarable/generic/reduce/argmin.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/argmin.cpp rename to libnd4j/include/ops/declarable/generic/reduce/argmin.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/norm.cpp b/libnd4j/include/ops/declarable/generic/reduce/norm.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/norm.cpp rename to libnd4j/include/ops/declarable/generic/reduce/norm.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/reduceMean.cpp b/libnd4j/include/ops/declarable/generic/reduce/reduceMean.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/reduceMean.cpp rename to libnd4j/include/ops/declarable/generic/reduce/reduceMean.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/reduceStDev.cpp b/libnd4j/include/ops/declarable/generic/reduce/reduceStDev.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/reduceStDev.cpp rename to libnd4j/include/ops/declarable/generic/reduce/reduceStDev.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/reduceVariance.cpp b/libnd4j/include/ops/declarable/generic/reduce/reduceVariance.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/reduceVariance.cpp rename to libnd4j/include/ops/declarable/generic/reduce/reduceVariance.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/reduce_dot.cpp b/libnd4j/include/ops/declarable/generic/reduce/reduce_dot.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/reduce_dot.cpp rename to libnd4j/include/ops/declarable/generic/reduce/reduce_dot.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/reduce_logsumexp.cpp b/libnd4j/include/ops/declarable/generic/reduce/reduce_logsumexp.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/reduce_logsumexp.cpp rename to libnd4j/include/ops/declarable/generic/reduce/reduce_logsumexp.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/reduce_max.cpp b/libnd4j/include/ops/declarable/generic/reduce/reduce_max.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/reduce_max.cpp rename to libnd4j/include/ops/declarable/generic/reduce/reduce_max.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/reduce_min.cpp b/libnd4j/include/ops/declarable/generic/reduce/reduce_min.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/reduce_min.cpp rename to libnd4j/include/ops/declarable/generic/reduce/reduce_min.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/reduce_norm1.cpp b/libnd4j/include/ops/declarable/generic/reduce/reduce_norm1.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/reduce_norm1.cpp rename to libnd4j/include/ops/declarable/generic/reduce/reduce_norm1.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/reduce_norm2.cpp b/libnd4j/include/ops/declarable/generic/reduce/reduce_norm2.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/reduce_norm2.cpp rename to libnd4j/include/ops/declarable/generic/reduce/reduce_norm2.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/reduce_norm_max.cpp b/libnd4j/include/ops/declarable/generic/reduce/reduce_norm_max.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/reduce_norm_max.cpp rename to libnd4j/include/ops/declarable/generic/reduce/reduce_norm_max.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/reduce_prod.cpp b/libnd4j/include/ops/declarable/generic/reduce/reduce_prod.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/reduce_prod.cpp rename to libnd4j/include/ops/declarable/generic/reduce/reduce_prod.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/reduce_sqnorm.cpp b/libnd4j/include/ops/declarable/generic/reduce/reduce_sqnorm.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/reduce_sqnorm.cpp rename to libnd4j/include/ops/declarable/generic/reduce/reduce_sqnorm.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/reduce_sum.cpp b/libnd4j/include/ops/declarable/generic/reduce/reduce_sum.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/reduce_sum.cpp rename to libnd4j/include/ops/declarable/generic/reduce/reduce_sum.cpp diff --git a/libnd4j/include/ops/declarable/generic/transforms/flatten.cpp b/libnd4j/include/ops/declarable/generic/shape/flatten.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/transforms/flatten.cpp rename to libnd4j/include/ops/declarable/generic/shape/flatten.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/rank.cpp b/libnd4j/include/ops/declarable/generic/shape/rank.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/rank.cpp rename to libnd4j/include/ops/declarable/generic/shape/rank.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/size.cpp b/libnd4j/include/ops/declarable/generic/shape/size.cpp similarity index 97% rename from libnd4j/include/ops/declarable/generic/parity_ops/size.cpp rename to libnd4j/include/ops/declarable/generic/shape/size.cpp index d31e782c6..fd76548cb 100644 --- a/libnd4j/include/ops/declarable/generic/parity_ops/size.cpp +++ b/libnd4j/include/ops/declarable/generic/shape/size.cpp @@ -32,7 +32,6 @@ namespace sd { REQUIRE_TRUE(output->isScalar(), 0, "Size output should be scalar"); output->p(0, input->lengthOf()); - output->syncToDevice(); return Status::OK(); } diff --git a/libnd4j/include/ops/declarable/generic/shape/create.cpp b/libnd4j/include/ops/declarable/generic/tensor/create.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/shape/create.cpp rename to libnd4j/include/ops/declarable/generic/tensor/create.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/fill.cpp b/libnd4j/include/ops/declarable/generic/tensor/fill.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/fill.cpp rename to libnd4j/include/ops/declarable/generic/tensor/fill.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/fill_as.cpp b/libnd4j/include/ops/declarable/generic/tensor/fill_as.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/fill_as.cpp rename to libnd4j/include/ops/declarable/generic/tensor/fill_as.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/lin_space.cpp b/libnd4j/include/ops/declarable/generic/tensor/lin_space.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/lin_space.cpp rename to libnd4j/include/ops/declarable/generic/tensor/lin_space.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/ones_as.cpp b/libnd4j/include/ops/declarable/generic/tensor/ones_as.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/ones_as.cpp rename to libnd4j/include/ops/declarable/generic/tensor/ones_as.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/range.cpp b/libnd4j/include/ops/declarable/generic/tensor/range.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/range.cpp rename to libnd4j/include/ops/declarable/generic/tensor/range.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/strided_slice.cpp b/libnd4j/include/ops/declarable/generic/tensor/strided_slice.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/strided_slice.cpp rename to libnd4j/include/ops/declarable/generic/tensor/strided_slice.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/zeros_as.cpp b/libnd4j/include/ops/declarable/generic/tensor/zeros_as.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/zeros_as.cpp rename to libnd4j/include/ops/declarable/generic/tensor/zeros_as.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/batch_to_space.cpp b/libnd4j/include/ops/declarable/generic/transforms/batch_to_space.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/batch_to_space.cpp rename to libnd4j/include/ops/declarable/generic/transforms/batch_to_space.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/batch_to_space_nd.cpp b/libnd4j/include/ops/declarable/generic/transforms/batch_to_space_nd.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/batch_to_space_nd.cpp rename to libnd4j/include/ops/declarable/generic/transforms/batch_to_space_nd.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/depth_to_space.cpp b/libnd4j/include/ops/declarable/generic/transforms/depth_to_space.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/depth_to_space.cpp rename to libnd4j/include/ops/declarable/generic/transforms/depth_to_space.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/dynamic_parititon.cpp b/libnd4j/include/ops/declarable/generic/transforms/dynamic_parititon.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/dynamic_parititon.cpp rename to libnd4j/include/ops/declarable/generic/transforms/dynamic_parititon.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/dynamic_stitch.cpp b/libnd4j/include/ops/declarable/generic/transforms/dynamic_stitch.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/dynamic_stitch.cpp rename to libnd4j/include/ops/declarable/generic/transforms/dynamic_stitch.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/parallelStack.cpp b/libnd4j/include/ops/declarable/generic/transforms/parallelStack.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/parallelStack.cpp rename to libnd4j/include/ops/declarable/generic/transforms/parallelStack.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/scatter_add.cpp b/libnd4j/include/ops/declarable/generic/transforms/scatter_add.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/scatter_add.cpp rename to libnd4j/include/ops/declarable/generic/transforms/scatter_add.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/scatter_div.cpp b/libnd4j/include/ops/declarable/generic/transforms/scatter_div.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/scatter_div.cpp rename to libnd4j/include/ops/declarable/generic/transforms/scatter_div.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/scatter_max.cpp b/libnd4j/include/ops/declarable/generic/transforms/scatter_max.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/scatter_max.cpp rename to libnd4j/include/ops/declarable/generic/transforms/scatter_max.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/scatter_min.cpp b/libnd4j/include/ops/declarable/generic/transforms/scatter_min.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/scatter_min.cpp rename to libnd4j/include/ops/declarable/generic/transforms/scatter_min.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/scatter_mul.cpp b/libnd4j/include/ops/declarable/generic/transforms/scatter_mul.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/scatter_mul.cpp rename to libnd4j/include/ops/declarable/generic/transforms/scatter_mul.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/scatter_nd.cpp b/libnd4j/include/ops/declarable/generic/transforms/scatter_nd.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/scatter_nd.cpp rename to libnd4j/include/ops/declarable/generic/transforms/scatter_nd.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/scatter_nd_add.cpp b/libnd4j/include/ops/declarable/generic/transforms/scatter_nd_add.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/scatter_nd_add.cpp rename to libnd4j/include/ops/declarable/generic/transforms/scatter_nd_add.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/scatter_nd_sub.cpp b/libnd4j/include/ops/declarable/generic/transforms/scatter_nd_sub.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/scatter_nd_sub.cpp rename to libnd4j/include/ops/declarable/generic/transforms/scatter_nd_sub.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/scatter_nd_update.cpp b/libnd4j/include/ops/declarable/generic/transforms/scatter_nd_update.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/scatter_nd_update.cpp rename to libnd4j/include/ops/declarable/generic/transforms/scatter_nd_update.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/scatter_sub.cpp b/libnd4j/include/ops/declarable/generic/transforms/scatter_sub.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/scatter_sub.cpp rename to libnd4j/include/ops/declarable/generic/transforms/scatter_sub.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/scatter_upd.cpp b/libnd4j/include/ops/declarable/generic/transforms/scatter_upd.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/scatter_upd.cpp rename to libnd4j/include/ops/declarable/generic/transforms/scatter_upd.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/slice.cpp b/libnd4j/include/ops/declarable/generic/transforms/slice.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/slice.cpp rename to libnd4j/include/ops/declarable/generic/transforms/slice.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/space_to_batch.cpp b/libnd4j/include/ops/declarable/generic/transforms/space_to_batch.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/space_to_batch.cpp rename to libnd4j/include/ops/declarable/generic/transforms/space_to_batch.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/space_to_batch_nd.cpp b/libnd4j/include/ops/declarable/generic/transforms/space_to_batch_nd.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/space_to_batch_nd.cpp rename to libnd4j/include/ops/declarable/generic/transforms/space_to_batch_nd.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/space_to_depth.cpp b/libnd4j/include/ops/declarable/generic/transforms/space_to_depth.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/space_to_depth.cpp rename to libnd4j/include/ops/declarable/generic/transforms/space_to_depth.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/split.cpp b/libnd4j/include/ops/declarable/generic/transforms/split.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/split.cpp rename to libnd4j/include/ops/declarable/generic/transforms/split.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/split_v.cpp b/libnd4j/include/ops/declarable/generic/transforms/split_v.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/split_v.cpp rename to libnd4j/include/ops/declarable/generic/transforms/split_v.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/stack.cpp b/libnd4j/include/ops/declarable/generic/transforms/stack.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/stack.cpp rename to libnd4j/include/ops/declarable/generic/transforms/stack.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/tear.cpp b/libnd4j/include/ops/declarable/generic/transforms/tear.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/tear.cpp rename to libnd4j/include/ops/declarable/generic/transforms/tear.cpp diff --git a/libnd4j/include/ops/declarable/generic/parity_ops/unstack.cpp b/libnd4j/include/ops/declarable/generic/transforms/unstack.cpp similarity index 100% rename from libnd4j/include/ops/declarable/generic/parity_ops/unstack.cpp rename to libnd4j/include/ops/declarable/generic/transforms/unstack.cpp