.. index:: pair: group; Shuffle .. _doxid-group__dnnl__api__shuffle: Shuffle ======= .. toctree:: :hidden: struct_dnnl_shuffle_backward.rst struct_dnnl_shuffle_forward.rst Overview ~~~~~~~~ A primitive to shuffle tensor data along an axis. :ref:`More...` .. ref-code-block:: cpp :class: doxyrest-overview-code-block // structs struct :ref:`dnnl::shuffle_backward`; struct :ref:`dnnl::shuffle_forward`; // global functions :ref:`dnnl_status_t` DNNL_API :ref:`dnnl_shuffle_forward_primitive_desc_create`( :ref:`dnnl_primitive_desc_t`* primitive_desc, :ref:`dnnl_engine_t` engine, :ref:`dnnl_prop_kind_t` prop_kind, :ref:`const_dnnl_memory_desc_t` src_desc, :ref:`const_dnnl_memory_desc_t` dst_desc, int axis, :ref:`dnnl_dim_t` group_size, :ref:`const_dnnl_primitive_attr_t` attr ); :ref:`dnnl_status_t` DNNL_API :ref:`dnnl_shuffle_backward_primitive_desc_create`( :ref:`dnnl_primitive_desc_t`* primitive_desc, :ref:`dnnl_engine_t` engine, :ref:`const_dnnl_memory_desc_t` diff_src_desc, :ref:`const_dnnl_memory_desc_t` diff_dst_desc, int axis, :ref:`dnnl_dim_t` group_size, :ref:`const_dnnl_primitive_desc_t` hint_fwd_pd, :ref:`const_dnnl_primitive_attr_t` attr ); .. _details-group__dnnl__api__shuffle: Detailed Documentation ~~~~~~~~~~~~~~~~~~~~~~ A primitive to shuffle tensor data along an axis. .. rubric:: See also: :ref:`Shuffle ` in developer guide Global Functions ---------------- .. index:: pair: function; dnnl_shuffle_forward_primitive_desc_create .. _doxid-group__dnnl__api__shuffle_1gaab9289838e10ee76966173e20dd24562: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`dnnl_status_t` DNNL_API dnnl_shuffle_forward_primitive_desc_create( :ref:`dnnl_primitive_desc_t`* primitive_desc, :ref:`dnnl_engine_t` engine, :ref:`dnnl_prop_kind_t` prop_kind, :ref:`const_dnnl_memory_desc_t` src_desc, :ref:`const_dnnl_memory_desc_t` dst_desc, int axis, :ref:`dnnl_dim_t` group_size, :ref:`const_dnnl_primitive_attr_t` attr ) Creates a primitive descriptor for a shuffle forward propagation primitive. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - primitive_desc - Output primitive descriptor. * - engine - Engine to use. * - prop_kind - Propagation kind. Possible values are :ref:`dnnl_forward_training ` and :ref:`dnnl_forward_inference `. * - src_desc - Source memory descriptor. * - dst_desc - Destination memory descriptor. * - axis - The axis along which the data is shuffled. * - group_size - Shuffle group size. * - attr - Primitive attributes (can be NULL). .. rubric:: Returns: :ref:`dnnl_success ` on success and a status describing the error otherwise. .. index:: pair: function; dnnl_shuffle_backward_primitive_desc_create .. _doxid-group__dnnl__api__shuffle_1ga2edc80cc4334ec0aba0c6ad5d9d5bcd6: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`dnnl_status_t` DNNL_API dnnl_shuffle_backward_primitive_desc_create( :ref:`dnnl_primitive_desc_t`* primitive_desc, :ref:`dnnl_engine_t` engine, :ref:`const_dnnl_memory_desc_t` diff_src_desc, :ref:`const_dnnl_memory_desc_t` diff_dst_desc, int axis, :ref:`dnnl_dim_t` group_size, :ref:`const_dnnl_primitive_desc_t` hint_fwd_pd, :ref:`const_dnnl_primitive_attr_t` attr ) Creates a primitive descriptor for a shuffle backward propagation primitive. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - primitive_desc - Output primitive descriptor. * - engine - Engine to use. * - diff_src_desc - Diff source memory descriptor. * - diff_dst_desc - Diff destination memory descriptor. * - axis - The axis along which the data is shuffled. * - group_size - Shuffle group size. * - hint_fwd_pd - Primitive descriptor for a respective forward propagation primitive. * - attr - Primitive attributes (can be NULL). .. rubric:: Returns: :ref:`dnnl_success ` on success and a status describing the error otherwise.