/home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-miopen/checkouts/docs-6.2.0/include/miopen/miopen.h

/home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-miopen/checkouts/docs-6.2.0/include/miopen/miopen.h#

MIOpen: /home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-miopen/checkouts/docs-6.2.0/include/miopen/miopen.h
/home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-miopen/checkouts/docs-6.2.0/include/miopen/miopen.h

Fuse two problems into a single one. Problems can be either regular, or fused. No problems are disposed in the process, so the problem2 should be destroyed manually if it is not needed anymore.

miopenProblem_t problem = makeSomeProblem1(); miopenProblem_t problem2 = makeSomeProblem2(); miopenProblem_t problem3 = makeSomeProblem3(); miopenFuseProblems(problem, problem2); // Now problem contains {problem1, problem2} miopenFuseProblems(problem, problem3); // Now problem contains {problem1, problem2, problem3} miopenDestroyProblem(problem2); miopenDestroyProblem(problem3);

Note
As of now there is no way to actually get any solution for this kind of problems.
Parameters
problem1The first problem to fuse. The result would be stored here.
problem2The second problem to fuse.
Returns
miopenStatus_t
/*******************************************************************************
*
* MIT License
*
* Copyright (c) 2023 Advanced Micro Devices, Inc.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*
*******************************************************************************/
#ifndef MIOPEN_GUARD_MIOPEN_H_
#define MIOPEN_GUARD_MIOPEN_H_
#ifdef __clang__
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wextern-c-compat"
#endif
#include <stddef.h>
#include <stdbool.h>
#include <miopen/config.h>
#include <miopen/export.h>
#if MIOPEN_BACKEND_OPENCL
#define CL_TARGET_OPENCL_VERSION 120
#if defined(__APPLE__) || defined(__MACOSX)
#include <OpenCL/cl.h>
#else
#define CL_USE_DEPRECATED_OPENCL_1_2_APIS
#include <CL/cl.h>
#endif
#elif MIOPEN_BACKEND_HIP
#include <hip/hip_runtime_api.h>
#endif
/*
* @defgroup convolutions
* @defgroup pooling
* @defgroup handle
* @defgroup layernorm
* @defgroup LRN
* @defgroup batchnorm
* @defgroup activation
* @defgroup tensor
* @defgroup softmax
* @defgroup RNN
* @defgroup fusion
* @defgroup LossFunction
* @defgroup TensorReduce
* @defgroup find2
* @defgroup sum
* @defgroup ReduceExtreme
* @defgroup groupnorm
* @defgroup cat
* @defgroup SGD
*
*/
#define MIOPEN_DECLARE_OBJECT(name) \
struct name \
{ \
}; \
typedef struct name* name##_t;
#ifdef __cplusplus
extern "C" {
#endif
#if MIOPEN_BACKEND_OPENCL
typedef cl_command_queue miopenAcceleratorQueue_t;
#elif MIOPEN_BACKEND_HIP
typedef hipStream_t miopenAcceleratorQueue_t;
#endif
MIOPEN_DECLARE_OBJECT(miopenHandle);
typedef enum
{
#ifdef MIOPEN_BETA_API
typedef enum
{
#endif
MIOPEN_EXPORT const char* miopenGetErrorString(miopenStatus_t error);
typedef void* (*miopenAllocatorFunction)(void* context, size_t sizeBytes);
typedef void (*miopenDeallocatorFunction)(void* context, void* memory);
MIOPEN_EXPORT miopenStatus_t miopenGetVersion(size_t* major, size_t* minor, size_t* patch);
MIOPEN_EXPORT miopenStatus_t miopenCreate(miopenHandle_t* handle);
MIOPEN_EXPORT miopenStatus_t miopenCreateWithStream(miopenHandle_t* handle,
miopenAcceleratorQueue_t stream);
MIOPEN_EXPORT miopenStatus_t miopenDestroy(miopenHandle_t handle);
MIOPEN_EXPORT miopenStatus_t miopenSetStream(miopenHandle_t handle,
miopenAcceleratorQueue_t streamID);
MIOPEN_EXPORT miopenStatus_t miopenGetStream(miopenHandle_t handle,
miopenAcceleratorQueue_t* streamID);
MIOPEN_EXPORT miopenStatus_t miopenSetAllocator(miopenHandle_t handle,
void* allocatorContext);
MIOPEN_EXPORT miopenStatus_t miopenGetKernelTime(miopenHandle_t handle, float* time);
MIOPEN_EXPORT miopenStatus_t miopenEnableProfiling(miopenHandle_t handle, bool enable);
// CLOSEOUT HANDLE DOXYGEN GROUP
MIOPEN_DECLARE_OBJECT(miopenFusionOpDescriptor);
MIOPEN_DECLARE_OBJECT(miopenTensorDescriptor);
MIOPEN_DECLARE_OBJECT(miopenSeqTensorDescriptor);
MIOPEN_DECLARE_OBJECT(miopenConvolutionDescriptor);
MIOPEN_DECLARE_OBJECT(miopenPoolingDescriptor);
MIOPEN_DECLARE_OBJECT(miopenLRNDescriptor);
MIOPEN_DECLARE_OBJECT(miopenActivationDescriptor);
MIOPEN_DECLARE_OBJECT(miopenRNNDescriptor);
MIOPEN_DECLARE_OBJECT(miopenCTCLossDescriptor);
MIOPEN_DECLARE_OBJECT(miopenDropoutDescriptor);
MIOPEN_DECLARE_OBJECT(miopenReduceTensorDescriptor);
MIOPEN_DECLARE_OBJECT(miopenMhaDescriptor);
MIOPEN_DECLARE_OBJECT(miopenSoftmaxDescriptor);
typedef enum
{
miopenHalf = 0,
miopenInt8 = 3,
// miopenInt8x4 = 4, /*!< Pack of 4x Int8 in NCHW_VECT_C format (Support discontinued) */
#ifdef MIOPEN_BETA_API
#else
// miopenReserved1 = 7,
// miopenReserved2 = 8,
#endif
typedef enum
{
typedef enum
{
typedef enum
{
typedef enum
{
typedef enum
{
typedef enum
{
typedef enum
{
typedef enum
{
#ifdef MIOPEN_BETA_API
typedef enum
{
1,
2,
4,
#endif
typedef enum
{
typedef enum
{
7,
8,
9,
typedef enum
{
typedef enum
{
1,
#define MIOPEN_API_VERSION_REDUCE_TENSOR 1
typedef enum
{
1,
2,
3,
4,
5,
6,
// MIOPEN_REDUCE_TENSOR_MUL_NO_ZEROS =
// 8, /*!< the operation is same as MUL, but does not have the zero values considered */
typedef enum
{
typedef enum
{
typedef enum
{
typedef enum
{
0,
1,
#ifdef MIOPEN_BETA_API
2,
#else
// miopenReserved1 = 2,
#endif
MIOPEN_EXPORT miopenStatus_t miopenCreateTensorDescriptor(miopenTensorDescriptor_t* tensorDesc);
miopenTensorDescriptor_t tensorDesc, miopenDataType_t dataType, int n, int c, int h, int w);
MIOPEN_EXPORT miopenStatus_t
miopenSetNdTensorDescriptorWithLayout(miopenTensorDescriptor_t tensorDesc,
miopenDataType_t dataType,
miopenTensorLayout_t tensorLayout,
const int* lens,
int num_lens);
MIOPEN_EXPORT miopenStatus_t miopenSet4dTensorDescriptorEx(miopenTensorDescriptor_t tensorDesc,
miopenDataType_t dataType,
int n,
int c,
int h,
int w,
int nStride,
int cStride,
int hStride,
int wStride);
MIOPEN_EXPORT miopenStatus_t miopenGet4dTensorDescriptor(miopenTensorDescriptor_t tensorDesc,
miopenDataType_t* dataType,
int* n,
int* c,
int* h,
int* w,
int* nStride,
int* cStride,
int* hStride,
int* wStride);
MIOPEN_EXPORT miopenStatus_t miopenSetTensorDescriptor(miopenTensorDescriptor_t tensorDesc,
miopenDataType_t dataType,
int nbDims,
const int* dimsA,
const int* stridesA);
#ifdef MIOPEN_BETA_API
MIOPEN_EXPORT miopenStatus_t miopenSetTensorDescriptorV2(miopenTensorDescriptor_t tensorDesc,
miopenDataType_t dataType,
int nbDims,
const size_t* dimsA,
const size_t* stridesA);
#endif
#ifdef MIOPEN_BETA_API
MIOPEN_EXPORT miopenStatus_t miopenSetTensorCastType(miopenTensorDescriptor_t tensorDesc,
miopenDataType_t cast_type);
#endif
MIOPEN_EXPORT miopenStatus_t miopenGetTensorDescriptorSize(miopenTensorDescriptor_t tensorDesc,
int* size);
MIOPEN_EXPORT miopenStatus_t miopenGetTensorDescriptor(miopenTensorDescriptor_t tensorDesc,
miopenDataType_t* dataType,
int* dimsA,
int* stridesA);
MIOPEN_EXPORT miopenStatus_t miopenDestroyTensorDescriptor(miopenTensorDescriptor_t tensorDesc);
MIOPEN_EXPORT miopenStatus_t
miopenCreateSeqTensorDescriptor(miopenSeqTensorDescriptor_t* tensorDesc);
MIOPEN_EXPORT miopenStatus_t
miopenDestroySeqTensorDescriptor(miopenSeqTensorDescriptor_t tensorDesc);
MIOPEN_EXPORT miopenStatus_t miopenOpTensor(miopenHandle_t handle,
miopenTensorOp_t tensorOp,
const void* alpha1,
const miopenTensorDescriptor_t aDesc,
const void* A,
const void* alpha2,
const miopenTensorDescriptor_t bDesc,
const void* B,
const void* beta,
const miopenTensorDescriptor_t cDesc,
void* C);
MIOPEN_EXPORT miopenStatus_t miopenSetTensor(miopenHandle_t handle,
const miopenTensorDescriptor_t yDesc,
void* y,
const void* alpha);
MIOPEN_EXPORT miopenStatus_t miopenScaleTensor(miopenHandle_t handle,
const miopenTensorDescriptor_t yDesc,
void* y,
const void* alpha);
MIOPEN_EXPORT miopenStatus_t miopenGetTensorNumBytes(miopenTensorDescriptor_t tensorDesc,
size_t* numBytes);
MIOPEN_EXPORT miopenStatus_t miopenTransformTensor(miopenHandle_t handle,
const void* alpha,
const miopenTensorDescriptor_t xDesc,
const void* x,
const void* beta,
const miopenTensorDescriptor_t yDesc,
void* y);
// CLOSEOUT TENSOR DOXYGEN GROUP
MIOPEN_EXPORT miopenStatus_t
miopenCreateConvolutionDescriptor(miopenConvolutionDescriptor_t* convDesc);
MIOPEN_EXPORT miopenStatus_t miopenInitConvolutionDescriptor(miopenConvolutionDescriptor_t convDesc,
int pad_h,
int pad_w,
int stride_h,
int stride_w,
int dilation_h,
int dilation_w);
MIOPEN_EXPORT miopenStatus_t
miopenInitConvolutionNdDescriptor(miopenConvolutionDescriptor_t convDesc,
int spatialDim,
const int* padA,
const int* strideA,
const int* dilationA,
MIOPEN_EXPORT miopenStatus_t miopenGetConvolutionSpatialDim(miopenConvolutionDescriptor_t convDesc,
int* spatialDim);
MIOPEN_EXPORT miopenStatus_t miopenGetConvolutionDescriptor(miopenConvolutionDescriptor_t convDesc,
int* pad_h,
int* pad_w,
int* stride_h,
int* stride_w,
int* dilation_h,
int* dilation_w);
MIOPEN_EXPORT miopenStatus_t
miopenGetConvolutionNdDescriptor(miopenConvolutionDescriptor_t convDesc,
int requestedSpatialDim,
int* spatialDim,
int* padA,
int* strideA,
int* dilationA,
MIOPEN_EXPORT miopenStatus_t miopenGetConvolutionGroupCount(miopenConvolutionDescriptor_t convDesc,
int* groupCount);
MIOPEN_EXPORT miopenStatus_t miopenSetConvolutionGroupCount(miopenConvolutionDescriptor_t convDesc,
int groupCount);
MIOPEN_EXPORT miopenStatus_t
miopenSetTransposeConvOutputPadding(miopenConvolutionDescriptor_t convDesc, int adj_h, int adj_w);
miopenConvolutionDescriptor_t convDesc, int spatialDim, const int* adjA);
MIOPEN_EXPORT miopenStatus_t
miopenGetConvolutionForwardOutputDim(miopenConvolutionDescriptor_t convDesc,
const miopenTensorDescriptor_t inputTensorDesc,
const miopenTensorDescriptor_t filterDesc,
int* n,
int* c,
int* h,
int* w);
MIOPEN_EXPORT miopenStatus_t
miopenGetConvolutionNdForwardOutputDim(miopenConvolutionDescriptor_t convDesc,
const miopenTensorDescriptor_t inputTensorDesc,
const miopenTensorDescriptor_t filterDesc,
int* nDim,
int* outputTensorDimA);
MIOPEN_EXPORT miopenStatus_t
miopenDestroyConvolutionDescriptor(miopenConvolutionDescriptor_t convDesc);
MIOPEN_EXPORT miopenStatus_t miopenSetConvolutionAttribute(miopenConvolutionDescriptor_t convDesc,
int value);
MIOPEN_EXPORT miopenStatus_t miopenGetConvolutionAttribute(miopenConvolutionDescriptor_t convDesc,
int* value);
typedef enum
{
typedef enum
{
typedef enum
{
4,
typedef enum
{
typedef struct
{
union
{
bwd_data_algo;
};
float time;
size_t memory;
typedef struct
{
float time;
size_t workspace_size;
uint64_t solution_id;
MIOPEN_EXPORT miopenStatus_t
const miopenTensorDescriptor_t wDesc,
const miopenTensorDescriptor_t xDesc,
const miopenConvolutionDescriptor_t convDesc,
const miopenTensorDescriptor_t yDesc,
size_t* solutionCount);
MIOPEN_EXPORT miopenStatus_t
const miopenTensorDescriptor_t wDesc,
const miopenTensorDescriptor_t xDesc,
const miopenConvolutionDescriptor_t convDesc,
const miopenTensorDescriptor_t yDesc,
const size_t maxSolutionCount,
size_t* solutionCount,
miopenConvSolution_t* solutions);
MIOPEN_EXPORT miopenStatus_t
const miopenTensorDescriptor_t wDesc,
const miopenTensorDescriptor_t xDesc,
const miopenConvolutionDescriptor_t convDesc,
const miopenTensorDescriptor_t yDesc,
const uint64_t solution_id,
size_t* workSpaceSize);
MIOPEN_EXPORT miopenStatus_t
const miopenTensorDescriptor_t wDesc,
const miopenTensorDescriptor_t xDesc,
const miopenConvolutionDescriptor_t convDesc,
const miopenTensorDescriptor_t yDesc,
const uint64_t solution_id);
MIOPEN_EXPORT miopenStatus_t
miopenConvolutionForwardImmediate(miopenHandle_t handle,
const miopenTensorDescriptor_t wDesc,
const void* w,
const miopenTensorDescriptor_t xDesc,
const void* x,
const miopenConvolutionDescriptor_t convDesc,
const miopenTensorDescriptor_t yDesc,
void* y,
void* workSpace,
size_t workSpaceSize,
const uint64_t solution_id);
MIOPEN_EXPORT miopenStatus_t
const miopenTensorDescriptor_t dyDesc,
const miopenTensorDescriptor_t wDesc,
const miopenConvolutionDescriptor_t convDesc,
const miopenTensorDescriptor_t dxDesc,
size_t* solutionCount);
MIOPEN_EXPORT miopenStatus_t
const miopenTensorDescriptor_t dyDesc,
const miopenTensorDescriptor_t wDesc,
const miopenConvolutionDescriptor_t convDesc,
const miopenTensorDescriptor_t dxDesc,
const size_t maxSolutionCount,
size_t* solutionCount,
miopenConvSolution_t* solutions);
MIOPEN_EXPORT miopenStatus_t
const miopenTensorDescriptor_t dyDesc,
const miopenTensorDescriptor_t wDesc,
const miopenConvolutionDescriptor_t convDesc,
const miopenTensorDescriptor_t dxDesc,
const uint64_t solution_id,
size_t* workSpaceSize);
MIOPEN_EXPORT miopenStatus_t
const miopenTensorDescriptor_t dyDesc,
const miopenTensorDescriptor_t wDesc,
const miopenConvolutionDescriptor_t convDesc,
const miopenTensorDescriptor_t dxDesc,
const uint64_t solution_id);
MIOPEN_EXPORT miopenStatus_t
const miopenTensorDescriptor_t dyDesc,
const void* dy,
const miopenTensorDescriptor_t wDesc,
const void* w,
const miopenConvolutionDescriptor_t convDesc,
const miopenTensorDescriptor_t dxDesc,
void* dx,
void* workSpace,
size_t workSpaceSize,
const uint64_t solution_id);
MIOPEN_EXPORT miopenStatus_t
const miopenTensorDescriptor_t dyDesc,
const miopenTensorDescriptor_t xDesc,
const miopenConvolutionDescriptor_t convDesc,
const miopenTensorDescriptor_t dwDesc,
size_t* solutionCount);
MIOPEN_EXPORT miopenStatus_t
const miopenTensorDescriptor_t dyDesc,
const miopenTensorDescriptor_t xDesc,
const miopenConvolutionDescriptor_t convDesc,
const miopenTensorDescriptor_t dwDesc,
const size_t maxSolutionCount,
size_t* solutionCount,
miopenConvSolution_t* solutions);
miopenHandle_t handle,
const miopenTensorDescriptor_t dyDesc,
const miopenTensorDescriptor_t xDesc,
const miopenConvolutionDescriptor_t convDesc,
const miopenTensorDescriptor_t dwDesc,
const uint64_t solution_id,
size_t* workSpaceSize);
MIOPEN_EXPORT miopenStatus_t
const miopenTensorDescriptor_t dyDesc,
const miopenTensorDescriptor_t xDesc,
const miopenConvolutionDescriptor_t convDesc,
const miopenTensorDescriptor_t dwDesc,
const uint64_t solution_id);
MIOPEN_EXPORT miopenStatus_t
const miopenTensorDescriptor_t dyDesc,
const void* dy,
const miopenTensorDescriptor_t xDesc,
const void* x,
const miopenConvolutionDescriptor_t convDesc,
const miopenTensorDescriptor_t dwDesc,
void* dw,
void* workSpace,
size_t workSpaceSize,
const uint64_t solution_id);
MIOPEN_EXPORT miopenStatus_t
const miopenTensorDescriptor_t wDesc,
const miopenTensorDescriptor_t xDesc,
const miopenConvolutionDescriptor_t convDesc,
const miopenTensorDescriptor_t yDesc,
size_t* workSpaceSize);
MIOPEN_EXPORT miopenStatus_t
const miopenTensorDescriptor_t xDesc,
const void* x,
const miopenTensorDescriptor_t wDesc,
const void* w,
const miopenConvolutionDescriptor_t convDesc,
const miopenTensorDescriptor_t yDesc,
void* y,
const int requestAlgoCount,
int* returnedAlgoCount,
miopenConvAlgoPerf_t* perfResults,
void* workSpace,
size_t workSpaceSize,
bool exhaustiveSearch);
MIOPEN_EXPORT miopenStatus_t miopenConvolutionForward(miopenHandle_t handle,
const void* alpha,
const miopenTensorDescriptor_t xDesc,
const void* x,
const miopenTensorDescriptor_t wDesc,
const void* w,
const miopenConvolutionDescriptor_t convDesc,
const void* beta,
const miopenTensorDescriptor_t yDesc,
void* y,
void* workSpace,
size_t workSpaceSize);
MIOPEN_EXPORT miopenStatus_t miopenConvolutionForwardBias(miopenHandle_t handle,
const void* alpha,
const miopenTensorDescriptor_t bDesc,
const void* b,
const void* beta,
const miopenTensorDescriptor_t yDesc,
void* y);
MIOPEN_EXPORT miopenStatus_t
const miopenTensorDescriptor_t dyDesc,
const miopenTensorDescriptor_t wDesc,
const miopenConvolutionDescriptor_t convDesc,
const miopenTensorDescriptor_t dxDesc,
size_t* workSpaceSize);
MIOPEN_EXPORT miopenStatus_t
const miopenTensorDescriptor_t dyDesc,
const void* dy,
const miopenTensorDescriptor_t wDesc,
const void* w,
const miopenConvolutionDescriptor_t convDesc,
const miopenTensorDescriptor_t dxDesc,
void* dx,
const int requestAlgoCount,
int* returnedAlgoCount,
miopenConvAlgoPerf_t* perfResults,
void* workSpace,
size_t workSpaceSize,
bool exhaustiveSearch);
MIOPEN_EXPORT miopenStatus_t
miopenConvolutionBackwardData(miopenHandle_t handle,
const void* alpha,
const miopenTensorDescriptor_t dyDesc,
const void* dy,
const miopenTensorDescriptor_t wDesc,
const void* w,
const miopenConvolutionDescriptor_t convDesc,
const void* beta,
const miopenTensorDescriptor_t dxDesc,
void* dx,
void* workSpace,
size_t workSpaceSize);
MIOPEN_EXPORT miopenStatus_t
const miopenTensorDescriptor_t dyDesc,
const miopenTensorDescriptor_t xDesc,
const miopenConvolutionDescriptor_t convDesc,
const miopenTensorDescriptor_t dwDesc,
size_t* workSpaceSize);
MIOPEN_EXPORT miopenStatus_t
const miopenTensorDescriptor_t dyDesc,
const void* dy,
const miopenTensorDescriptor_t xDesc,
const void* x,
const miopenConvolutionDescriptor_t convDesc,
const miopenTensorDescriptor_t dwDesc,
void* dw,
const int requestAlgoCount,
int* returnedAlgoCount,
miopenConvAlgoPerf_t* perfResults,
void* workSpace,
size_t workSpaceSize,
bool exhaustiveSearch);
MIOPEN_EXPORT miopenStatus_t
miopenConvolutionBackwardWeights(miopenHandle_t handle,
const void* alpha,
const miopenTensorDescriptor_t dyDesc,
const void* dy,
const miopenTensorDescriptor_t xDesc,
const void* x,
const miopenConvolutionDescriptor_t convDesc,
const void* beta,
const miopenTensorDescriptor_t dwDesc,
void* dw,
void* workSpace,
size_t workSpaceSize);
MIOPEN_EXPORT miopenStatus_t miopenConvolutionBackwardBias(miopenHandle_t handle,
const void* alpha,
const miopenTensorDescriptor_t dyDesc,
const void* dy,
const void* beta,
const miopenTensorDescriptor_t dbDesc,
void* db);
// CLOSEOUT CONVOLUTIONS DOXYGEN GROUP
// Pooling APIs
MIOPEN_EXPORT miopenStatus_t miopenCreatePoolingDescriptor(miopenPoolingDescriptor_t* poolDesc);
MIOPEN_EXPORT miopenStatus_t miopenSetPoolingIndexType(miopenPoolingDescriptor_t poolDesc,
miopenIndexType_t index_type);
MIOPEN_EXPORT miopenStatus_t miopenGetPoolingIndexType(miopenPoolingDescriptor_t poolDesc,
miopenIndexType_t* index_type);
miopenPoolingDescriptor_t poolDesc, miopenPoolingWorkspaceIndexMode_t workspace_index);
miopenPoolingDescriptor_t poolDesc, miopenPoolingWorkspaceIndexMode_t* workspace_index);
MIOPEN_EXPORT miopenStatus_t miopenSet2dPoolingDescriptor(miopenPoolingDescriptor_t poolDesc,
int windowHeight,
int windowWidth,
int pad_h,
int pad_w,
int stride_h,
int stride_w);
MIOPEN_EXPORT miopenStatus_t miopenGet2dPoolingDescriptor(const miopenPoolingDescriptor_t poolDesc,
int* windowHeight,
int* windowWidth,
int* pad_h,
int* pad_w,
int* stride_h,
int* stride_w);
MIOPEN_EXPORT miopenStatus_t
miopenGetPoolingForwardOutputDim(const miopenPoolingDescriptor_t poolDesc,
const miopenTensorDescriptor_t tensorDesc,
int* n,
int* c,
int* h,
int* w);
MIOPEN_EXPORT miopenStatus_t miopenSetNdPoolingDescriptor(miopenPoolingDescriptor_t poolDesc,
const miopenPoolingMode_t mode,
int nbDims,
const int* windowDimA,
const int* padA,
const int* stridesA);
MIOPEN_EXPORT miopenStatus_t miopenGetNdPoolingDescriptor(const miopenPoolingDescriptor_t poolDesc,
int nbDimsRequested,
int* nbDims,
int* windowDimA,
int* padA,
int* stridesA);
MIOPEN_EXPORT miopenStatus_t
miopenGetPoolingNdForwardOutputDim(const miopenPoolingDescriptor_t poolDesc,
const miopenTensorDescriptor_t tensorDesc,
int dims,
int* tensorDimArr);
MIOPEN_EXPORT miopenStatus_t miopenPoolingGetWorkSpaceSize(const miopenTensorDescriptor_t yDesc,
size_t* workSpaceSize);
MIOPEN_EXPORT miopenStatus_t
miopenPoolingGetWorkSpaceSizeV2(const miopenPoolingDescriptor_t poolDesc,
const miopenTensorDescriptor_t yDesc,
size_t* workSpaceSize);
MIOPEN_EXPORT miopenStatus_t miopenPoolingForward(miopenHandle_t handle,
const miopenPoolingDescriptor_t poolDesc,
const void* alpha,
const miopenTensorDescriptor_t xDesc,
const void* x,
const void* beta,
const miopenTensorDescriptor_t yDesc,
void* y,
bool do_backward,
void* workSpace,
size_t workSpaceSize);
MIOPEN_EXPORT miopenStatus_t miopenPoolingBackward(miopenHandle_t handle,
const miopenPoolingDescriptor_t poolDesc,
const void* alpha,
const miopenTensorDescriptor_t yDesc,
const void* y,
const miopenTensorDescriptor_t dyDesc,
const void* dy,
const miopenTensorDescriptor_t xDesc,
const void* x,
const void* beta,
const miopenTensorDescriptor_t dxDesc,
void* dx,
void* workSpace);
MIOPEN_EXPORT miopenStatus_t miopenDestroyPoolingDescriptor(miopenPoolingDescriptor_t poolDesc);
// CLOSEOUT POOLING DOXYGEN GROUP
// LRN APIs
MIOPEN_EXPORT miopenStatus_t miopenCreateLRNDescriptor(miopenLRNDescriptor_t* lrnDesc);
MIOPEN_EXPORT miopenStatus_t miopenSetLRNDescriptor(const miopenLRNDescriptor_t lrnDesc,
unsigned int lrnN,
double lrnAlpha,
double lrnBeta,
double lrnK);
MIOPEN_EXPORT miopenStatus_t miopenGetLRNDescriptor(const miopenLRNDescriptor_t lrnDesc,
unsigned int* lrnN,
double* lrnAlpha,
double* lrnBeta,
double* lrnK);
MIOPEN_EXPORT miopenStatus_t miopenLRNGetWorkSpaceSize(const miopenTensorDescriptor_t yDesc,
size_t* workSpaceSize);
MIOPEN_EXPORT miopenStatus_t miopenLRNForward(miopenHandle_t handle,
const miopenLRNDescriptor_t lrnDesc,
const void* alpha,
const miopenTensorDescriptor_t xDesc,
const void* x,
const void* beta,
const miopenTensorDescriptor_t yDesc,
void* y,
bool do_backward,
void* workSpace);
MIOPEN_EXPORT miopenStatus_t miopenLRNBackward(miopenHandle_t handle,
const miopenLRNDescriptor_t lrnDesc,
const void* alpha,
const miopenTensorDescriptor_t yDesc,
const void* y,
const miopenTensorDescriptor_t dyDesc,
const void* dy,
const miopenTensorDescriptor_t xDesc,
const void* x,
const void* beta,
const miopenTensorDescriptor_t dxDesc,
void* dx,
const void* workSpace);
MIOPEN_EXPORT miopenStatus_t miopenDestroyLRNDescriptor(miopenLRNDescriptor_t lrnDesc);
// CLOSEOUT LRN DOXYGEN GROUP
#ifdef MIOPEN_BETA_API
// LayerNorm APIs
MIOPEN_EXPORT miopenStatus_t miopenLayerNormForward(miopenHandle_t handle,
const miopenTensorDescriptor_t xDesc,
const void* x,
const miopenTensorDescriptor_t weightDesc,
const void* weight,
const miopenTensorDescriptor_t biasDesc,
const void* bias,
const float epsilon,
const int32_t normalized_dim,
const miopenTensorDescriptor_t yDesc,
void* y,
const miopenTensorDescriptor_t meanDesc,
void* mean,
const miopenTensorDescriptor_t rstdDesc,
void* rstd);
// CLOSEOUT LAYERNORM DOXYGEN GROUP
#endif
#ifdef MIOPEN_BETA_API
// Cat APIs
MIOPEN_EXPORT miopenStatus_t miopenCatForward(miopenHandle_t handle,
const int32_t xCount,
const miopenTensorDescriptor_t* xDescs,
const void* const* xs,
const miopenTensorDescriptor_t yDesc,
void* y,
const int32_t dim);
// CLOSEOUT CAT DOXYGEN GROUP
#endif
// Batch-Normalization APIs
MIOPEN_EXPORT miopenStatus_t miopenDeriveBNTensorDescriptor(miopenTensorDescriptor_t derivedBnDesc,
const miopenTensorDescriptor_t xDesc,
MIOPEN_EXPORT miopenStatus_t
void* alpha,
void* beta,
const miopenTensorDescriptor_t xDesc,
const void* x,
const miopenTensorDescriptor_t yDesc,
void* y,
const miopenTensorDescriptor_t bnScaleBiasMeanVarDesc,
void* bnScale,
void* bnBias,
double expAvgFactor,
void* resultRunningMean,
void* resultRunningVariance,
double epsilon,
void* resultSaveMean,
void* resultSaveInvVariance);
MIOPEN_EXPORT miopenStatus_t
void* alpha,
void* beta,
const miopenTensorDescriptor_t xDesc,
const void* x,
const miopenTensorDescriptor_t yDesc,
void* y,
const miopenTensorDescriptor_t bnScaleBiasMeanVarDesc,
void* bnScale,
void* bnBias,
void* estimatedMean,
void* estimatedVariance,
double epsilon);
MIOPEN_EXPORT miopenStatus_t
miopenBatchNormalizationBackward(miopenHandle_t handle,
const void* alphaDataDiff,
const void* betaDataDiff,
const void* alphaParamDiff,
const void* betaParamDiff,
const miopenTensorDescriptor_t xDesc,
const void* x,
const miopenTensorDescriptor_t dyDesc,
const void* dy,
const miopenTensorDescriptor_t dxDesc,
void* dx,
const miopenTensorDescriptor_t bnScaleBiasDiffDesc,
const void* bnScale,
void* resultBnScaleDiff,
void* resultBnBiasDiff,
double epsilon,
const void* savedMean,
const void* savedInvVariance);
// CLOSEOUT BATCHNORM DOXYGEN GROUP
// Activation APIs
MIOPEN_EXPORT miopenStatus_t
miopenCreateActivationDescriptor(miopenActivationDescriptor_t* activDesc);
MIOPEN_EXPORT miopenStatus_t
miopenSetActivationDescriptor(const miopenActivationDescriptor_t activDesc,
double activAlpha,
double activBeta,
double activGamma);
MIOPEN_EXPORT miopenStatus_t
miopenGetActivationDescriptor(const miopenActivationDescriptor_t activDesc,
double* activAlpha,
double* activBeta,
double* activGamma);
MIOPEN_EXPORT miopenStatus_t miopenActivationForward(miopenHandle_t handle,
const miopenActivationDescriptor_t activDesc,
const void* alpha,
const miopenTensorDescriptor_t xDesc,
const void* x,
const void* beta,
const miopenTensorDescriptor_t yDesc,
void* y);
MIOPEN_EXPORT miopenStatus_t miopenActivationBackward(miopenHandle_t handle,
const miopenActivationDescriptor_t activDesc,
const void* alpha,
const miopenTensorDescriptor_t yDesc,
const void* y,
const miopenTensorDescriptor_t dyDesc,
const void* dy,
const miopenTensorDescriptor_t xDesc,
const void* x,
const void* beta,
const miopenTensorDescriptor_t dxDesc,
void* dx);
MIOPEN_EXPORT miopenStatus_t
miopenDestroyActivationDescriptor(miopenActivationDescriptor_t activDesc);
// CLOSEOUT ACTIVATION DOXYGEN GROUP
// Softmax APIs
MIOPEN_EXPORT miopenStatus_t miopenSoftmaxForward(miopenHandle_t handle,
const void* alpha,
const miopenTensorDescriptor_t xDesc,
const void* x,
const void* beta,
const miopenTensorDescriptor_t yDesc,
void* y);
MIOPEN_EXPORT miopenStatus_t miopenSoftmaxBackward(miopenHandle_t handle,
const void* alpha,
const miopenTensorDescriptor_t yDesc,
const void* y,
const miopenTensorDescriptor_t dyDesc,
const void* dy,
const void* beta,
const miopenTensorDescriptor_t dxDesc,
void* dx);
MIOPEN_EXPORT miopenStatus_t miopenSoftmaxForward_V2(miopenHandle_t handle,
const void* alpha,
const miopenTensorDescriptor_t xDesc,
const void* x,
const void* beta,
const miopenTensorDescriptor_t yDesc,
void* y,
MIOPEN_EXPORT miopenStatus_t miopenSoftmaxBackward_V2(miopenHandle_t handle,
const void* alpha,
const miopenTensorDescriptor_t yDesc,
const void* y,
const miopenTensorDescriptor_t dyDesc,
const void* dy,
const void* beta,
const miopenTensorDescriptor_t dxDesc,
void* dx,
// CLOSEOUT SOFTMAX DOXYGEN GROUP
MIOPEN_DECLARE_OBJECT(miopenFusionPlanDescriptor);
MIOPEN_DECLARE_OBJECT(miopenOperatorDescriptor);
MIOPEN_DECLARE_OBJECT(miopenOperatorArgs);
typedef enum
{
MIOPEN_EXPORT miopenStatus_t miopenCreateFusionPlan(miopenFusionPlanDescriptor_t* fusePlanDesc,
const miopenFusionDirection_t fuseDirection,
const miopenTensorDescriptor_t inputDesc);
MIOPEN_EXPORT miopenStatus_t miopenDestroyFusionPlan(miopenFusionPlanDescriptor_t fusePlanDesc);
MIOPEN_EXPORT miopenStatus_t miopenCompileFusionPlan(miopenHandle_t handle,
miopenFusionPlanDescriptor_t fusePlanDesc);
MIOPEN_EXPORT miopenStatus_t miopenFusionPlanGetOp(miopenFusionPlanDescriptor_t fusePlanDesc,
const int op_idx,
miopenFusionOpDescriptor_t* op);
MIOPEN_EXPORT miopenStatus_t
miopenFusionPlanGetWorkSpaceSize(miopenHandle_t handle,
miopenFusionPlanDescriptor_t fusePlanDesc,
size_t* workSpaceSize,
MIOPEN_EXPORT miopenStatus_t
miopenFusionPlanConvolutionGetAlgo(miopenFusionPlanDescriptor_t fusePlanDesc,
const int requestAlgoCount,
int* returnedAlgoCount,
miopenConvFwdAlgorithm_t* returnedAlgos);
miopenFusionPlanDescriptor_t fusePlanDesc, miopenConvFwdAlgorithm_t algo);
MIOPEN_EXPORT miopenStatus_t miopenCreateOpConvForward(miopenFusionPlanDescriptor_t fusePlanDesc,
miopenFusionOpDescriptor_t* convOp,
miopenConvolutionDescriptor_t convDesc,
const miopenTensorDescriptor_t wDesc);
//---
// Activation forward create ops ---
MIOPEN_EXPORT miopenStatus_t
miopenCreateOpActivationForward(miopenFusionPlanDescriptor_t fusePlanDesc,
miopenFusionOpDescriptor_t* activFwdOp,
// Activation backward create ops ---
MIOPEN_EXPORT miopenStatus_t
miopenCreateOpActivationBackward(miopenFusionPlanDescriptor_t fusePlanDesc,
miopenFusionOpDescriptor_t* activBwdOp,
// Bias create ops ---
MIOPEN_EXPORT miopenStatus_t miopenCreateOpBiasForward(miopenFusionPlanDescriptor_t fusePlanDesc,
miopenFusionOpDescriptor_t* biasOp,
const miopenTensorDescriptor_t bDesc);
// Batch normalization create ops ---
MIOPEN_EXPORT miopenStatus_t
miopenCreateOpBatchNormInference(miopenFusionPlanDescriptor_t fusePlanDesc,
miopenFusionOpDescriptor_t* bnOp,
const miopenBatchNormMode_t bn_mode,
const miopenTensorDescriptor_t bnScaleBiasMeanVarDesc);
MIOPEN_EXPORT miopenStatus_t
miopenCreateOpBatchNormForward(miopenFusionPlanDescriptor_t fusePlanDesc,
miopenFusionOpDescriptor_t* bnFwdOp,
const miopenBatchNormMode_t bn_mode,
bool runningMeanVariance);
MIOPEN_EXPORT miopenStatus_t
miopenCreateOpBatchNormBackward(miopenFusionPlanDescriptor_t fusePlanDesc,
miopenFusionOpDescriptor_t* bnBwdOp,
const miopenBatchNormMode_t bn_mode);
//---
MIOPEN_EXPORT miopenStatus_t miopenCreateOperatorArgs(miopenOperatorArgs_t* args);
MIOPEN_EXPORT miopenStatus_t miopenDestroyOperatorArgs(miopenOperatorArgs_t args);
// Convolution set arguments ---
MIOPEN_EXPORT miopenStatus_t miopenSetOpArgsConvForward(miopenOperatorArgs_t args,
const miopenFusionOpDescriptor_t convOp,
const void* alpha,
const void* beta,
const void* w);
// Activation set arguments ---
MIOPEN_EXPORT miopenStatus_t
miopenSetOpArgsActivForward(miopenOperatorArgs_t args,
const miopenFusionOpDescriptor_t activFwdOp,
const void* alpha,
const void* beta,
double activAlpha,
double activBeta,
double activGamma);
MIOPEN_EXPORT miopenStatus_t
miopenSetOpArgsActivBackward(miopenOperatorArgs_t args,
const miopenFusionOpDescriptor_t activBwdOp,
const void* alpha,
const void* beta,
const void* y,
const void* reserved,
double activAlpha,
double activBeta,
double activGamma);
// Batch Normalization set arguments ---
MIOPEN_EXPORT miopenStatus_t
miopenSetOpArgsBatchNormInference(miopenOperatorArgs_t args,
const miopenFusionOpDescriptor_t bnOp,
const void* alpha,
const void* beta,
const void* bnScale,
const void* bnBias,
const void* estimatedMean,
const void* estimatedVariance,
double epsilon);
MIOPEN_EXPORT miopenStatus_t miopenSetOpArgsBatchNormForward(miopenOperatorArgs_t args,
const miopenFusionOpDescriptor_t bnOp,
const void* alpha,
const void* beta,
const void* bnScale,
const void* bnBias,
void* savedMean,
void* savedInvVariance,
void* runningMean,
void* runningVariance,
double expAvgFactor,
double epsilon);
MIOPEN_EXPORT miopenStatus_t miopenSetOpArgsBatchNormBackward(miopenOperatorArgs_t args,
const miopenFusionOpDescriptor_t bnOp,
const void* alpha,
const void* beta,
const void* x,
const void* bnScale,
const void* bnBias,
void* resultBnScaleDiff,
void* resultBnBiasDiff,
const void* savedMean,
const void* savedInvVariance);
// Bias forward set arguments ---
MIOPEN_EXPORT miopenStatus_t miopenSetOpArgsBiasForward(miopenOperatorArgs_t args,
const miopenFusionOpDescriptor_t biasOp,
const void* alpha,
const void* beta,
const void* bias);
MIOPEN_EXPORT miopenStatus_t
miopenExecuteFusionPlan(const miopenHandle_t handle,
const miopenFusionPlanDescriptor_t fusePlanDesc,
const miopenTensorDescriptor_t inputDesc,
const void* input,
const miopenTensorDescriptor_t outputDesc,
void* output,
miopenOperatorArgs_t args);
MIOPEN_EXPORT miopenStatus_t
const void* alpha1,
const miopenTensorDescriptor_t xDesc,
const void* x,
const miopenTensorDescriptor_t wDesc,
const void* w,
const miopenConvolutionDescriptor_t convDesc,
void* workspace,
size_t workspaceSizeInBytes,
const void* alpha2,
const miopenTensorDescriptor_t zDesc,
const void* z,
const miopenTensorDescriptor_t biasDesc,
const void* bias,
const miopenActivationDescriptor_t activationDesc,
const miopenTensorDescriptor_t yDesc,
void* y);
// CLOSEOUT FUSION DOXYGEN GROUP
typedef enum
{
miopenLSTM = 2,
miopenGRU = 3,
typedef enum
{
typedef enum
{
1,
typedef enum
{
typedef enum
{
typedef enum
{
typedef enum
{
typedef enum
{
typedef enum
{
MIOPEN_EXPORT miopenStatus_t miopenCreateRNNDescriptor(miopenRNNDescriptor_t* rnnDesc);
MIOPEN_EXPORT miopenStatus_t miopenGetRNNDescriptor(miopenRNNDescriptor_t rnnDesc,
miopenRNNMode_t* rnnMode,
miopenRNNAlgo_t* algoMode,
int* hiddenSize,
int* layer);
MIOPEN_EXPORT miopenStatus_t miopenGetRNNDescriptor_V2(miopenRNNDescriptor_t rnnDesc,
int* hiddenSize,
int* layer,
miopenDropoutDescriptor_t* dropoutDesc,
miopenRNNMode_t* rnnMode,
miopenRNNAlgo_t* algoMode,
miopenDataType_t* dataType);
MIOPEN_EXPORT miopenStatus_t miopenDestroyRNNDescriptor(miopenRNNDescriptor_t rnnDesc);
MIOPEN_EXPORT miopenStatus_t miopenSetRNNDescriptor(miopenRNNDescriptor_t rnnDesc,
const int hsize,
const int nlayers,
miopenRNNMode_t rnnMode,
miopenDataType_t dataType);
MIOPEN_EXPORT miopenStatus_t miopenSetRNNDescriptor_V2(miopenRNNDescriptor_t rnnDesc,
const int hsize,
const int nlayers,
miopenDropoutDescriptor_t dropoutDesc,
miopenRNNMode_t rnnMode,
miopenDataType_t dataType);
MIOPEN_EXPORT miopenStatus_t
miopenSetRNNDataSeqTensorDescriptor(miopenSeqTensorDescriptor_t seqTensorDesc,
miopenDataType_t dataType,
int maxSequenceLen,
int batchSize,
int vectorSize,
const int* sequenceLenArray,
void* paddingMarker);
MIOPEN_EXPORT miopenStatus_t
miopenGetRNNDataSeqTensorDescriptor(miopenSeqTensorDescriptor_t seqTensorDesc,
miopenDataType_t* dataType,
int* maxSequenceLen,
int* batchSize,
int* vectorSize,
int sequenceLenArrayLimit,
int* sequenceLenArray,
void* paddingMarker);
MIOPEN_EXPORT miopenStatus_t miopenGetRNNWorkspaceSize(miopenHandle_t handle,
const miopenRNNDescriptor_t rnnDesc,
const int sequenceLen,
const miopenTensorDescriptor_t* xDesc,
size_t* numBytes);
MIOPEN_EXPORT miopenStatus_t miopenGetRNNTrainingReserveSize(miopenHandle_t handle,
miopenRNNDescriptor_t rnnDesc,
const int sequenceLen,
const miopenTensorDescriptor_t* xDesc,
size_t* numBytes);
MIOPEN_EXPORT miopenStatus_t miopenGetRNNTempSpaceSizes(miopenHandle_t handle,
miopenRNNDescriptor_t rnnDesc,
miopenSeqTensorDescriptor_t xDesc,
size_t* workSpaceSize,
size_t* reserveSpaceSize);
MIOPEN_EXPORT miopenStatus_t miopenGetRNNParamsSize(miopenHandle_t handle,
miopenRNNDescriptor_t rnnDesc,
miopenTensorDescriptor_t xDesc,
size_t* numBytes,
MIOPEN_EXPORT miopenStatus_t miopenGetRNNParamsDescriptor(miopenHandle_t handle,
miopenRNNDescriptor_t rnnDesc,
miopenTensorDescriptor_t xDesc,
miopenTensorDescriptor_t wDesc,
MIOPEN_EXPORT miopenStatus_t miopenGetRNNInputTensorSize(miopenHandle_t handle,
miopenRNNDescriptor_t rnnDesc,
const int seqLen,
miopenTensorDescriptor_t* xDesc,
size_t* numBytes);
MIOPEN_EXPORT miopenStatus_t miopenGetRNNHiddenTensorSize(miopenHandle_t handle,
miopenRNNDescriptor_t rnnDesc,
const int seqLen,
miopenTensorDescriptor_t* xDesc,
size_t* numBytes);
MIOPEN_EXPORT miopenStatus_t miopenGetRNNLayerParamSize(miopenHandle_t handle,
miopenRNNDescriptor_t rnnDesc,
const int layer,
miopenTensorDescriptor_t xDesc,
const int paramID,
size_t* numBytes);
MIOPEN_EXPORT miopenStatus_t miopenGetRNNLayerBiasSize(miopenHandle_t handle,
miopenRNNDescriptor_t rnnDesc,
const int layer,
const int biasID,
size_t* numBytes);
MIOPEN_EXPORT miopenStatus_t miopenGetRNNLayerParam(miopenHandle_t handle,
miopenRNNDescriptor_t rnnDesc,
const int layer,
miopenTensorDescriptor_t xDesc,
miopenTensorDescriptor_t wDesc,
const void* w,
const int paramID,
miopenTensorDescriptor_t paramDesc,
void* layerParam);
MIOPEN_EXPORT miopenStatus_t miopenGetRNNLayerBias(miopenHandle_t handle,
miopenRNNDescriptor_t rnnDesc,
const int layer,
miopenTensorDescriptor_t xDesc,
miopenTensorDescriptor_t wDesc,
const void* w,
const int biasID,
miopenTensorDescriptor_t biasDesc,
void* layerBias);
MIOPEN_EXPORT miopenStatus_t miopenGetRNNLayerParamOffset(miopenRNNDescriptor_t rnnDesc,
const int layer,
miopenTensorDescriptor_t xDesc,
const int paramID,
miopenTensorDescriptor_t paramDesc,
size_t* layerParamOffset);
MIOPEN_EXPORT miopenStatus_t miopenGetRNNLayerBiasOffset(miopenRNNDescriptor_t rnnDesc,
const int layer,
miopenTensorDescriptor_t xDesc,
const int biasID,
miopenTensorDescriptor_t biasDesc,
size_t* layerBiasOffset);
MIOPEN_EXPORT miopenStatus_t miopenSetRNNLayerParam(miopenHandle_t handle,
miopenRNNDescriptor_t rnnDesc,
const int layer,
miopenTensorDescriptor_t xDesc,
miopenTensorDescriptor_t wDesc,
void* w,
const int paramID,
miopenTensorDescriptor_t paramDesc,
const void* layerParam);
MIOPEN_EXPORT miopenStatus_t miopenSetRNNLayerBias(miopenHandle_t handle,
miopenRNNDescriptor_t rnnDesc,
const int layer,
miopenTensorDescriptor_t xDesc,
miopenTensorDescriptor_t wDesc,
void* w,
const int biasID,
miopenTensorDescriptor_t biasDesc,
const void* layerBias);
MIOPEN_EXPORT miopenStatus_t miopenSetRNNPaddingMode(miopenRNNDescriptor_t rnnDesc,
miopenRNNPaddingMode_t paddingMode);
MIOPEN_EXPORT miopenStatus_t miopenGetRNNPaddingMode(miopenRNNDescriptor_t rnnDesc,
miopenRNNPaddingMode_t* paddingMode);
MIOPEN_EXPORT miopenStatus_t miopenRNNForward(miopenHandle_t handle,
const miopenRNNDescriptor_t rnnDesc,
const miopenSeqTensorDescriptor_t xDesc,
const void* x,
const miopenTensorDescriptor_t hDesc,
const void* hx,
void* hy,
const miopenTensorDescriptor_t cDesc,
const void* cx,
void* cy,
const miopenSeqTensorDescriptor_t yDesc,
void* y,
const void* w,
size_t weightSpaceSize,
void* workSpace,
size_t workSpaceNumBytes,
void* reserveSpace,
size_t reserveSpaceNumBytes);
MIOPEN_EXPORT miopenStatus_t miopenRNNBackwardSeqData(miopenHandle_t handle,
const miopenRNNDescriptor_t rnnDesc,
const miopenSeqTensorDescriptor_t yDesc,
const void* y,
const void* dy,
const miopenTensorDescriptor_t hDesc,
const void* hx,
const void* dhy,
void* dhx,
const miopenTensorDescriptor_t cDesc,
const void* cx,
const void* dcy,
void* dcx,
const miopenSeqTensorDescriptor_t xDesc,
void* dx,
const void* w,
size_t weightSpaceSize,
void* workSpace,
size_t workSpaceNumBytes,
void* reserveSpace,
size_t reserveSpaceNumBytes);
MIOPEN_EXPORT miopenStatus_t
miopenRNNBackwardWeightsSeqTensor(miopenHandle_t handle,
const miopenRNNDescriptor_t rnnDesc,
const miopenSeqTensorDescriptor_t xDesc,
const void* x,
const miopenTensorDescriptor_t hDesc,
const void* hx,
const miopenSeqTensorDescriptor_t yDesc,
const void* y,
void* dw,
size_t weightSpaceSize,
void* workSpace,
size_t workSpaceNumBytes,
const void* reserveSpace,
size_t reserveSpaceNumBytes);
MIOPEN_EXPORT miopenStatus_t miopenRNNForwardTraining(miopenHandle_t handle,
const miopenRNNDescriptor_t rnnDesc,
const int sequenceLen,
const miopenTensorDescriptor_t* xDesc,
const void* x,
const miopenTensorDescriptor_t hxDesc,
const void* hx,
const miopenTensorDescriptor_t cxDesc,
const void* cx,
const miopenTensorDescriptor_t wDesc,
const void* w,
const miopenTensorDescriptor_t* yDesc,
void* y,
const miopenTensorDescriptor_t hyDesc,
void* hy,
const miopenTensorDescriptor_t cyDesc,
void* cy,
void* workSpace,
size_t workSpaceNumBytes,
void* reserveSpace,
size_t reserveSpaceNumBytes);
MIOPEN_EXPORT miopenStatus_t miopenRNNBackwardData(miopenHandle_t handle,
const miopenRNNDescriptor_t rnnDesc,
const int sequenceLen,
const miopenTensorDescriptor_t* yDesc,
const void* y,
const miopenTensorDescriptor_t* dyDesc,
const void* dy,
const miopenTensorDescriptor_t dhyDesc,
const void* dhy,
const miopenTensorDescriptor_t dcyDesc,
const void* dcy,
const miopenTensorDescriptor_t wDesc,
const void* w,
const miopenTensorDescriptor_t hxDesc,
const void* hx,
const miopenTensorDescriptor_t cxDesc,
const void* cx,
const miopenTensorDescriptor_t* dxDesc,
void* dx,
const miopenTensorDescriptor_t dhxDesc,
void* dhx,
const miopenTensorDescriptor_t dcxDesc,
void* dcx,
void* workSpace,
size_t workSpaceNumBytes,
void* reserveSpace,
size_t reserveSpaceNumBytes);
MIOPEN_EXPORT miopenStatus_t miopenRNNBackwardWeights(miopenHandle_t handle,
const miopenRNNDescriptor_t rnnDesc,
const int sequenceLen,
const miopenTensorDescriptor_t* xDesc,
const void* x,
const miopenTensorDescriptor_t hxDesc,
const void* hx,
const miopenTensorDescriptor_t* yDesc,
const void* y,
const miopenTensorDescriptor_t dwDesc,
void* dw,
void* workSpace,
size_t workSpaceNumBytes,
const void* reserveSpace,
size_t reserveSpaceNumBytes);
MIOPEN_EXPORT miopenStatus_t miopenRNNForwardInference(miopenHandle_t handle,
miopenRNNDescriptor_t rnnDesc,
const int sequenceLen,
const miopenTensorDescriptor_t* xDesc,
const void* x,
const miopenTensorDescriptor_t hxDesc,
const void* hx,
const miopenTensorDescriptor_t cxDesc,
const void* cx,
const miopenTensorDescriptor_t wDesc,
const void* w,
const miopenTensorDescriptor_t* yDesc,
void* y,
const miopenTensorDescriptor_t hyDesc,
void* hy,
const miopenTensorDescriptor_t cyDesc,
void* cy,
void* workSpace,
size_t workSpaceNumBytes);
// CLOSEOUT RNN DOXYGEN GROUP
typedef enum
{
MIOPEN_EXPORT miopenStatus_t miopenCreateCTCLossDescriptor(miopenCTCLossDescriptor_t* ctcLossDesc);
MIOPEN_EXPORT miopenStatus_t miopenGetCTCLossDescriptor(miopenCTCLossDescriptor_t ctcLossDesc,
miopenDataType_t* dataType,
int* blank_label_id,
bool* apply_softmax_layer);
MIOPEN_EXPORT miopenStatus_t miopenDestroyCTCLossDescriptor(miopenCTCLossDescriptor_t ctcLossDesc);
MIOPEN_EXPORT miopenStatus_t miopenSetCTCLossDescriptor(miopenCTCLossDescriptor_t ctcLossDesc,
miopenDataType_t dataType,
const int blank_label_id,
bool apply_softmax_layer);
MIOPEN_EXPORT miopenStatus_t
miopenGetCTCLossWorkspaceSize(miopenHandle_t handle,
const miopenTensorDescriptor_t probsDesc,
const miopenTensorDescriptor_t gradientsDesc,
const int* labels,
const int* labelLengths,
const int* inputLengths,
const miopenCTCLossDescriptor_t ctcLossDesc,
size_t* workSpaceSize);
MIOPEN_EXPORT miopenStatus_t miopenCTCLoss(miopenHandle_t handle,
const miopenTensorDescriptor_t probsDesc,
const void* probs,
const int* labels,
const int* labelLengths,
const int* inputLengths,
void* losses,
const miopenTensorDescriptor_t gradientsDesc,
void* gradients,
const miopenCTCLossDescriptor_t ctcLossDesc,
void* workSpace,
size_t workSpaceSize);
// CLOSEOUT LossFunction DOXYGEN GROUP
// Dropout APIs
typedef enum
{
MIOPEN_EXPORT miopenStatus_t miopenCreateDropoutDescriptor(miopenDropoutDescriptor_t* dropoutDesc);
MIOPEN_EXPORT miopenStatus_t miopenDestroyDropoutDescriptor(miopenDropoutDescriptor_t dropoutDesc);
MIOPEN_EXPORT miopenStatus_t miopenDropoutGetReserveSpaceSize(const miopenTensorDescriptor_t xDesc,
size_t* reserveSpaceSizeInBytes);
MIOPEN_EXPORT miopenStatus_t miopenDropoutGetStatesSize(miopenHandle_t handle,
size_t* stateSizeInBytes);
MIOPEN_EXPORT miopenStatus_t miopenGetDropoutDescriptor(miopenDropoutDescriptor_t dropoutDesc,
miopenHandle_t handle,
float* dropout,
void** states,
unsigned long long* seed,
bool* use_mask,
bool* state_evo,
miopenRNGType_t* rng_mode);
MIOPEN_EXPORT miopenStatus_t miopenRestoreDropoutDescriptor(miopenDropoutDescriptor_t dropoutDesc,
miopenHandle_t handle,
float dropout,
void* states,
size_t stateSizeInBytes,
unsigned long long seed,
bool use_mask,
bool state_evo,
miopenRNGType_t rng_mode);
MIOPEN_EXPORT miopenStatus_t miopenSetDropoutDescriptor(miopenDropoutDescriptor_t dropoutDesc,
miopenHandle_t handle,
float dropout,
void* states,
size_t stateSizeInBytes,
unsigned long long seed,
bool use_mask,
bool state_evo,
miopenRNGType_t rng_mode);
MIOPEN_EXPORT miopenStatus_t miopenDropoutForward(miopenHandle_t handle,
const miopenDropoutDescriptor_t dropoutDesc,
const miopenTensorDescriptor_t noise_shape,
const miopenTensorDescriptor_t xDesc,
const void* x,
const miopenTensorDescriptor_t yDesc,
void* y,
void* reserveSpace,
size_t reserveSpaceSizeInBytes);
MIOPEN_EXPORT miopenStatus_t miopenDropoutBackward(miopenHandle_t handle,
const miopenDropoutDescriptor_t dropoutDesc,
const miopenTensorDescriptor_t noise_shape,
const miopenTensorDescriptor_t dyDesc,
const void* dy,
const miopenTensorDescriptor_t dxDesc,
void* dx,
void* reserveSpace,
size_t reserveSpaceSizeInBytes);
// CLOSEOUT DROPOUT DOXYGEN GROUP
// TensorReduce APIs
MIOPEN_EXPORT miopenStatus_t
miopenCreateReduceTensorDescriptor(miopenReduceTensorDescriptor_t* reduceTensorDesc);
MIOPEN_EXPORT miopenStatus_t
miopenDestroyReduceTensorDescriptor(miopenReduceTensorDescriptor_t reduceTensorDesc);
MIOPEN_EXPORT miopenStatus_t
miopenSetReduceTensorDescriptor(miopenReduceTensorDescriptor_t reduceTensorDesc,
miopenReduceTensorOp_t reduceTensorOp,
miopenDataType_t reduceTensorCompType,
miopenNanPropagation_t reduceTensorNanOpt,
miopenReduceTensorIndices_t reduceTensorIndices,
miopenIndicesType_t reduceTensorIndicesType);
MIOPEN_EXPORT miopenStatus_t
miopenGetReduceTensorDescriptor(const miopenReduceTensorDescriptor_t reduceTensorDesc,
miopenReduceTensorOp_t* reduceTensorOp,
miopenDataType_t* reduceTensorCompType,
miopenNanPropagation_t* reduceTensorNanOpt,
miopenReduceTensorIndices_t* reduceTensorIndices,
miopenIndicesType_t* reduceTensorIndicesType);
MIOPEN_EXPORT miopenStatus_t
miopenGetReductionIndicesSize(miopenHandle_t handle,
const miopenReduceTensorDescriptor_t reduceTensorDesc,
const miopenTensorDescriptor_t aDesc,
const miopenTensorDescriptor_t cDesc,
size_t* sizeInBytes);
MIOPEN_EXPORT miopenStatus_t
miopenGetReductionWorkspaceSize(miopenHandle_t handle,
const miopenReduceTensorDescriptor_t reduceTensorDesc,
const miopenTensorDescriptor_t aDesc,
const miopenTensorDescriptor_t cDesc,
size_t* sizeInBytes);
MIOPEN_EXPORT miopenStatus_t
miopenReduceTensor(miopenHandle_t handle,
const miopenReduceTensorDescriptor_t reduceTensorDesc,
void* indices,
size_t indicesSizeInBytes,
void* workspace,
size_t workspaceSizeInBytes,
const void* alpha,
const miopenTensorDescriptor_t aDesc,
const void* A,
const void* beta,
const miopenTensorDescriptor_t cDesc,
void* C);
// CLOSEOUT TensorReduce DOXYGEN GROUP
// Find 2.0 API
MIOPEN_DECLARE_OBJECT(miopenProblem);
typedef enum
{
#ifdef MIOPEN_BETA_API
#endif
typedef enum
{
#ifdef MIOPEN_BETA_API
#endif
#ifdef MIOPEN_BETA_API
#endif
typedef enum
{
MIOPEN_EXPORT miopenStatus_t miopenCreateConvProblem(miopenProblem_t* problem,
miopenConvolutionDescriptor_t operatorDesc,
MIOPEN_EXPORT miopenStatus_t miopenCreateMhaProblem(miopenProblem_t* problem,
miopenMhaDescriptor_t operatorDesc,
MIOPEN_EXPORT miopenStatus_t miopenCreateMhaDescriptor(miopenMhaDescriptor_t* mhaDesc);
MIOPEN_EXPORT miopenStatus_t miopenSetMhaDescriptor(miopenMhaDescriptor_t mhaDesc, float scale);
MIOPEN_EXPORT miopenStatus_t miopenGetMhaDescriptor(miopenMhaDescriptor_t mhaDesc, float* scale);
MIOPEN_EXPORT miopenStatus_t miopenCreateSoftmaxDescriptor(miopenSoftmaxDescriptor_t* softmaxDesc);
MIOPEN_EXPORT miopenStatus_t miopenSetSoftmaxDescriptor(miopenSoftmaxDescriptor_t softmaxDesc,
float alpha,
float beta,
MIOPEN_EXPORT miopenStatus_t miopenGetSoftmaxDescriptor(const miopenSoftmaxDescriptor_t softmaxDesc,
float* alpha,
float* beta,
MIOPEN_EXPORT miopenStatus_t miopenDestroyProblem(miopenProblem_t problem);
MIOPEN_EXPORT miopenStatus_t
miopenSetProblemTensorDescriptor(miopenProblem_t problem,
const miopenTensorDescriptor_t descriptor);
MIOPEN_DECLARE_OBJECT(miopenFindOptions);
MIOPEN_EXPORT miopenStatus_t miopenCreateFindOptions(miopenFindOptions_t* options);
MIOPEN_EXPORT miopenStatus_t miopenDestroyFindOptions(miopenFindOptions_t options);
MIOPEN_EXPORT miopenStatus_t miopenSetFindOptionTuning(miopenFindOptions_t options, int value);
MIOPEN_EXPORT miopenStatus_t miopenSetFindOptionResultsOrder(miopenFindOptions_t options,
MIOPEN_EXPORT miopenStatus_t miopenSetFindOptionWorkspaceLimit(miopenFindOptions_t options,
size_t value);
MIOPEN_EXPORT miopenStatus_t miopenSetFindOptionPreallocatedWorkspace(miopenFindOptions_t options,
void* buffer,
size_t size);
MIOPEN_EXPORT miopenStatus_t miopenSetFindOptionPreallocatedTensor(miopenFindOptions_t options,
void* buffer);
MIOPEN_DECLARE_OBJECT(miopenSolution);
MIOPEN_EXPORT miopenStatus_t miopenFindSolutions(miopenHandle_t handle,
miopenProblem_t problem,
miopenFindOptions_t options,
miopenSolution_t* solutions,
size_t* numSolutions,
size_t maxSolutions);
{
/* @brief Identifier of the tensor argument.
*/
/* @brief Tensor descriptor to override the value stored in the solution.
*
* Some solvers may support overriding input and output tensor descriptors, but right now there
* is no way to tell from the API. Intended for the future use.
*/
miopenTensorDescriptor_t* descriptor;
/* @brief Pointer to the device memory buffer to use for the operation or to the host memory if
* the value is scalar.
*/
void* buffer;
};
MIOPEN_EXPORT miopenStatus_t miopenRunSolution(miopenHandle_t handle,
miopenSolution_t solution,
size_t nInputs,
const miopenTensorArgument_t* tensors,
void* workspace,
size_t workspaceSize);
MIOPEN_EXPORT miopenStatus_t miopenDestroySolution(miopenSolution_t solution);
MIOPEN_EXPORT miopenStatus_t miopenLoadSolution(miopenSolution_t* solution,
const char* data,
size_t size);
MIOPEN_EXPORT miopenStatus_t miopenSaveSolution(miopenSolution_t solution, char* data);
MIOPEN_EXPORT miopenStatus_t miopenGetSolutionSize(miopenSolution_t solution, size_t* size);
MIOPEN_EXPORT miopenStatus_t miopenGetSolutionWorkspaceSize(miopenSolution_t solution,
size_t* workspaceSize);
MIOPEN_EXPORT miopenStatus_t miopenGetSolutionTime(miopenSolution_t solution, float* time);
MIOPEN_EXPORT miopenStatus_t miopenGetSolutionSolverId(miopenSolution_t solution,
uint64_t* solverId);
MIOPEN_EXPORT miopenStatus_t miopenGetSolverIdConvAlgorithm(uint64_t solverId,
#ifdef MIOPEN_BETA_API
MIOPEN_EXPORT miopenStatus_t
miopenCreateActivationProblem(miopenProblem_t* problem,
miopenActivationDescriptor_t operatorDesc,
MIOPEN_EXPORT miopenStatus_t miopenCreateBatchnormProblem(miopenProblem_t* problem,
bool runningMeanVariance,
MIOPEN_EXPORT miopenStatus_t miopenFuseProblems(miopenProblem_t problem1, miopenProblem_t problem2);
MIOPEN_EXPORT miopenStatus_t miopenCreateBiasProblem(miopenProblem_t* problem,
MIOPEN_EXPORT miopenStatus_t miopenCreateSoftmaxProblem(miopenProblem_t* problem,
miopenSoftmaxDescriptor_t operatorDesc,
#endif
// CLOSEOUT find2 DOXYGEN GROUP
#ifdef MIOPEN_BETA_API
typedef enum
{
// Sum APIs
MIOPEN_EXPORT miopenStatus_t miopenGetSumWorkspaceSize(miopenHandle_t handle,
const miopenTensorDescriptor_t xDesc,
const int32_t dim,
const miopenTensorDescriptor_t yDesc,
size_t* sizeInBytes);
MIOPEN_EXPORT miopenStatus_t miopenSumForward(miopenHandle_t handle,
miopenSumNanPropagation_t nanPropagation,
void* workspace,
size_t workspaceSizeInBytes,
const miopenTensorDescriptor_t xDesc,
const void* x,
const int32_t dim,
const miopenTensorDescriptor_t yDesc,
void* y);
// CLOSEOUT SUM DOXYGEN GROUP
#endif
#ifdef MIOPEN_BETA_API
typedef enum
{
1,
2,
3,
4,
// ReduceExtreme APIs
MIOPEN_EXPORT miopenStatus_t
miopenReduceExtremeForward(miopenHandle_t handle,
const miopenTensorDescriptor_t xDesc,
const void* x,
const int32_t dim,
const miopenReduceExtremeOp_t reduceExtremeOp,
const miopenTensorDescriptor_t yDesc,
void* y,
const miopenTensorDescriptor_t indiceDesc,
void* indice);
// CLOSEOUT REDUCEEXTREME DOXYGEN GROUP
#endif
#ifdef MIOPEN_BETA_API
// GroupNorm APIs
MIOPEN_EXPORT miopenStatus_t miopenGroupNormForward(miopenHandle_t handle,
const miopenTensorDescriptor_t xDesc,
const void* x,
const miopenTensorDescriptor_t weightDesc,
const void* weight,
const miopenTensorDescriptor_t biasDesc,
const void* bias,
const uint64_t num_groups,
const float epsilon,
const miopenTensorDescriptor_t yDesc,
void* y,
const miopenTensorDescriptor_t meanDesc,
void* mean,
const miopenTensorDescriptor_t rstdDesc,
void* rstd);
// CLOSEOUT groupnorm DOXYGEN GROUP
#endif
#ifdef MIOPEN_BETA_API
// LayerNorm APIs
MIOPEN_EXPORT miopenStatus_t miopenAddLayerNormForward(miopenHandle_t handle,
const miopenTensorDescriptor_t xDesc,
const void* x,
const miopenTensorDescriptor_t x2Desc,
const void* x2,
const miopenTensorDescriptor_t weightDesc,
const void* weight,
const miopenTensorDescriptor_t biasDesc,
const void* bias,
const float epsilon,
const int32_t normalized_dim,
const miopenTensorDescriptor_t yDesc,
void* y,
const miopenTensorDescriptor_t meanDesc,
void* mean,
const miopenTensorDescriptor_t rstdDesc,
void* rstd);
// CLOSEOUT LAYERNORM DOXYGEN GROUP
#endif
#ifdef MIOPEN_BETA_API
// LayerNorm APIs
MIOPEN_EXPORT miopenStatus_t miopenT5LayerNormForward(miopenHandle_t handle,
const miopenTensorDescriptor_t xDesc,
const void* x,
const miopenTensorDescriptor_t weightDesc,
const void* weight,
const float epsilon,
const miopenTensorDescriptor_t yDesc,
void* y,
const miopenTensorDescriptor_t rstdDesc,
void* rstd);
MIOPEN_EXPORT miopenStatus_t
const miopenTensorDescriptor_t dyDesc,
const miopenTensorDescriptor_t xDesc,
const miopenTensorDescriptor_t weightDesc,
const miopenTensorDescriptor_t rstdDesc,
const miopenTensorDescriptor_t dxDesc,
const miopenTensorDescriptor_t dwDesc,
size_t* sizeInBytes);
MIOPEN_EXPORT miopenStatus_t miopenT5LayerNormBackward(miopenHandle_t handle,
void* workspace,
size_t workspaceSizeInBytes,
const miopenTensorDescriptor_t dyDesc,
const void* dy,
const miopenTensorDescriptor_t xDesc,
const void* x,
const miopenTensorDescriptor_t weightDesc,
const void* weight,
const miopenTensorDescriptor_t rstdDesc,
const void* rstd,
const miopenTensorDescriptor_t dxDesc,
void* dx,
const miopenTensorDescriptor_t dwDesc,
void* dw);
// CLOSEOUT LAYERNORM DOXYGEN GROUP
#endif
#ifdef MIOPEN_BETA_API
// Graph API
typedef enum
{
typedef enum
{
typedef enum
{
typedef enum
{
typedef enum
{
typedef enum
{
/* IDENTITY alpha = 1.0 and beta = 0.0 */
/* SCALE alpha = 4.2 and beta = 0.0 */
/* BILINEAR alpha = 3.2 and beta = 1.1 */
/* ERROR_STATE alpha = 0.0 and beta = 3.1 */
DEFAULT = 0, /* alpha = 1.0 and beta = 0.0.*/
SCALE = 1, /* alpha with some value and beta 0.0*/
BILINEAR = 2, /* both alpha and beta with some value*/
ERROR_STATE = 3, /* alpha 0.0 and beta with some value, this should not occur.
But used to check for errors.*/
typedef enum
{
MIOPEN_DECLARE_OBJECT(miopenBackendDescriptor)
miopenBackendDescriptorType_t descriptorType, miopenBackendDescriptor_t* descriptor);
MIOPEN_EXPORT miopenStatus_t miopenBackendSetAttribute(miopenBackendDescriptor_t descriptor,
int64_t elementCount,
void* arrayOfElements);
MIOPEN_EXPORT miopenStatus_t miopenBackendFinalize(miopenBackendDescriptor_t descriptor);
MIOPEN_EXPORT miopenStatus_t miopenBackendGetAttribute(miopenBackendDescriptor_t descriptor,
int64_t requestedElementCount,
int64_t* elementCount,
void* arrayOfElements);
MIOPEN_EXPORT miopenStatus_t miopenBackendExecute(miopenHandle_t handle,
miopenBackendDescriptor_t executionPlan,
miopenBackendDescriptor_t variantPack);
MIOPEN_EXPORT miopenStatus_t miopenBackendDestroyDescriptor(miopenBackendDescriptor_t descriptor);
MIOPEN_EXPORT miopenStatus_t miopenBackendInitialize(miopenBackendDescriptor_t descriptor,
size_t sizeInBytes);
// CLOSEOUT BackendAPI DOXYGEN GROUP
#endif // MIOPEN_BETA_API
#ifdef MIOPEN_BETA_API
// FusedAdam APIs
MIOPEN_EXPORT miopenStatus_t miopenFusedAdam(miopenHandle_t handle,
const miopenTensorDescriptor_t paramDesc,
void* param,
const miopenTensorDescriptor_t gradDesc,
const void* grad,
const miopenTensorDescriptor_t expAvgDesc,
void* expAvg,
const miopenTensorDescriptor_t expAvgSqDesc,
void* expAvgSq,
const miopenTensorDescriptor_t maxExpAvgSqDesc,
void* maxExpAvgSq,
const miopenTensorDescriptor_t stateStepDesc,
void* stateStep,
const unsigned int state_step,
const float lr,
const float beta1,
const float beta2,
const float weight_decay,
const float eps,
const bool amsgrad,
const bool maximize,
const bool adamw,
const miopenTensorDescriptor_t gradScaleDesc,
const void* gradScale,
const miopenTensorDescriptor_t foundInfDesc,
const void* foundInf);
MIOPEN_EXPORT miopenStatus_t
miopenFusedAdamWithOutput(miopenHandle_t handle,
const miopenTensorDescriptor_t paramInDesc,
void* paramIn,
const miopenTensorDescriptor_t paramOutDesc,
void* paramOut,
const miopenTensorDescriptor_t paramOutFloat16Desc,
void* paramOutFloat16,
const miopenTensorDescriptor_t gradInDesc,
const void* gradIn,
const miopenTensorDescriptor_t expAvgInDesc,
void* expAvgIn,
const miopenTensorDescriptor_t expAvgOutDesc,
void* expAvgOut,
const miopenTensorDescriptor_t expAvgSqInDesc,
void* expAvgSqIn,
const miopenTensorDescriptor_t expAvgSqOutDesc,
void* expAvgSqOut,
const miopenTensorDescriptor_t maxExpAvgSqInDesc,
void* maxExpAvgSqIn,
const miopenTensorDescriptor_t maxExpAvgSqOutDesc,
void* maxExpAvgSqOut,
const miopenTensorDescriptor_t stateStepInDesc,
void* stateStepIn,
const miopenTensorDescriptor_t stateStepOutDesc,
void* stateStepOut,
const unsigned int state_step,
const float lr,
const float beta1,
const float beta2,
const float weight_decay,
const float eps,
const bool amsgrad,
const bool maximize,
const bool adamw,
const miopenTensorDescriptor_t gradScaleDesc,
const void* gradScale,
const miopenTensorDescriptor_t foundInfDesc,
const void* foundInf);
// CLOSEOUT SGD DOXYGEN GROUP
#endif // MIOPEN_BETA_API
#ifdef __cplusplus
}
#endif
#ifdef __clang__
#pragma clang diagnostic pop
#endif
#endif // MIOPEN_GUARD_MIOPEN_H_
miopenStatus_t miopenCreateOpActivationBackward(miopenFusionPlanDescriptor_t fusePlanDesc, miopenFusionOpDescriptor_t *activBwdOp, miopenActivationMode_t mode)
Creates a backward activation operator.
miopenStatus_t miopenCreateOpBatchNormForward(miopenFusionPlanDescriptor_t fusePlanDesc, miopenFusionOpDescriptor_t *bnFwdOp, const miopenBatchNormMode_t bn_mode, bool runningMeanVariance)
Creates a forward training batch normalization operator.
miopenStatus_t miopenFusionPlanConvolutionGetAlgo(miopenFusionPlanDescriptor_t fusePlanDesc, const int requestAlgoCount, int *returnedAlgoCount, miopenConvFwdAlgorithm_t *returnedAlgos)
Returns the supported algorithms for the convolution operator in the Fusion Plan.
miopenStatus_t miopenFusionPlanGetWorkSpaceSize(miopenHandle_t handle, miopenFusionPlanDescriptor_t fusePlanDesc, size_t *workSpaceSize, miopenConvFwdAlgorithm_t algo)
Query the workspace size required for the fusion plan.
miopenStatus_t miopenFusionPlanConvolutionSetAlgo(miopenFusionPlanDescriptor_t fusePlanDesc, miopenConvFwdAlgorithm_t algo)
Requests the fusion runtime to choose a particular algorithm for the added convolution operation.
miopenStatus_t miopenCreateOpBatchNormInference(miopenFusionPlanDescriptor_t fusePlanDesc, miopenFusionOpDescriptor_t *bnOp, const miopenBatchNormMode_t bn_mode, const miopenTensorDescriptor_t bnScaleBiasMeanVarDesc)
Creates a forward inference batch normalization operator.
miopenStatus_t miopenSetOpArgsBiasForward(miopenOperatorArgs_t args, const miopenFusionOpDescriptor_t biasOp, const void *alpha, const void *beta, const void *bias)
Sets the arguments for forward bias op.
miopenStatus_t miopenCreateOpConvForward(miopenFusionPlanDescriptor_t fusePlanDesc, miopenFusionOpDescriptor_t *convOp, miopenConvolutionDescriptor_t convDesc, const miopenTensorDescriptor_t wDesc)
Creates forward convolution operator.
miopenStatus_t miopenSetOpArgsBatchNormInference(miopenOperatorArgs_t args, const miopenFusionOpDescriptor_t bnOp, const void *alpha, const void *beta, const void *bnScale, const void *bnBias, const void *estimatedMean, const void *estimatedVariance, double epsilon)
Sets the arguments for inference batch normalization op.
miopenStatus_t miopenSetOpArgsBatchNormForward(miopenOperatorArgs_t args, const miopenFusionOpDescriptor_t bnOp, const void *alpha, const void *beta, const void *bnScale, const void *bnBias, void *savedMean, void *savedInvVariance, void *runningMean, void *runningVariance, double expAvgFactor, double epsilon)
Sets the arguments for forward batch normalization op.
miopenStatus_t miopenExecuteFusionPlan(const miopenHandle_t handle, const miopenFusionPlanDescriptor_t fusePlanDesc, const miopenTensorDescriptor_t inputDesc, const void *input, const miopenTensorDescriptor_t outputDesc, void *output, miopenOperatorArgs_t args)
Executes the fusion plan.
miopenStatus_t miopenFusionPlanGetOp(miopenFusionPlanDescriptor_t fusePlanDesc, const int op_idx, miopenFusionOpDescriptor_t *op)
Allows access to the operators in a fusion plan.
miopenStatus_t miopenDestroyFusionPlan(miopenFusionPlanDescriptor_t fusePlanDesc)
Destroy the fusion plan descriptor object.
miopenStatus_t miopenCreateOpActivationForward(miopenFusionPlanDescriptor_t fusePlanDesc, miopenFusionOpDescriptor_t *activFwdOp, miopenActivationMode_t mode)
Creates a forward activation operator.
miopenFusionDirection_t
Kernel fusion direction in the network.
Definition: miopen.h:3071
miopenStatus_t miopenSetOpArgsActivBackward(miopenOperatorArgs_t args, const miopenFusionOpDescriptor_t activBwdOp, const void *alpha, const void *beta, const void *y, const void *reserved, double activAlpha, double activBeta, double activGamma)
Sets the arguments for backward activation op.
miopenStatus_t miopenCompileFusionPlan(miopenHandle_t handle, miopenFusionPlanDescriptor_t fusePlanDesc)
Compiles the fusion plan.
miopenStatus_t miopenSetOpArgsBatchNormBackward(miopenOperatorArgs_t args, const miopenFusionOpDescriptor_t bnOp, const void *alpha, const void *beta, const void *x, const void *bnScale, const void *bnBias, void *resultBnScaleDiff, void *resultBnBiasDiff, const void *savedMean, const void *savedInvVariance)
Sets the arguments for backward batch normalization op.
miopenStatus_t miopenSetOpArgsActivForward(miopenOperatorArgs_t args, const miopenFusionOpDescriptor_t activFwdOp, const void *alpha, const void *beta, double activAlpha, double activBeta, double activGamma)
Sets the arguments for forward activation op.
miopenStatus_t miopenDestroyOperatorArgs(miopenOperatorArgs_t args)
Destroys an operator argument object.
miopenStatus_t miopenCreateOpBatchNormBackward(miopenFusionPlanDescriptor_t fusePlanDesc, miopenFusionOpDescriptor_t *bnBwdOp, const miopenBatchNormMode_t bn_mode)
Creates a back propagation batch normalization operator.
miopenStatus_t miopenCreateOperatorArgs(miopenOperatorArgs_t *args)
Creates an operator argument object.
miopenStatus_t miopenSetOpArgsConvForward(miopenOperatorArgs_t args, const miopenFusionOpDescriptor_t convOp, const void *alpha, const void *beta, const void *w)
Sets the arguments for forward convolution op.
miopenStatus_t miopenConvolutionBiasActivationForward(miopenHandle_t handle, const void *alpha1, const miopenTensorDescriptor_t xDesc, const void *x, const miopenTensorDescriptor_t wDesc, const void *w, const miopenConvolutionDescriptor_t convDesc, miopenConvFwdAlgorithm_t algo, void *workspace, size_t workspaceSizeInBytes, const void *alpha2, const miopenTensorDescriptor_t zDesc, const void *z, const miopenTensorDescriptor_t biasDesc, const void *bias, const miopenActivationDescriptor_t activationDesc, const miopenTensorDescriptor_t yDesc, void *y)
Prepares and executes the Convlution+Bias+Activation Fusion.
miopenStatus_t miopenCreateFusionPlan(miopenFusionPlanDescriptor_t *fusePlanDesc, const miopenFusionDirection_t fuseDirection, const miopenTensorDescriptor_t inputDesc)
Creates the kenrel fusion plan descriptor object.
miopenStatus_t miopenCreateOpBiasForward(miopenFusionPlanDescriptor_t fusePlanDesc, miopenFusionOpDescriptor_t *biasOp, const miopenTensorDescriptor_t bDesc)
Creates a forward bias operator.
@ miopenHorizontalFusion
Definition: miopen.h:3073
@ miopenVerticalFusion
Definition: miopen.h:3072
miopenStatus_t miopenBackendExecute(miopenHandle_t handle, miopenBackendDescriptor_t executionPlan, miopenBackendDescriptor_t variantPack)
Executes a graph.
miopenBackendHeurMode_t
Operation mode of CUDNN_BACKEND_ENGINEHEUR_DESCRIPTOR.
Definition: miopen.h:6697
miopenPointwiseMode_t
Intended poinwise math operation for a pointwise operation descriptor.
Definition: miopen.h:6497
miopenStatus_t miopenBackendFinalize(miopenBackendDescriptor_t descriptor)
Finalizes a backend descriptor.
miopenStatus_t miopenBackendInitialize(miopenBackendDescriptor_t descriptor, miopenBackendDescriptorType_t descriptorType, size_t sizeInBytes)
Repurposes an instance of miopenBackendDescriptor_t.
miopenBackendAttributeName_t
Backend Descriptor's Attribute.
Definition: miopen.h:6204
miopenRngDistribution_t
Distribution for random number generation.
Definition: miopen.h:6673
miopenBackendDescriptorType_t
Descriptor type.
Definition: miopen.h:6162
miopenStatus_t miopenBackendSetAttribute(miopenBackendDescriptor_t descriptor, miopenBackendAttributeName_t attributeName, miopenBackendAttributeType_t attributeType, int64_t elementCount, void *arrayOfElements)
Sets an attribute of a descriptor.
miopenStatus_t miopenBackendGetAttribute(miopenBackendDescriptor_t descriptor, miopenBackendAttributeName_t attributeName, miopenBackendAttributeType_t attributeType, int64_t requestedElementCount, int64_t *elementCount, void *arrayOfElements)
Retrieves backend descriptor's attribute.
miopenStatus_t miopenBackendCreateDescriptor(miopenBackendDescriptorType_t descriptorType, miopenBackendDescriptor_t *descriptor)
Backend descriptor.
miopenAlphaBetaCase_t
Definition: miopen.h:6680
miopenStatus_t miopenBackendDestroyDescriptor(miopenBackendDescriptor_t descriptor)
Destroys an instance of miopenBackendDescriptor_t.
miopenBackendAttributeType_t
Data type of an attribute of a backend descriptor.
Definition: miopen.h:6458
@ MIOPEN_HEUR_MODE_INSTANT
Definition: miopen.h:6698
@ MIOPEN_HEUR_MODE_A
Definition: miopen.h:6701
@ MIOPEN_HEUR_MODE_B
Definition: miopen.h:6699
@ MIOPEN_HEUR_MODES_COUNT
Definition: miopen.h:6702
@ MIOPEN_HEUR_MODE_FALLBACK
Definition: miopen.h:6700
@ MIOPEN_POINTWISE_SOFTPLUS_FWD
Definition: miopen.h:6585
@ MIOPEN_POINTWISE_ELU_FWD
Definition: miopen.h:6578
@ MIOPEN_POINTWISE_RELU_FWD
Definition: miopen.h:6569
@ MIOPEN_POINTWISE_DIV
Definition: miopen.h:6506
@ MIOPEN_POINTWISE_SIGMOID_BWD
Definition: miopen.h:6603
@ MIOPEN_POINTWISE_POW
Definition: miopen.h:6522
@ MIOPEN_POINTWISE_MOD
Definition: miopen.h:6516
@ MIOPEN_POINTWISE_SQRT
Definition: miopen.h:6555
@ MIOPEN_POINTWISE_BINARY_SELECT
Definition: miopen.h:6660
@ MIOPEN_POINTWISE_GELU_BWD
Definition: miopen.h:6611
@ MIOPEN_POINTWISE_MIN
Definition: miopen.h:6512
@ MIOPEN_POINTWISE_CMP_NEQ
Definition: miopen.h:6630
@ MIOPEN_POINTWISE_FLOOR
Definition: miopen.h:6540
@ MIOPEN_POINTWISE_RSQRT
Definition: miopen.h:6549
@ MIOPEN_POINTWISE_CMP_EQ
Definition: miopen.h:6627
@ MIOPEN_POINTWISE_CMP_GE
Definition: miopen.h:6637
@ MIOPEN_POINTWISE_ADD_SQUARE
Definition: miopen.h:6503
@ MIOPEN_POINTWISE_ERF
Definition: miopen.h:6561
@ MIOPEN_POINTWISE_SWISH_FWD
Definition: miopen.h:6588
@ MIOPEN_POINTWISE_LOG
Definition: miopen.h:6543
@ MIOPEN_POINTWISE_SUB
Definition: miopen.h:6525
@ MIOPEN_POINTWISE_NEG
Definition: miopen.h:6546
@ MIOPEN_POINTWISE_LOGICAL_AND
Definition: miopen.h:6647
@ MIOPEN_POINTWISE_SWISH_BWD
Definition: miopen.h:6617
@ MIOPEN_POINTWISE_GELU_APPROX_TANH_FWD
Definition: miopen.h:6593
@ MIOPEN_POINTWISE_SIN
Definition: miopen.h:6552
@ MIOPEN_POINTWISE_RECIPROCAL
Definition: miopen.h:6664
@ MIOPEN_POINTWISE_GELU_APPROX_TANH_BWD
Definition: miopen.h:6624
@ MIOPEN_POINTWISE_GELU_FWD
Definition: miopen.h:6582
@ MIOPEN_POINTWISE_ABS
Definition: miopen.h:6528
@ MIOPEN_POINTWISE_CMP_LT
Definition: miopen.h:6640
@ MIOPEN_POINTWISE_EXP
Definition: miopen.h:6537
@ MIOPEN_POINTWISE_GEN_INDEX
Definition: miopen.h:6656
@ MIOPEN_POINTWISE_CEIL
Definition: miopen.h:6531
@ MIOPEN_POINTWISE_LOGICAL_NOT
Definition: miopen.h:6653
@ MIOPEN_POINTWISE_SIGMOID_FWD
Definition: miopen.h:6575
@ MIOPEN_POINTWISE_SOFTPLUS_BWD
Definition: miopen.h:6614
@ MIOPEN_POINTWISE_LOGICAL_OR
Definition: miopen.h:6650
@ MIOPEN_POINTWISE_TAN
Definition: miopen.h:6558
@ MIOPEN_POINTWISE_ELU_BWD
Definition: miopen.h:6607
@ MIOPEN_POINTWISE_IDENTITY
Definition: miopen.h:6566
@ MIOPEN_POINTWISE_CMP_LE
Definition: miopen.h:6644
@ MIOPEN_POINTWISE_COS
Definition: miopen.h:6534
@ MIOPEN_POINTWISE_TANH_BWD
Definition: miopen.h:6600
@ MIOPEN_POINTWISE_MUL
Definition: miopen.h:6519
@ MIOPEN_POINTWISE_TANH_FWD
Definition: miopen.h:6572
@ MIOPEN_POINTWISE_RELU_BWD
Definition: miopen.h:6597
@ MIOPEN_POINTWISE_ADD
Definition: miopen.h:6499
@ MIOPEN_POINTWISE_MAX
Definition: miopen.h:6509
@ MIOPEN_POINTWISE_CMP_GT
Definition: miopen.h:6633
@ MIOPEN_ATTR_OPERATION_NORM_BWD_MODE
Definition: miopen.h:6421
@ MIOPEN_ATTR_OPERATION_CONVOLUTION_FORWARD_W
Definition: miopen.h:6251
@ MIOPEN_ATTR_RESAMPLE_NAN_PROPAGATION
Definition: miopen.h:6375
@ MIOPEN_ATTR_OPERATION_RESAMPLE_FWD_XDESC
Definition: miopen.h:6378
@ MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_W
Definition: miopen.h:6257
@ MIOPEN_ATTR_OPERATION_CONVOLUTION_FORWARD_ALPHA
Definition: miopen.h:6248
@ MIOPEN_ATTR_OPERATION_SIGNAL_MODE
Definition: miopen.h:6399
@ MIOPEN_ATTR_OPERATION_RNG_DESC
Definition: miopen.h:6445
@ MIOPEN_ATTR_OPERATION_CONVOLUTION_FORWARD_BETA
Definition: miopen.h:6249
@ MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_DBN_SCALE_DESC
Definition: miopen.h:6362
@ MIOPEN_ATTR_OPERATION_NORM_BWD_INV_VARIANCE_DESC
Definition: miopen.h:6424
@ MIOPEN_ATTR_OPERATION_NORM_FWD_EPSILON_DESC
Definition: miopen.h:6412
@ MIOPEN_ATTR_OPERATIONGRAPH_OPS
Definition: miopen.h:6301
@ MIOPEN_ATTR_KNOB_INFO_MAXIMUM_VALUE
Definition: miopen.h:6325
@ MIOPEN_ATTR_CONVOLUTION_POST_PADDINGS
Definition: miopen.h:6220
@ MIOPEN_ATTR_OPERATION_SIGNAL_YDESC
Definition: miopen.h:6403
@ MIOPEN_ATTR_OPERATION_NORM_BWD_DSCALE_DESC
Definition: miopen.h:6428
@ MIOPEN_ATTR_OPERATION_NORM_BWD_PEER_STAT_DESCS
Definition: miopen.h:6431
@ MIOPEN_ATTR_OPERATION_RESAMPLE_BWD_YDESC
Definition: miopen.h:6392
@ MIOPEN_ATTR_CONVOLUTION_PRE_PADDINGS
Definition: miopen.h:6221
@ MIOPEN_ATTR_REDUCTION_OPERATOR
Definition: miopen.h:6349
@ MIOPEN_ATTR_OPERATION_MATMUL_DESC
Definition: miopen.h:6343
@ MIOPEN_ATTR_CONVOLUTION_DILATIONS
Definition: miopen.h:6218
@ MIOPEN_ATTR_OPERATION_RESAMPLE_BWD_DYDESC
Definition: miopen.h:6386
@ MIOPEN_ATTR_OPERATION_POINTWISE_ALPHA1
Definition: miopen.h:6270
@ MIOPEN_ATTR_RESAMPLE_SPATIAL_DIMS
Definition: miopen.h:6370
@ MIOPEN_ATTR_EXECUTION_PLAN_COMPUTED_INTERMEDIATE_UIDS
Definition: miopen.h:6236
@ MIOPEN_ATTR_OPERATION_NORM_FWD_MEAN_DESC
Definition: miopen.h:6408
@ MIOPEN_ATTR_OPERATION_BN_FINALIZE_UPDATED_RUNNING_MEAN_DESC
Definition: miopen.h:6290
@ MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_INVSTD_DESC
Definition: miopen.h:6358
@ MIOPEN_ATTR_KNOB_INFO_TYPE
Definition: miopen.h:6324
@ MIOPEN_ATTR_LAYOUT_INFO_TYPES
Definition: miopen.h:6322
@ MIOPEN_ATTR_OPERATION_BN_FINALIZE_Y_SUM_DESC
Definition: miopen.h:6284
@ MIOPEN_ATTR_OPERATIONGRAPH_HANDLE
Definition: miopen.h:6300
@ MIOPEN_ATTR_OPERATION_NORM_BWD_DYDESC
Definition: miopen.h:6425
@ MIOPEN_ATTR_RNG_UNIFORM_DIST_MINIMUM
Definition: miopen.h:6440
@ MIOPEN_ATTR_POINTWISE_MATH_PREC
Definition: miopen.h:6206
@ MIOPEN_ATTR_OPERATION_MATMUL_GEMM_N_OVERRIDE_DESC
Definition: miopen.h:6346
@ MIOPEN_ATTR_OPERATION_GENSTATS_MODE
Definition: miopen.h:6276
@ MIOPEN_ATTR_KNOB_CHOICE_KNOB_VALUE
Definition: miopen.h:6246
@ MIOPEN_ATTR_VARIANT_PACK_INTERMEDIATES
Definition: miopen.h:6318
@ MIOPEN_ATTR_OPERATION_REDUCTION_YDESC
Definition: miopen.h:6353
@ MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_BETA
Definition: miopen.h:6261
@ MIOPEN_ATTR_VARIANT_PACK_WORKSPACE
Definition: miopen.h:6319
@ MIOPEN_ATTR_TENSOR_IS_BY_VALUE
Definition: miopen.h:6312
@ MIOPEN_ATTR_OPERATION_NORM_FWD_MODE
Definition: miopen.h:6405
@ MIOPEN_ATTR_OPERATION_CONVOLUTION_FORWARD_CONV_DESC
Definition: miopen.h:6250
@ MIOPEN_ATTR_OPERATION_BN_FINALIZE_STATS_MODE
Definition: miopen.h:6282
@ MIOPEN_ATTR_OPERATION_NORM_FWD_INPUT_RUNNING_VAR_DESC
Definition: miopen.h:6415
@ MIOPEN_ATTR_OPERATION_RESHAPE_XDESC
Definition: miopen.h:6433
@ MIOPEN_ATTR_OPERATION_RESAMPLE_BWD_XDESC
Definition: miopen.h:6391
@ MIOPEN_ATTR_OPERATION_POINTWISE_XDESC
Definition: miopen.h:6267
@ MIOPEN_ATTR_VARIANT_PACK_UNIQUE_IDS
Definition: miopen.h:6316
@ MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_DY_DESC
Definition: miopen.h:6361
@ MIOPEN_ATTR_OPERATION_RESAMPLE_FWD_ALPHA
Definition: miopen.h:6381
@ MIOPEN_ATTR_OPERATION_BN_FINALIZE_SCALE_DESC
Definition: miopen.h:6286
@ MIOPEN_ATTR_OPERATION_SIGNAL_VALUE
Definition: miopen.h:6401
@ MIOPEN_ATTR_OPERATION_SIGNAL_FLAGDESC
Definition: miopen.h:6400
@ MIOPEN_ATTR_OPERATION_POINTWISE_TDESC
Definition: miopen.h:6274
@ MIOPEN_ATTR_ENGINEHEUR_RESULTS
Definition: miopen.h:6226
@ MIOPEN_ATTR_TENSOR_BYTE_ALIGNMENT
Definition: miopen.h:6304
@ MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_X
Definition: miopen.h:6264
@ MIOPEN_ATTR_OPERATION_BN_FINALIZE_ACCUM_COUNT_DESC
Definition: miopen.h:6296
@ MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_EQ_BIAS
Definition: miopen.h:6366
@ MIOPEN_ATTR_OPERATION_GENSTATS_MATH_PREC
Definition: miopen.h:6277
@ MIOPEN_ATTR_OPERATION_NORM_FWD_INPUT_RUNNING_MEAN_DESC
Definition: miopen.h:6414
@ MIOPEN_ATTR_OPERATION_BN_FINALIZE_EQ_SCALE_DESC
Definition: miopen.h:6294
@ MIOPEN_ATTR_EXECUTION_PLAN_HANDLE
Definition: miopen.h:6233
@ MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_X_DESC
Definition: miopen.h:6360
@ MIOPEN_ATTR_OPERATION_CONCAT_OUTPUT_DESC
Definition: miopen.h:6397
@ MIOPEN_ATTR_OPERATION_NORM_BWD_EPSILON_DESC
Definition: miopen.h:6427
@ MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_BETA
Definition: miopen.h:6255
@ MIOPEN_ATTR_EXECUTION_PLAN_WORKSPACE_SIZE
Definition: miopen.h:6235
@ MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_DX
Definition: miopen.h:6258
@ MIOPEN_ATTR_TENSOR_VECTOR_COUNT
Definition: miopen.h:6308
@ MIOPEN_ATTR_OPERATION_MATMUL_CDESC
Definition: miopen.h:6342
@ MIOPEN_ATTR_REDUCTION_COMP_TYPE
Definition: miopen.h:6350
@ MIOPEN_ATTR_OPERATION_RESAMPLE_BWD_BETA
Definition: miopen.h:6389
@ MIOPEN_ATTR_TENSOR_VECTORIZED_DIMENSION
Definition: miopen.h:6309
@ MIOPEN_ATTR_TENSOR_DIMENSIONS
Definition: miopen.h:6306
@ MIOPEN_ATTR_OPERATION_GENSTATS_SUMDESC
Definition: miopen.h:6279
@ MIOPEN_ATTR_OPERATION_CONCAT_INPLACE_INDEX
Definition: miopen.h:6396
@ MIOPEN_ATTR_OPERATION_POINTWISE_ALPHA2
Definition: miopen.h:6271
@ MIOPEN_ATTR_ENGINE_NUMERICAL_NOTE
Definition: miopen.h:6332
@ MIOPEN_ATTR_ENGINE_BEHAVIOR_NOTE
Definition: miopen.h:6334
@ MIOPEN_ATTR_EXECUTION_PLAN_JSON_REPRESENTATION
Definition: miopen.h:6238
@ MIOPEN_ATTR_RESAMPLE_STRIDES
Definition: miopen.h:6373
@ MIOPEN_ATTR_POINTWISE_ELU_ALPHA
Definition: miopen.h:6211
@ MIOPEN_ATTR_OPERATION_NORM_FWD_OUTPUT_RUNNING_VAR_DESC
Definition: miopen.h:6417
@ MIOPEN_ATTR_OPERATION_RESAMPLE_BWD_IDXDESC
Definition: miopen.h:6387
@ MIOPEN_ATTR_OPERATION_RNG_SEED
Definition: miopen.h:6444
@ MIOPEN_ATTR_OPERATION_NORM_BWD_XDESC
Definition: miopen.h:6422
@ MIOPEN_ATTR_OPERATION_POINTWISE_DXDESC
Definition: miopen.h:6272
@ MIOPEN_ATTR_OPERATION_CONCAT_INPUT_DESCS
Definition: miopen.h:6395
@ MIOPEN_ATTR_RESAMPLE_MODE
Definition: miopen.h:6368
@ MIOPEN_ATTR_RNG_DISTRIBUTION
Definition: miopen.h:6436
@ MIOPEN_ATTR_OPERATION_NORM_BWD_MEAN_DESC
Definition: miopen.h:6423
@ MIOPEN_ATTR_OPERATION_MATMUL_GEMM_M_OVERRIDE_DESC
Definition: miopen.h:6345
@ MIOPEN_ATTR_OPERATION_NORM_FWD_PHASE
Definition: miopen.h:6406
@ MIOPEN_ATTR_POINTWISE_RELU_LOWER_CLIP_SLOPE
Definition: miopen.h:6210
@ MIOPEN_ATTR_OPERATION_RESHAPE_YDESC
Definition: miopen.h:6434
@ MIOPEN_ATTR_VARIANT_PACK_DATA_POINTERS
Definition: miopen.h:6317
@ MIOPEN_ATTR_POINTWISE_AXIS
Definition: miopen.h:6214
@ MIOPEN_ATTR_OPERATION_NORM_FWD_YDESC
Definition: miopen.h:6418
@ MIOPEN_ATTR_POINTWISE_RELU_LOWER_CLIP
Definition: miopen.h:6208
@ MIOPEN_ATTR_ENGINE_OPERATION_GRAPH
Definition: miopen.h:6329
@ MIOPEN_ATTR_OPERATION_MATMUL_BDESC
Definition: miopen.h:6341
@ MIOPEN_ATTR_TENSOR_DATA_TYPE
Definition: miopen.h:6305
@ MIOPEN_ATTR_OPERATION_SIGNAL_XDESC
Definition: miopen.h:6402
@ MIOPEN_ATTR_KNOB_INFO_MINIMUM_VALUE
Definition: miopen.h:6326
@ MIOPEN_ATTR_OPERATION_NORM_FWD_BIAS_DESC
Definition: miopen.h:6411
@ MIOPEN_ATTR_OPERATION_RESAMPLE_FWD_DESC
Definition: miopen.h:6383
@ MIOPEN_ATTR_RESAMPLE_PRE_PADDINGS
Definition: miopen.h:6372
@ MIOPEN_ATTR_MATMUL_COMP_TYPE
Definition: miopen.h:6337
@ MIOPEN_ATTR_TENSOR_UNIQUE_ID
Definition: miopen.h:6310
@ MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_EQ_DY_SCALE_DESC
Definition: miopen.h:6364
@ MIOPEN_ATTR_OPERATION_CONCAT_AXIS
Definition: miopen.h:6394
@ MIOPEN_ATTR_OPERATION_RNG_YDESC
Definition: miopen.h:6443
@ MIOPEN_ATTR_ENGINE_GLOBAL_INDEX
Definition: miopen.h:6330
@ MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_CONV_DESC
Definition: miopen.h:6256
@ MIOPEN_ATTR_ENGINEHEUR_OPERATION_GRAPH
Definition: miopen.h:6225
@ MIOPEN_ATTR_TENSOR_RAGGED_OFFSET_DESC
Definition: miopen.h:6314
@ MIOPEN_ATTR_POINTWISE_SOFTPLUS_BETA
Definition: miopen.h:6212
@ MIOPEN_ATTR_TENSOR_IS_VIRTUAL
Definition: miopen.h:6311
@ MIOPEN_ATTR_ENGINECFG_KNOB_CHOICES
Definition: miopen.h:6231
@ MIOPEN_ATTR_MATMUL_PADDING_VALUE
Definition: miopen.h:6338
@ MIOPEN_ATTR_OPERATION_BN_FINALIZE_EXP_AVERATE_FACTOR_DESC
Definition: miopen.h:6298
@ MIOPEN_ATTR_OPERATION_BN_FINALIZE_SAVED_INV_STD_DESC
Definition: miopen.h:6293
@ MIOPEN_ATTR_OPERATION_CONVOLUTION_FORWARD_X
Definition: miopen.h:6252
@ MIOPEN_ATTR_KNOB_INFO_STRIDE
Definition: miopen.h:6327
@ MIOPEN_ATTR_RESAMPLE_WINDOW_DIMS
Definition: miopen.h:6374
@ MIOPEN_ATTR_OPERATION_POINTWISE_YDESC
Definition: miopen.h:6269
@ MIOPEN_ATTR_OPERATION_RESAMPLE_FWD_YDESC
Definition: miopen.h:6379
@ MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_BN_SCALE_DESC
Definition: miopen.h:6359
@ MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_DY
Definition: miopen.h:6259
@ MIOPEN_ATTR_CONVOLUTION_CONV_MODE
Definition: miopen.h:6217
@ MIOPEN_ATTR_OPERATION_REDUCTION_XDESC
Definition: miopen.h:6352
@ MIOPEN_ATTR_EXECUTION_PLAN_RUN_ONLY_INTERMEDIATE_UIDS
Definition: miopen.h:6237
@ MIOPEN_ATTR_OPERATION_BN_FINALIZE_MATH_PREC
Definition: miopen.h:6283
@ MIOPEN_ATTR_ENGINE_SM_COUNT_TARGET
Definition: miopen.h:6335
@ MIOPEN_ATTR_OPERATION_BN_FINALIZE_EQ_BIAS_DESC
Definition: miopen.h:6295
@ MIOPEN_ATTR_KNOB_CHOICE_KNOB_TYPE
Definition: miopen.h:6245
@ MIOPEN_ATTR_OPERATION_RESAMPLE_BWD_DXDESC
Definition: miopen.h:6385
@ MIOPEN_ATTR_OPERATION_BN_FINALIZE_PREV_RUNNING_MEAN_DESC
Definition: miopen.h:6288
@ MIOPEN_ATTR_OPERATION_POINTWISE_DYDESC
Definition: miopen.h:6273
@ MIOPEN_ATTR_OPERATION_NORM_FWD_EXP_AVG_FACTOR_DESC
Definition: miopen.h:6413
@ MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_EQ_X_SCALE_DESC
Definition: miopen.h:6365
@ MIOPEN_ATTR_OPERATION_RNG_OFFSET_DESC
Definition: miopen.h:6446
@ MIOPEN_ATTR_OPERATION_CONVOLUTION_FORWARD_Y
Definition: miopen.h:6253
@ MIOPEN_ATTR_OPERATION_BN_FINALIZE_PREV_RUNNING_VAR_DESC
Definition: miopen.h:6289
@ MIOPEN_ATTR_ENGINE_LAYOUT_INFO
Definition: miopen.h:6333
@ MIOPEN_ATTR_INTERMEDIATE_INFO_UNIQUE_ID
Definition: miopen.h:6240
@ MIOPEN_ATTR_CONVOLUTION_COMP_TYPE
Definition: miopen.h:6216
@ MIOPEN_ATTR_RESAMPLE_COMP_TYPE
Definition: miopen.h:6369
@ MIOPEN_ATTR_ENGINECFG_ENGINE
Definition: miopen.h:6229
@ MIOPEN_ATTR_RESAMPLE_POST_PADDINGS
Definition: miopen.h:6371
@ MIOPEN_ATTR_RESAMPLE_PADDING_MODE
Definition: miopen.h:6376
@ MIOPEN_ATTR_CONVOLUTION_SPATIAL_DIMS
Definition: miopen.h:6222
@ MIOPEN_ATTR_OPERATION_NORM_FWD_OUTPUT_RUNNING_MEAN_DESC
Definition: miopen.h:6416
@ MIOPEN_ATTR_OPERATION_GENSTATS_XDESC
Definition: miopen.h:6278
@ MIOPEN_ATTR_OPERATION_NORM_FWD_INV_VARIANCE_DESC
Definition: miopen.h:6409
@ MIOPEN_ATTR_OPERATION_BN_FINALIZE_Y_SQ_SUM_DESC
Definition: miopen.h:6285
@ MIOPEN_ATTR_ENGINE_KNOB_INFO
Definition: miopen.h:6331
@ MIOPEN_ATTR_OPERATION_MATMUL_IRREGULARLY_STRIDED_BATCH_COUNT
Definition: miopen.h:6344
@ MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_DW
Definition: miopen.h:6263
@ MIOPEN_ATTR_TENSOR_REORDERING_MODE
Definition: miopen.h:6313
@ MIOPEN_ATTR_INTERMEDIATE_INFO_SIZE
Definition: miopen.h:6241
@ MIOPEN_ATTR_OPERATION_MATMUL_GEMM_K_OVERRIDE_DESC
Definition: miopen.h:6347
@ MIOPEN_ATTR_OPERATION_POINTWISE_PW_DESCRIPTOR
Definition: miopen.h:6266
@ MIOPEN_ATTR_RNG_NORMAL_DIST_STANDARD_DEVIATION
Definition: miopen.h:6438
@ MIOPEN_ATTR_INTERMEDIATE_INFO_DEPENDENT_DATA_UIDS
Definition: miopen.h:6242
@ MIOPEN_ATTR_LAYOUT_INFO_TENSOR_UID
Definition: miopen.h:6321
@ MIOPEN_ATTR_ENGINEHEUR_MODE
Definition: miopen.h:6224
@ MIOPEN_ATTR_OPERATION_RESAMPLE_BWD_ALPHA
Definition: miopen.h:6388
@ MIOPEN_ATTR_OPERATION_RESAMPLE_BWD_DESC
Definition: miopen.h:6390
@ MIOPEN_ATTR_OPERATION_BN_FINALIZE_EPSILON_DESC
Definition: miopen.h:6297
@ MIOPEN_ATTR_OPERATION_POINTWISE_BDESC
Definition: miopen.h:6268
@ MIOPEN_ATTR_POINTWISE_MODE
Definition: miopen.h:6205
@ MIOPEN_ATTR_ENGINECFG_INTERMEDIATE_INFO
Definition: miopen.h:6230
@ MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_DY
Definition: miopen.h:6265
@ MIOPEN_ATTR_OPERATION_NORM_BWD_DXDESC
Definition: miopen.h:6430
@ MIOPEN_ATTR_POINTWISE_NAN_PROPAGATION
Definition: miopen.h:6207
@ MIOPEN_ATTR_INTERMEDIATE_INFO_DEPENDENT_ATTRIBUTES
Definition: miopen.h:6243
@ MIOPEN_ATTR_POINTWISE_RELU_UPPER_CLIP
Definition: miopen.h:6209
@ MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_DBN_BIAS_DESC
Definition: miopen.h:6363
@ MIOPEN_ATTR_RNG_BERNOULLI_DIST_PROBABILITY
Definition: miopen.h:6441
@ MIOPEN_ATTR_ENGINEHEUR_SM_COUNT_TARGET
Definition: miopen.h:6227
@ MIOPEN_ATTR_OPERATION_BN_FINALIZE_BIAS_DESC
Definition: miopen.h:6287
@ MIOPEN_ATTR_OPERATION_BN_FINALIZE_UPDATED_RUNNING_VAR_DESC
Definition: miopen.h:6291
@ MIOPEN_ATTR_RNG_NORMAL_DIST_MEAN
Definition: miopen.h:6437
@ MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_MATH_PREC
Definition: miopen.h:6356
@ MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_MEAN_DESC
Definition: miopen.h:6357
@ MIOPEN_ATTR_OPERATION_NORM_FWD_PEER_STAT_DESCS
Definition: miopen.h:6419
@ MIOPEN_ATTR_OPERATION_NORM_FWD_SCALE_DESC
Definition: miopen.h:6410
@ MIOPEN_ATTR_OPERATION_GENSTATS_SQSUMDESC
Definition: miopen.h:6280
@ MIOPEN_ATTR_EXECUTION_PLAN_ENGINE_CONFIG
Definition: miopen.h:6234
@ MIOPEN_ATTR_OPERATION_RESAMPLE_FWD_BETA
Definition: miopen.h:6382
@ MIOPEN_ATTR_OPERATION_NORM_BWD_DBIAS_DESC
Definition: miopen.h:6429
@ MIOPEN_ATTR_OPERATION_NORM_BWD_SCALE_DESC
Definition: miopen.h:6426
@ MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_ALPHA
Definition: miopen.h:6254
@ MIOPEN_ATTR_RNG_UNIFORM_DIST_MAXIMUM
Definition: miopen.h:6439
@ MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_CONV_DESC
Definition: miopen.h:6262
@ MIOPEN_ATTR_TENSOR_STRIDES
Definition: miopen.h:6307
@ MIOPEN_ATTR_CONVOLUTION_FILTER_STRIDES
Definition: miopen.h:6219
@ MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_ALPHA
Definition: miopen.h:6260
@ MIOPEN_ATTR_POINTWISE_SWISH_BETA
Definition: miopen.h:6213
@ MIOPEN_ATTR_OPERATION_RESAMPLE_FWD_IDXDESC
Definition: miopen.h:6380
@ MIOPEN_ATTR_OPERATION_REDUCTION_DESC
Definition: miopen.h:6354
@ MIOPEN_ATTR_OPERATION_NORM_FWD_XDESC
Definition: miopen.h:6407
@ MIOPEN_ATTR_OPERATION_MATMUL_ADESC
Definition: miopen.h:6340
@ MIOPEN_ATTR_OPERATIONGRAPH_ENGINE_GLOBAL_COUNT
Definition: miopen.h:6302
@ MIOPEN_ATTR_OPERATION_BN_FINALIZE_SAVED_MEAN_DESC
Definition: miopen.h:6292
@ MIOPEN_RNG_DISTRIBUTION_BERNOULLI
Definition: miopen.h:6674
@ MIOPEN_RNG_DISTRIBUTION_UNIFORM
Definition: miopen.h:6675
@ MIOPEN_RNG_DISTRIBUTION_NORMAL
Definition: miopen.h:6676
@ MIOPEN_BACKEND_OPERATION_CONCAT_DESCRIPTOR
Definition: miopen.h:6173
@ MIOPEN_BACKEND_RESAMPLE_DESCRIPTOR
Definition: miopen.h:6190
@ MIOPEN_BACKEND_ENGINECFG_DESCRIPTOR
Definition: miopen.h:6165
@ MIOPEN_BACKEND_POINTWISE_DESCRIPTOR
Definition: miopen.h:6188
@ MIOPEN_BACKEND_OPERATION_RESAMPLE_FWD_DESCRIPTOR
Definition: miopen.h:6184
@ MIOPEN_BACKEND_CONVOLUTION_DESCRIPTOR
Definition: miopen.h:6163
@ MIOPEN_BACKEND_OPERATION_RNG_DESCRIPTOR
Definition: miopen.h:6185
@ MIOPEN_BACKEND_KNOB_INFO_DESCRIPTOR
Definition: miopen.h:6170
@ MIOPEN_BACKEND_RNG_DESCRIPTOR
Definition: miopen.h:6191
@ MIOPEN_BACKEND_OPERATION_POINTWISE_DESCRIPTOR
Definition: miopen.h:6181
@ MIOPEN_BACKEND_OPERATION_NORM_FORWARD_DESCRIPTOR
Definition: miopen.h:6180
@ MIOPEN_BACKEND_ENGINEHEUR_DESCRIPTOR
Definition: miopen.h:6166
@ MIOPEN_BACKEND_LAYOUT_INFO_DESCRIPTOR
Definition: miopen.h:6171
@ MIOPEN_BACKEND_OPERATION_REDUCTION_DESCRIPTOR
Definition: miopen.h:6182
@ MIOPEN_BACKEND_TENSOR_DESCRIPTOR
Definition: miopen.h:6192
@ MIOPEN_BACKEND_OPERATION_RESAMPLE_BWD_DESCRIPTOR
Definition: miopen.h:6183
@ MIOPEN_BACKEND_OPERATIONGRAPH_DESCRIPTOR
Definition: miopen.h:6187
@ MIOPEN_BACKEND_OPERATION_CONVOLUTION_FORWARD_DESCRIPTOR
Definition: miopen.h:6176
@ MIOPEN_BACKEND_OPERATION_CONVOLUTION_BACKWARD_FILTER_DESCRIPTOR
Definition: miopen.h:6175
@ MIOPEN_BACKEND_INTERMEDIATE_INFO_DESCRIPTOR
Definition: miopen.h:6168
@ MIOPEN_BACKEND_ENGINE_DESCRIPTOR
Definition: miopen.h:6164
@ MIOPEN_BACKEND_MATMUL_DESCRIPTOR
Definition: miopen.h:6172
@ MIOPEN_BACKEND_OPERATION_GEN_STATS_DESCRIPTOR
Definition: miopen.h:6177
@ MIOPEN_BACKEND_VARIANT_PACK_DESCRIPTOR
Definition: miopen.h:6193
@ MIOPEN_BACKEND_REDUCTION_DESCRIPTOR
Definition: miopen.h:6189
@ MIOPEN_BACKEND_OPERATION_CONVOLUTION_BACKWARD_DATA_DESCRIPTOR
Definition: miopen.h:6174
@ MIOPEN_BACKEND_OPERATION_MATMUL_DESCRIPTOR
Definition: miopen.h:6178
@ MIOPEN_BACKEND_OPERATION_NORM_BACKWARD_DESCRIPTOR
Definition: miopen.h:6179
@ MIOPEN_BACKEND_OPERATION_SIGNAL_DESCRIPTOR
Definition: miopen.h:6186
@ MIOPEN_BACKEND_EXECUTION_PLAN_DESCRIPTOR
Definition: miopen.h:6167
@ MIOPEN_BACKEND_KNOB_CHOICE_DESCRIPTOR
Definition: miopen.h:6169
@ SCALE
Definition: miopen.h:6687
@ BILINEAR
Definition: miopen.h:6688
@ DEFAULT
Definition: miopen.h:6686
@ ERROR_STATE
Definition: miopen.h:6689
@ MIOPEN_TYPE_RNG_DISTRIBUTION
Definition: miopen.h:6488
@ MIOPEN_TYPE_FLOAT
Definition: miopen.h:6463
@ MIOPEN_TYPE_NUMERICAL_NOTE
Definition: miopen.h:6470
@ MIOPEN_TYPE_RESAMPLE_MODE
Definition: miopen.h:6480
@ MIOPEN_TYPE_INT32
Definition: miopen.h:6482
@ MIOPEN_TYPE_POINTWISE_MODE
Definition: miopen.h:6473
@ MIOPEN_TYPE_HANDLE
Definition: miopen.h:6459
@ MIOPEN_TYPE_HEUR_MODE
Definition: miopen.h:6467
@ MIOPEN_TYPE_CONVOLUTION_MODE
Definition: miopen.h:6466
@ MIOPEN_TYPE_TENSOR_REORDERING_MODE
Definition: miopen.h:6479
@ MIOPEN_TYPE_BOOLEAN
Definition: miopen.h:6461
@ MIOPEN_TYPE_NORM_MODE
Definition: miopen.h:6486
@ MIOPEN_TYPE_FRACTION
Definition: miopen.h:6485
@ MIOPEN_TYPE_BACKEND_DESCRIPTOR
Definition: miopen.h:6474
@ MIOPEN_TYPE_ATTRIB_NAME
Definition: miopen.h:6472
@ MIOPEN_TYPE_BEHAVIOR_NOTE
Definition: miopen.h:6478
@ MIOPEN_TYPE_DATA_TYPE
Definition: miopen.h:6460
@ MIOPEN_TYPE_NAN_PROPOGATION
Definition: miopen.h:6469
@ MIOPEN_TYPE_DOUBLE
Definition: miopen.h:6464
@ MIOPEN_TYPE_SIGNAL_MODE
Definition: miopen.h:6484
@ MIOPEN_TYPE_CHAR
Definition: miopen.h:6483
@ MIOPEN_TYPE_PADDING_MODE
Definition: miopen.h:6481
@ MIOPEN_TYPE_INT64
Definition: miopen.h:6462
@ MIOPEN_TYPE_REDUCTION_OPERATOR_TYPE
Definition: miopen.h:6477
@ MIOPEN_TYPE_LAYOUT_TYPE
Definition: miopen.h:6471
@ MIOPEN_TYPE_GENSTATS_MODE
Definition: miopen.h:6475
@ MIOPEN_TYPE_VOID_PTR
Definition: miopen.h:6465
@ MIOPEN_TYPE_BN_FINALIZE_STATS_MODE
Definition: miopen.h:6476
@ MIOPEN_TYPE_KNOB_TYPE
Definition: miopen.h:6468
@ MIOPEN_TYPE_NORM_FWD_PHASE
Definition: miopen.h:6487
miopenStatus_t miopenSetLRNDescriptor(const miopenLRNDescriptor_t lrnDesc, miopenLRNMode_t mode, unsigned int lrnN, double lrnAlpha, double lrnBeta, double lrnK)
Sets a LRN layer descriptor details.
miopenStatus_t miopenCreateLRNDescriptor(miopenLRNDescriptor_t *lrnDesc)
Creates a local response normalization (LRN) layer descriptor.
miopenStatus_t miopenGetLRNDescriptor(const miopenLRNDescriptor_t lrnDesc, miopenLRNMode_t *mode, unsigned int *lrnN, double *lrnAlpha, double *lrnBeta, double *lrnK)
Gets a LRN layer descriptor details.
miopenStatus_t miopenLRNBackward(miopenHandle_t handle, const miopenLRNDescriptor_t lrnDesc, const void *alpha, const miopenTensorDescriptor_t yDesc, const void *y, const miopenTensorDescriptor_t dyDesc, const void *dy, const miopenTensorDescriptor_t xDesc, const void *x, const void *beta, const miopenTensorDescriptor_t dxDesc, void *dx, const void *workSpace)
Execute a LRN backward layer.
miopenStatus_t miopenLRNGetWorkSpaceSize(const miopenTensorDescriptor_t yDesc, size_t *workSpaceSize)
Determine the workspace requirements.
miopenLRNMode_t
Definition: miopen.h:477
miopenStatus_t miopenLRNForward(miopenHandle_t handle, const miopenLRNDescriptor_t lrnDesc, const void *alpha, const miopenTensorDescriptor_t xDesc, const void *x, const void *beta, const miopenTensorDescriptor_t yDesc, void *y, bool do_backward, void *workSpace)
Execute a LRN forward layer.
miopenStatus_t miopenDestroyLRNDescriptor(miopenLRNDescriptor_t lrnDesc)
Destroys the LRN descriptor object.
miopenStatus_t miopenGetCTCLossWorkspaceSize(miopenHandle_t handle, const miopenTensorDescriptor_t probsDesc, const miopenTensorDescriptor_t gradientsDesc, const int *labels, const int *labelLengths, const int *inputLengths, miopenCTCLossAlgo_t algo, const miopenCTCLossDescriptor_t ctcLossDesc, size_t *workSpaceSize)
Query the amount of memory required to execute miopenCTCLoss.
miopenCTCLossAlgo_t
Definition: miopen.h:4899
miopenStatus_t miopenSetCTCLossDescriptor(miopenCTCLossDescriptor_t ctcLossDesc, miopenDataType_t dataType, const int blank_label_id, bool apply_softmax_layer)
Set the details of a CTC loss function descriptor.
miopenStatus_t miopenCTCLoss(miopenHandle_t handle, const miopenTensorDescriptor_t probsDesc, const void *probs, const int *labels, const int *labelLengths, const int *inputLengths, void *losses, const miopenTensorDescriptor_t gradientsDesc, void *gradients, miopenCTCLossAlgo_t algo, const miopenCTCLossDescriptor_t ctcLossDesc, void *workSpace, size_t workSpaceSize)
Execute forward inference for CTCLoss layer.
miopenStatus_t miopenGetCTCLossDescriptor(miopenCTCLossDescriptor_t ctcLossDesc, miopenDataType_t *dataType, int *blank_label_id, bool *apply_softmax_layer)
Retrieves a CTC loss function descriptor's details.
miopenStatus_t miopenCreateCTCLossDescriptor(miopenCTCLossDescriptor_t *ctcLossDesc)
Create a CTC loss function Descriptor.
miopenStatus_t miopenDestroyCTCLossDescriptor(miopenCTCLossDescriptor_t ctcLossDesc)
Destroys a CTC loss function descriptor object.
@ MIOPEN_CTC_LOSS_ALGO_DETERMINISTIC
Definition: miopen.h:4900
miopenRNNMode_t
Definition: miopen.h:3506
miopenStatus_t miopenGetRNNDescriptor_V2(miopenRNNDescriptor_t rnnDesc, int *hiddenSize, int *layer, miopenDropoutDescriptor_t *dropoutDesc, miopenRNNInputMode_t *inputMode, miopenRNNDirectionMode_t *dirMode, miopenRNNMode_t *rnnMode, miopenRNNBiasMode_t *biasMode, miopenRNNAlgo_t *algoMode, miopenDataType_t *dataType)
Retrieves a RNN layer descriptor's details version 2. This version enables retrieving information of ...
miopenRNNInputMode_t
Definition: miopen.h:3517
miopenStatus_t miopenSetRNNLayerBias(miopenHandle_t handle, miopenRNNDescriptor_t rnnDesc, const int layer, miopenTensorDescriptor_t xDesc, miopenTensorDescriptor_t wDesc, void *w, const int biasID, miopenTensorDescriptor_t biasDesc, const void *layerBias)
Sets a bias for a specific layer in an RNN stack.
miopenStatus_t miopenRNNBackwardWeightsSeqTensor(miopenHandle_t handle, const miopenRNNDescriptor_t rnnDesc, const miopenSeqTensorDescriptor_t xDesc, const void *x, const miopenTensorDescriptor_t hDesc, const void *hx, const miopenSeqTensorDescriptor_t yDesc, const void *y, void *dw, size_t weightSpaceSize, void *workSpace, size_t workSpaceNumBytes, const void *reserveSpace, size_t reserveSpaceNumBytes)
Execute backward weights for recurrent layer.
miopenStatus_t miopenGetRNNParamsSize(miopenHandle_t handle, miopenRNNDescriptor_t rnnDesc, miopenTensorDescriptor_t xDesc, size_t *numBytes, miopenDataType_t dtype)
Query the amount of parameter memory required for RNN training.
miopenStatus_t miopenGetRNNLayerBiasOffset(miopenRNNDescriptor_t rnnDesc, const int layer, miopenTensorDescriptor_t xDesc, const int biasID, miopenTensorDescriptor_t biasDesc, size_t *layerBiasOffset)
Gets a bias index offset for a specific layer in an RNN stack.
miopenStatus_t miopenGetRNNLayerParamOffset(miopenRNNDescriptor_t rnnDesc, const int layer, miopenTensorDescriptor_t xDesc, const int paramID, miopenTensorDescriptor_t paramDesc, size_t *layerParamOffset)
Gets an index offset for a specific weight matrix for a layer in the RNN stack.
miopenRNNDirectionMode_t
Definition: miopen.h:3537
miopenStatus_t miopenRNNBackwardSeqData(miopenHandle_t handle, const miopenRNNDescriptor_t rnnDesc, const miopenSeqTensorDescriptor_t yDesc, const void *y, const void *dy, const miopenTensorDescriptor_t hDesc, const void *hx, const void *dhy, void *dhx, const miopenTensorDescriptor_t cDesc, const void *cx, const void *dcy, void *dcx, const miopenSeqTensorDescriptor_t xDesc, void *dx, const void *w, size_t weightSpaceSize, void *workSpace, size_t workSpaceNumBytes, void *reserveSpace, size_t reserveSpaceNumBytes)
Execute backward data for recurrent layer.
miopenRNNBiasMode_t
Definition: miopen.h:3546
miopenStatus_t miopenGetRNNLayerBias(miopenHandle_t handle, miopenRNNDescriptor_t rnnDesc, const int layer, miopenTensorDescriptor_t xDesc, miopenTensorDescriptor_t wDesc, const void *w, const int biasID, miopenTensorDescriptor_t biasDesc, void *layerBias)
Gets a bias for a specific layer in an RNN stack.
miopenStatus_t miopenRNNBackwardWeights(miopenHandle_t handle, const miopenRNNDescriptor_t rnnDesc, const int sequenceLen, const miopenTensorDescriptor_t *xDesc, const void *x, const miopenTensorDescriptor_t hxDesc, const void *hx, const miopenTensorDescriptor_t *yDesc, const void *y, const miopenTensorDescriptor_t dwDesc, void *dw, void *workSpace, size_t workSpaceNumBytes, const void *reserveSpace, size_t reserveSpaceNumBytes)
Execute backward weights for recurrent layer.
miopenStatus_t miopenGetRNNTrainingReserveSize(miopenHandle_t handle, miopenRNNDescriptor_t rnnDesc, const int sequenceLen, const miopenTensorDescriptor_t *xDesc, size_t *numBytes)
Query the amount of memory required for RNN training.
miopenStatus_t miopenGetRNNLayerBiasSize(miopenHandle_t handle, miopenRNNDescriptor_t rnnDesc, const int layer, const int biasID, size_t *numBytes)
Gets the number of bytes of a bias.
miopenStatus_t miopenSetRNNDescriptor(miopenRNNDescriptor_t rnnDesc, const int hsize, const int nlayers, miopenRNNInputMode_t inMode, miopenRNNDirectionMode_t direction, miopenRNNMode_t rnnMode, miopenRNNBiasMode_t biasMode, miopenRNNAlgo_t algo, miopenDataType_t dataType)
Set the details of the RNN descriptor.
miopenRNNBaseLayout_t
Definition: miopen.h:3581
miopenStatus_t miopenRNNBackwardData(miopenHandle_t handle, const miopenRNNDescriptor_t rnnDesc, const int sequenceLen, const miopenTensorDescriptor_t *yDesc, const void *y, const miopenTensorDescriptor_t *dyDesc, const void *dy, const miopenTensorDescriptor_t dhyDesc, const void *dhy, const miopenTensorDescriptor_t dcyDesc, const void *dcy, const miopenTensorDescriptor_t wDesc, const void *w, const miopenTensorDescriptor_t hxDesc, const void *hx, const miopenTensorDescriptor_t cxDesc, const void *cx, const miopenTensorDescriptor_t *dxDesc, void *dx, const miopenTensorDescriptor_t dhxDesc, void *dhx, const miopenTensorDescriptor_t dcxDesc, void *dcx, void *workSpace, size_t workSpaceNumBytes, void *reserveSpace, size_t reserveSpaceNumBytes)
Execute backward data for recurrent layer.
miopenStatus_t miopenGetRNNDescriptor(miopenRNNDescriptor_t rnnDesc, miopenRNNMode_t *rnnMode, miopenRNNAlgo_t *algoMode, miopenRNNInputMode_t *inputMode, miopenRNNDirectionMode_t *dirMode, miopenRNNBiasMode_t *biasMode, int *hiddenSize, int *layer)
Retrieves a RNN layer descriptor's details.
miopenRNNAlgo_t
Definition: miopen.h:3526
miopenStatus_t miopenGetRNNTempSpaceSizes(miopenHandle_t handle, miopenRNNDescriptor_t rnnDesc, miopenSeqTensorDescriptor_t xDesc, miopenRNNFWDMode_t fwdMode, size_t *workSpaceSize, size_t *reserveSpaceSize)
Query the amount of additional memory required for this RNN layer execution.
miopenStatus_t miopenGetRNNPaddingMode(miopenRNNDescriptor_t rnnDesc, miopenRNNPaddingMode_t *paddingMode)
This function retrieves the RNN padding mode from the RNN descriptor.
miopenStatus_t miopenRNNForward(miopenHandle_t handle, const miopenRNNDescriptor_t rnnDesc, miopenRNNFWDMode_t fwdMode, const miopenSeqTensorDescriptor_t xDesc, const void *x, const miopenTensorDescriptor_t hDesc, const void *hx, void *hy, const miopenTensorDescriptor_t cDesc, const void *cx, void *cy, const miopenSeqTensorDescriptor_t yDesc, void *y, const void *w, size_t weightSpaceSize, void *workSpace, size_t workSpaceNumBytes, void *reserveSpace, size_t reserveSpaceNumBytes)
Execute forward training for recurrent layer.
miopenStatus_t miopenGetRNNDataSeqTensorDescriptor(miopenSeqTensorDescriptor_t seqTensorDesc, miopenDataType_t *dataType, miopenRNNBaseLayout_t *layout, int *maxSequenceLen, int *batchSize, int *vectorSize, int sequenceLenArrayLimit, int *sequenceLenArray, void *paddingMarker)
Get shape of RNN seqData tensor.
miopenStatus_t miopenGetRNNInputTensorSize(miopenHandle_t handle, miopenRNNDescriptor_t rnnDesc, const int seqLen, miopenTensorDescriptor_t *xDesc, size_t *numBytes)
Obtain a the size in bytes of the RNN input tensor.
miopenRNNFWDMode_t
Definition: miopen.h:3572
miopenStatus_t miopenSetRNNLayerParam(miopenHandle_t handle, miopenRNNDescriptor_t rnnDesc, const int layer, miopenTensorDescriptor_t xDesc, miopenTensorDescriptor_t wDesc, void *w, const int paramID, miopenTensorDescriptor_t paramDesc, const void *layerParam)
Sets a weight matrix for a specific layer in an RNN stack.
miopenStatus_t miopenGetRNNLayerParamSize(miopenHandle_t handle, miopenRNNDescriptor_t rnnDesc, const int layer, miopenTensorDescriptor_t xDesc, const int paramID, size_t *numBytes)
Gets the number of bytes of a parameter matrix.
miopenStatus_t miopenCreateRNNDescriptor(miopenRNNDescriptor_t *rnnDesc)
Create a RNN layer Descriptor.
miopenRNNGEMMalgoMode_t
Definition: miopen.h:3555
miopenStatus_t miopenGetRNNLayerParam(miopenHandle_t handle, miopenRNNDescriptor_t rnnDesc, const int layer, miopenTensorDescriptor_t xDesc, miopenTensorDescriptor_t wDesc, const void *w, const int paramID, miopenTensorDescriptor_t paramDesc, void *layerParam)
Gets a weight matrix for a specific layer in an RNN stack.
miopenStatus_t miopenGetRNNWorkspaceSize(miopenHandle_t handle, const miopenRNNDescriptor_t rnnDesc, const int sequenceLen, const miopenTensorDescriptor_t *xDesc, size_t *numBytes)
Query the amount of memory required to execute the RNN layer.
miopenStatus_t miopenSetRNNDataSeqTensorDescriptor(miopenSeqTensorDescriptor_t seqTensorDesc, miopenDataType_t dataType, miopenRNNBaseLayout_t layout, int maxSequenceLen, int batchSize, int vectorSize, const int *sequenceLenArray, void *paddingMarker)
Set shape of RNN seqData tensor.
miopenStatus_t miopenGetRNNParamsDescriptor(miopenHandle_t handle, miopenRNNDescriptor_t rnnDesc, miopenTensorDescriptor_t xDesc, miopenTensorDescriptor_t wDesc, miopenDataType_t dtype)
Obtain a weight tensor descriptor for RNNs.
miopenStatus_t miopenRNNForwardTraining(miopenHandle_t handle, const miopenRNNDescriptor_t rnnDesc, const int sequenceLen, const miopenTensorDescriptor_t *xDesc, const void *x, const miopenTensorDescriptor_t hxDesc, const void *hx, const miopenTensorDescriptor_t cxDesc, const void *cx, const miopenTensorDescriptor_t wDesc, const void *w, const miopenTensorDescriptor_t *yDesc, void *y, const miopenTensorDescriptor_t hyDesc, void *hy, const miopenTensorDescriptor_t cyDesc, void *cy, void *workSpace, size_t workSpaceNumBytes, void *reserveSpace, size_t reserveSpaceNumBytes)
Execute forward training for recurrent layer.
miopenRNNPaddingMode_t
Definition: miopen.h:3563
miopenStatus_t miopenSetRNNDescriptor_V2(miopenRNNDescriptor_t rnnDesc, const int hsize, const int nlayers, miopenDropoutDescriptor_t dropoutDesc, miopenRNNInputMode_t inMode, miopenRNNDirectionMode_t direction, miopenRNNMode_t rnnMode, miopenRNNBiasMode_t biasMode, miopenRNNAlgo_t algo, miopenDataType_t dataType)
Set the details of the RNN descriptor version 2. This version enables the use of dropout in rnn.
miopenStatus_t miopenDestroyRNNDescriptor(miopenRNNDescriptor_t rnnDesc)
Destroys the tensor descriptor object.
miopenStatus_t miopenGetRNNHiddenTensorSize(miopenHandle_t handle, miopenRNNDescriptor_t rnnDesc, const int seqLen, miopenTensorDescriptor_t *xDesc, size_t *numBytes)
Obtain a the size in bytes of the RNN hidden tensor.
miopenStatus_t miopenSetRNNPaddingMode(miopenRNNDescriptor_t rnnDesc, miopenRNNPaddingMode_t paddingMode)
Sets a bias for a specific layer in an RNN stack.
miopenStatus_t miopenRNNForwardInference(miopenHandle_t handle, miopenRNNDescriptor_t rnnDesc, const int sequenceLen, const miopenTensorDescriptor_t *xDesc, const void *x, const miopenTensorDescriptor_t hxDesc, const void *hx, const miopenTensorDescriptor_t cxDesc, const void *cx, const miopenTensorDescriptor_t wDesc, const void *w, const miopenTensorDescriptor_t *yDesc, void *y, const miopenTensorDescriptor_t hyDesc, void *hy, const miopenTensorDescriptor_t cyDesc, void *cy, void *workSpace, size_t workSpaceNumBytes)
Execute forward inference for RNN layer.
@ miopenRNNTANH
Definition: miopen.h:3508
@ miopenLSTM
Definition: miopen.h:3509
@ miopenGRU
Definition: miopen.h:3510
@ miopenRNNRELU
Definition: miopen.h:3507
@ miopenRNNlinear
Definition: miopen.h:3518
@ miopenRNNskip
Definition: miopen.h:3519
@ miopenRNNbidirection
Definition: miopen.h:3539
@ miopenRNNunidirection
Definition: miopen.h:3538
@ miopenRNNwithBias
Definition: miopen.h:3548
@ miopenRNNNoBias
Definition: miopen.h:3547
@ miopenRNNDataSeqMajorPadded
Definition: miopen.h:3584
@ miopenRNNDataSeqMajorNotPadded
Definition: miopen.h:3583
@ miopenRNNDataBatchMajorPadded
Definition: miopen.h:3585
@ miopenRNNDataUnknownLayout
Definition: miopen.h:3582
@ miopenRNNfundamental
Definition: miopen.h:3529
@ miopenRNNdefault
Definition: miopen.h:3527
@ miopenRNNTraining
Definition: miopen.h:3573
@ miopenRNNInference
Definition: miopen.h:3574
@ miopenRNNAlgoGEMM
Definition: miopen.h:3556
@ miopenRNNIOWithPadding
Definition: miopen.h:3565
@ miopenRNNIONotPadded
Definition: miopen.h:3564
miopenStatus_t miopenReduceExtremeForward(miopenHandle_t handle, const miopenTensorDescriptor_t xDesc, const void *x, const int32_t dim, const miopenReduceExtremeOp_t reduceExtremeOp, const miopenTensorDescriptor_t yDesc, void *y, const miopenTensorDescriptor_t indiceDesc, void *indice)
Find the the extreme (minimum, maximum) value and index of a tensor across Dimension.
miopenReduceExtremeOp_t
Definition: miopen.h:5906
miopenStatus_t miopenFusedAdam(miopenHandle_t handle, const miopenTensorDescriptor_t paramDesc, void *param, const miopenTensorDescriptor_t gradDesc, const void *grad, const miopenTensorDescriptor_t expAvgDesc, void *expAvg, const miopenTensorDescriptor_t expAvgSqDesc, void *expAvgSq, const miopenTensorDescriptor_t maxExpAvgSqDesc, void *maxExpAvgSq, const miopenTensorDescriptor_t stateStepDesc, void *stateStep, const unsigned int state_step, const float lr, const float beta1, const float beta2, const float weight_decay, const float eps, const bool amsgrad, const bool maximize, const bool adamw, const miopenTensorDescriptor_t gradScaleDesc, const void *gradScale, const miopenTensorDescriptor_t foundInfDesc, const void *foundInf)
Perform Fused Adam optimization for a single tensor (Adaptive Moment Estimation).
miopenStatus_t miopenFusedAdamWithOutput(miopenHandle_t handle, const miopenTensorDescriptor_t paramInDesc, void *paramIn, const miopenTensorDescriptor_t paramOutDesc, void *paramOut, const miopenTensorDescriptor_t paramOutFloat16Desc, void *paramOutFloat16, const miopenTensorDescriptor_t gradInDesc, const void *gradIn, const miopenTensorDescriptor_t expAvgInDesc, void *expAvgIn, const miopenTensorDescriptor_t expAvgOutDesc, void *expAvgOut, const miopenTensorDescriptor_t expAvgSqInDesc, void *expAvgSqIn, const miopenTensorDescriptor_t expAvgSqOutDesc, void *expAvgSqOut, const miopenTensorDescriptor_t maxExpAvgSqInDesc, void *maxExpAvgSqIn, const miopenTensorDescriptor_t maxExpAvgSqOutDesc, void *maxExpAvgSqOut, const miopenTensorDescriptor_t stateStepInDesc, void *stateStepIn, const miopenTensorDescriptor_t stateStepOutDesc, void *stateStepOut, const unsigned int state_step, const float lr, const float beta1, const float beta2, const float weight_decay, const float eps, const bool amsgrad, const bool maximize, const bool adamw, const miopenTensorDescriptor_t gradScaleDesc, const void *gradScale, const miopenTensorDescriptor_t foundInfDesc, const void *foundInf)
Execute single tensor Adam optimization and receive the result in a separate output tensor.
miopenReduceTensorIndices_t
Definition: miopen.h:604
miopenStatus_t miopenSetReduceTensorDescriptor(miopenReduceTensorDescriptor_t reduceTensorDesc, miopenReduceTensorOp_t reduceTensorOp, miopenDataType_t reduceTensorCompType, miopenNanPropagation_t reduceTensorNanOpt, miopenReduceTensorIndices_t reduceTensorIndices, miopenIndicesType_t reduceTensorIndicesType)
Initialize a ReduceTensor descriptor object.
miopenStatus_t miopenCreateReduceTensorDescriptor(miopenReduceTensorDescriptor_t *reduceTensorDesc)
Creates the ReduceTensor descriptor object.
miopenReduceTensorOp_t
Definition: miopen.h:569
miopenIndicesType_t
Definition: miopen.h:614
miopenStatus_t miopenReduceTensor(miopenHandle_t handle, const miopenReduceTensorDescriptor_t reduceTensorDesc, void *indices, size_t indicesSizeInBytes, void *workspace, size_t workspaceSizeInBytes, const void *alpha, const miopenTensorDescriptor_t aDesc, const void *A, const void *beta, const miopenTensorDescriptor_t cDesc, void *C)
TensorReduce function doing reduction on tensor A by implementing C = alpha * reduceOp(A)
miopenStatus_t miopenGetReductionIndicesSize(miopenHandle_t handle, const miopenReduceTensorDescriptor_t reduceTensorDesc, const miopenTensorDescriptor_t aDesc, const miopenTensorDescriptor_t cDesc, size_t *sizeInBytes)
Helper function to query the minimum index space size required by the ReduceTensor call.
miopenStatus_t miopenDestroyReduceTensorDescriptor(miopenReduceTensorDescriptor_t reduceTensorDesc)
Destroy the ReduceTensor descriptor object.
miopenStatus_t miopenGetReductionWorkspaceSize(miopenHandle_t handle, const miopenReduceTensorDescriptor_t reduceTensorDesc, const miopenTensorDescriptor_t aDesc, const miopenTensorDescriptor_t cDesc, size_t *sizeInBytes)
Helper function to query the minimum workspace size required by the ReduceTensor call.
miopenStatus_t miopenGetReduceTensorDescriptor(const miopenReduceTensorDescriptor_t reduceTensorDesc, miopenReduceTensorOp_t *reduceTensorOp, miopenDataType_t *reduceTensorCompType, miopenNanPropagation_t *reduceTensorNanOpt, miopenReduceTensorIndices_t *reduceTensorIndices, miopenIndicesType_t *reduceTensorIndicesType)
Query a ReduceTensor descriptor object.
miopenStatus_t miopenActivationForward(miopenHandle_t handle, const miopenActivationDescriptor_t activDesc, const void *alpha, const miopenTensorDescriptor_t xDesc, const void *x, const void *beta, const miopenTensorDescriptor_t yDesc, void *y)
Execute an activation forward layer.
miopenStatus_t miopenActivationBackward(miopenHandle_t handle, const miopenActivationDescriptor_t activDesc, const void *alpha, const miopenTensorDescriptor_t yDesc, const void *y, const miopenTensorDescriptor_t dyDesc, const void *dy, const miopenTensorDescriptor_t xDesc, const void *x, const void *beta, const miopenTensorDescriptor_t dxDesc, void *dx)
Execute a activation backwards layer.
miopenActivationMode_t
Definition: miopen.h:516
miopenStatus_t miopenSetActivationDescriptor(const miopenActivationDescriptor_t activDesc, miopenActivationMode_t mode, double activAlpha, double activBeta, double activGamma)
Sets the activation layer descriptor details.
miopenStatus_t miopenCreateActivationDescriptor(miopenActivationDescriptor_t *activDesc)
Creates the Activation descriptor object.
miopenStatus_t miopenGetActivationDescriptor(const miopenActivationDescriptor_t activDesc, miopenActivationMode_t *mode, double *activAlpha, double *activBeta, double *activGamma)
Gets the activation layer descriptor details.
miopenStatus_t miopenDestroyActivationDescriptor(miopenActivationDescriptor_t activDesc)
Destroys the activation descriptor object.
miopenStatus_t miopenBatchNormalizationForwardInference(miopenHandle_t handle, miopenBatchNormMode_t bn_mode, void *alpha, void *beta, const miopenTensorDescriptor_t xDesc, const void *x, const miopenTensorDescriptor_t yDesc, void *y, const miopenTensorDescriptor_t bnScaleBiasMeanVarDesc, void *bnScale, void *bnBias, void *estimatedMean, void *estimatedVariance, double epsilon)
Execute forward inference layer for batch normalization.
miopenStatus_t miopenBatchNormalizationForwardTraining(miopenHandle_t handle, miopenBatchNormMode_t bn_mode, void *alpha, void *beta, const miopenTensorDescriptor_t xDesc, const void *x, const miopenTensorDescriptor_t yDesc, void *y, const miopenTensorDescriptor_t bnScaleBiasMeanVarDesc, void *bnScale, void *bnBias, double expAvgFactor, void *resultRunningMean, void *resultRunningVariance, double epsilon, void *resultSaveMean, void *resultSaveInvVariance)
Execute forward training layer for batch normalization.
miopenStatus_t miopenBatchNormalizationBackward(miopenHandle_t handle, miopenBatchNormMode_t bn_mode, const void *alphaDataDiff, const void *betaDataDiff, const void *alphaParamDiff, const void *betaParamDiff, const miopenTensorDescriptor_t xDesc, const void *x, const miopenTensorDescriptor_t dyDesc, const void *dy, const miopenTensorDescriptor_t dxDesc, void *dx, const miopenTensorDescriptor_t bnScaleBiasDiffDesc, const void *bnScale, void *resultBnScaleDiff, void *resultBnBiasDiff, double epsilon, const void *savedMean, const void *savedInvVariance)
Execute backwards propagation layer for batch normalization.
miopenBatchNormMode_t
Definition: miopen.h:506
miopenStatus_t miopenDeriveBNTensorDescriptor(miopenTensorDescriptor_t derivedBnDesc, const miopenTensorDescriptor_t xDesc, miopenBatchNormMode_t bn_mode)
Derive tensor for gamma and beta from input tensor descriptor.
miopenStatus_t miopenCatForward(miopenHandle_t handle, const int32_t xCount, const miopenTensorDescriptor_t *xDescs, const void *const *xs, const miopenTensorDescriptor_t yDesc, void *y, const int32_t dim)
Execute a cat forward layer.
miopenStatus_t miopenInitConvolutionNdDescriptor(miopenConvolutionDescriptor_t convDesc, int spatialDim, const int *padA, const int *strideA, const int *dilationA, miopenConvolutionMode_t c_mode)
Creates a N-dimensional convolution layer descriptor.
miopenStatus_t miopenConvolutionForwardImmediate(miopenHandle_t handle, const miopenTensorDescriptor_t wDesc, const void *w, const miopenTensorDescriptor_t xDesc, const void *x, const miopenConvolutionDescriptor_t convDesc, const miopenTensorDescriptor_t yDesc, void *y, void *workSpace, size_t workSpaceSize, const uint64_t solution_id)
Executes the Forward convolution operation based on the provided solution ID.
miopenStatus_t miopenConvolutionBackwardDataCompileSolution(miopenHandle_t handle, const miopenTensorDescriptor_t dyDesc, const miopenTensorDescriptor_t wDesc, const miopenConvolutionDescriptor_t convDesc, const miopenTensorDescriptor_t dxDesc, const uint64_t solution_id)
Compiles the solution provided by the user, this solution may be acquired by the miopenConvolutionBac...
miopenStatus_t miopenConvolutionForwardGetSolutionWorkspaceSize(miopenHandle_t handle, const miopenTensorDescriptor_t wDesc, const miopenTensorDescriptor_t xDesc, const miopenConvolutionDescriptor_t convDesc, const miopenTensorDescriptor_t yDesc, const uint64_t solution_id, size_t *workSpaceSize)
Returns the workspace size required for a particular solution id.
miopenStatus_t miopenConvolutionForward(miopenHandle_t handle, const void *alpha, const miopenTensorDescriptor_t xDesc, const void *x, const miopenTensorDescriptor_t wDesc, const void *w, const miopenConvolutionDescriptor_t convDesc, miopenConvFwdAlgorithm_t algo, const void *beta, const miopenTensorDescriptor_t yDesc, void *y, void *workSpace, size_t workSpaceSize)
Execute a forward convolution layer.
miopenStatus_t miopenGetConvolutionGroupCount(miopenConvolutionDescriptor_t convDesc, int *groupCount)
Get the number of groups to be used in Group/Depthwise convolution.
miopenStatus_t miopenInitConvolutionDescriptor(miopenConvolutionDescriptor_t convDesc, miopenConvolutionMode_t c_mode, int pad_h, int pad_w, int stride_h, int stride_w, int dilation_h, int dilation_w)
Creates a 2-D convolution layer descriptor.
miopenConvAlgorithm_t
Definition: miopen.h:1211
miopenStatus_t miopenConvolutionBackwardData(miopenHandle_t handle, const void *alpha, const miopenTensorDescriptor_t dyDesc, const void *dy, const miopenTensorDescriptor_t wDesc, const void *w, const miopenConvolutionDescriptor_t convDesc, miopenConvBwdDataAlgorithm_t algo, const void *beta, const miopenTensorDescriptor_t dxDesc, void *dx, void *workSpace, size_t workSpaceSize)
Execute a backward data convolution layer.
miopenStatus_t miopenGetConvolutionAttribute(miopenConvolutionDescriptor_t convDesc, const miopenConvolutionAttrib_t attr, int *value)
Get the attribute of the convolution descriptor.
miopenStatus_t miopenGetConvolutionNdForwardOutputDim(miopenConvolutionDescriptor_t convDesc, const miopenTensorDescriptor_t inputTensorDesc, const miopenTensorDescriptor_t filterDesc, int *nDim, int *outputTensorDimA)
Get the shape of a resulting N-dimensional tensor from a (N-2)-dimensional convolution.
miopenStatus_t miopenConvolutionBackwardWeightsCompileSolution(miopenHandle_t handle, const miopenTensorDescriptor_t dyDesc, const miopenTensorDescriptor_t xDesc, const miopenConvolutionDescriptor_t convDesc, const miopenTensorDescriptor_t dwDesc, const uint64_t solution_id)
Compiles the solution provided by the user, this solution may be acquired by the miopenConvolutionBac...
miopenStatus_t miopenFindConvolutionBackwardWeightsAlgorithm(miopenHandle_t handle, const miopenTensorDescriptor_t dyDesc, const void *dy, const miopenTensorDescriptor_t xDesc, const void *x, const miopenConvolutionDescriptor_t convDesc, const miopenTensorDescriptor_t dwDesc, void *dw, const int requestAlgoCount, int *returnedAlgoCount, miopenConvAlgoPerf_t *perfResults, void *workSpace, size_t workSpaceSize, bool exhaustiveSearch)
Search and run the backwards weights convolutional algorithms and return a list of kernel times.
miopenStatus_t miopenGetConvolutionForwardOutputDim(miopenConvolutionDescriptor_t convDesc, const miopenTensorDescriptor_t inputTensorDesc, const miopenTensorDescriptor_t filterDesc, int *n, int *c, int *h, int *w)
Get the shape of a resulting 4-D tensor from a 2-D convolution.
miopenConvFwdAlgorithm_t
Definition: miopen.h:1174
miopenStatus_t miopenConvolutionForwardGetWorkSpaceSize(miopenHandle_t handle, const miopenTensorDescriptor_t wDesc, const miopenTensorDescriptor_t xDesc, const miopenConvolutionDescriptor_t convDesc, const miopenTensorDescriptor_t yDesc, size_t *workSpaceSize)
Query the workspace size required for a forward convolution algorithm.
miopenStatus_t miopenCreateConvolutionDescriptor(miopenConvolutionDescriptor_t *convDesc)
Creates a convolution layer descriptor.
miopenStatus_t miopenConvolutionBackwardWeightsGetSolution(miopenHandle_t handle, const miopenTensorDescriptor_t dyDesc, const miopenTensorDescriptor_t xDesc, const miopenConvolutionDescriptor_t convDesc, const miopenTensorDescriptor_t dwDesc, const size_t maxSolutionCount, size_t *solutionCount, miopenConvSolution_t *solutions)
Query the applicable solutions for a backward convolution w-r-t weights as described by input,...
miopenStatus_t miopenGetConvolutionNdDescriptor(miopenConvolutionDescriptor_t convDesc, int requestedSpatialDim, int *spatialDim, int *padA, int *strideA, int *dilationA, miopenConvolutionMode_t *c_mode)
Retrieves a N-dimensional convolution layer descriptor's details.
miopenConvBwdDataAlgorithm_t
Definition: miopen.h:1197
miopenConvolutionAttrib_t
Definition: miopen.h:626
miopenStatus_t miopenConvolutionBackwardWeightsGetWorkSpaceSize(miopenHandle_t handle, const miopenTensorDescriptor_t dyDesc, const miopenTensorDescriptor_t xDesc, const miopenConvolutionDescriptor_t convDesc, const miopenTensorDescriptor_t dwDesc, size_t *workSpaceSize)
Get the GPU memory required for the backward weights convolution algorithm.
miopenStatus_t miopenConvolutionBackwardWeightsImmediate(miopenHandle_t handle, const miopenTensorDescriptor_t dyDesc, const void *dy, const miopenTensorDescriptor_t xDesc, const void *x, const miopenConvolutionDescriptor_t convDesc, const miopenTensorDescriptor_t dwDesc, void *dw, void *workSpace, size_t workSpaceSize, const uint64_t solution_id)
Executes the Backward convolution w-r-t weights operation based on the provided solution ID.
miopenStatus_t miopenFindConvolutionBackwardDataAlgorithm(miopenHandle_t handle, const miopenTensorDescriptor_t dyDesc, const void *dy, const miopenTensorDescriptor_t wDesc, const void *w, const miopenConvolutionDescriptor_t convDesc, const miopenTensorDescriptor_t dxDesc, void *dx, const int requestAlgoCount, int *returnedAlgoCount, miopenConvAlgoPerf_t *perfResults, void *workSpace, size_t workSpaceSize, bool exhaustiveSearch)
Search and run the backwards data convolution algorithms and return a list of kernel times.
miopenStatus_t miopenConvolutionBackwardDataGetSolution(miopenHandle_t handle, const miopenTensorDescriptor_t dyDesc, const miopenTensorDescriptor_t wDesc, const miopenConvolutionDescriptor_t convDesc, const miopenTensorDescriptor_t dxDesc, const size_t maxSolutionCount, size_t *solutionCount, miopenConvSolution_t *solutions)
Query the applicable solutions for a backward convolution w-r-t data as described by input,...
miopenStatus_t miopenConvolutionForwardBias(miopenHandle_t handle, const void *alpha, const miopenTensorDescriptor_t bDesc, const void *b, const void *beta, const miopenTensorDescriptor_t yDesc, void *y)
Calculate element-wise scale and shift of a tensor via a bias tensor.
miopenConvolutionMode_t
Definition: miopen.h:431
miopenStatus_t miopenSetConvolutionAttribute(miopenConvolutionDescriptor_t convDesc, const miopenConvolutionAttrib_t attr, int value)
Set the attribute of the convolution descriptor.
miopenStatus_t miopenConvolutionBackwardDataImmediate(miopenHandle_t handle, const miopenTensorDescriptor_t dyDesc, const void *dy, const miopenTensorDescriptor_t wDesc, const void *w, const miopenConvolutionDescriptor_t convDesc, const miopenTensorDescriptor_t dxDesc, void *dx, void *workSpace, size_t workSpaceSize, const uint64_t solution_id)
Executes the Backward convolution w-r-t data operation based on the provided solution ID.
miopenStatus_t miopenSetTransposeConvNdOutputPadding(miopenConvolutionDescriptor_t convDesc, int spatialDim, const int *adjA)
Set the output padding to be used in N-dimensional Transpose convolution.
miopenStatus_t miopenSetTransposeConvOutputPadding(miopenConvolutionDescriptor_t convDesc, int adj_h, int adj_w)
Set the output padding to be used in 2-D Transpose convolution.
miopenStatus_t miopenGetConvolutionSpatialDim(miopenConvolutionDescriptor_t convDesc, int *spatialDim)
Retrieves the spatial dimension of a convolution layer descriptor.
miopenConvBwdWeightsAlgorithm_t
Definition: miopen.h:1186
miopenStatus_t miopenConvolutionForwardCompileSolution(miopenHandle_t handle, const miopenTensorDescriptor_t wDesc, const miopenTensorDescriptor_t xDesc, const miopenConvolutionDescriptor_t convDesc, const miopenTensorDescriptor_t yDesc, const uint64_t solution_id)
Compiles the solution provided by the user, this solution may be acquired by the miopenConvolutionFor...
miopenStatus_t miopenConvolutionBackwardDataGetSolutionCount(miopenHandle_t handle, const miopenTensorDescriptor_t dyDesc, const miopenTensorDescriptor_t wDesc, const miopenConvolutionDescriptor_t convDesc, const miopenTensorDescriptor_t dxDesc, size_t *solutionCount)
Query the maximum number of solutions applicable for the given input/output and weights tensor descri...
miopenStatus_t miopenConvolutionBackwardWeights(miopenHandle_t handle, const void *alpha, const miopenTensorDescriptor_t dyDesc, const void *dy, const miopenTensorDescriptor_t xDesc, const void *x, const miopenConvolutionDescriptor_t convDesc, miopenConvBwdWeightsAlgorithm_t algo, const void *beta, const miopenTensorDescriptor_t dwDesc, void *dw, void *workSpace, size_t workSpaceSize)
Execute a backward weights convolution layer.
miopenStatus_t miopenConvolutionBackwardDataGetWorkSpaceSize(miopenHandle_t handle, const miopenTensorDescriptor_t dyDesc, const miopenTensorDescriptor_t wDesc, const miopenConvolutionDescriptor_t convDesc, const miopenTensorDescriptor_t dxDesc, size_t *workSpaceSize)
Query the workspace size required for a backward data convolution algorithm.
miopenStatus_t miopenFindConvolutionForwardAlgorithm(miopenHandle_t handle, const miopenTensorDescriptor_t xDesc, const void *x, const miopenTensorDescriptor_t wDesc, const void *w, const miopenConvolutionDescriptor_t convDesc, const miopenTensorDescriptor_t yDesc, void *y, const int requestAlgoCount, int *returnedAlgoCount, miopenConvAlgoPerf_t *perfResults, void *workSpace, size_t workSpaceSize, bool exhaustiveSearch)
Search and run the forward convolutional algorithms and return a list of kernel times.
miopenStatus_t miopenDestroyConvolutionDescriptor(miopenConvolutionDescriptor_t convDesc)
Destroys the tensor descriptor object.
miopenStatus_t miopenConvolutionBackwardWeightsGetSolutionCount(miopenHandle_t handle, const miopenTensorDescriptor_t dyDesc, const miopenTensorDescriptor_t xDesc, const miopenConvolutionDescriptor_t convDesc, const miopenTensorDescriptor_t dwDesc, size_t *solutionCount)
Query the maximum number of solutions applicable for the given input/output and weights tensor descri...
miopenStatus_t miopenSetConvolutionGroupCount(miopenConvolutionDescriptor_t convDesc, int groupCount)
Set the number of groups to be used in Group/Depthwise convolution.
miopenStatus_t miopenConvolutionBackwardWeightsGetSolutionWorkspaceSize(miopenHandle_t handle, const miopenTensorDescriptor_t dyDesc, const miopenTensorDescriptor_t xDesc, const miopenConvolutionDescriptor_t convDesc, const miopenTensorDescriptor_t dwDesc, const uint64_t solution_id, size_t *workSpaceSize)
Returns the workspace size required for a particular solution id.
miopenStatus_t miopenConvolutionForwardGetSolution(miopenHandle_t handle, const miopenTensorDescriptor_t wDesc, const miopenTensorDescriptor_t xDesc, const miopenConvolutionDescriptor_t convDesc, const miopenTensorDescriptor_t yDesc, const size_t maxSolutionCount, size_t *solutionCount, miopenConvSolution_t *solutions)
Query the applicable solutions for a convolution configuration described by input,...
miopenStatus_t miopenGetConvolutionDescriptor(miopenConvolutionDescriptor_t convDesc, miopenConvolutionMode_t *c_mode, int *pad_h, int *pad_w, int *stride_h, int *stride_w, int *dilation_h, int *dilation_w)
Retrieves a 2-D convolution layer descriptor's details.
miopenStatus_t miopenConvolutionForwardGetSolutionCount(miopenHandle_t handle, const miopenTensorDescriptor_t wDesc, const miopenTensorDescriptor_t xDesc, const miopenConvolutionDescriptor_t convDesc, const miopenTensorDescriptor_t yDesc, size_t *solutionCount)
Query the maximum number of solutions applicable for the given input/output and weights tensor descri...
miopenStatus_t miopenConvolutionBackwardDataGetSolutionWorkspaceSize(miopenHandle_t handle, const miopenTensorDescriptor_t dyDesc, const miopenTensorDescriptor_t wDesc, const miopenConvolutionDescriptor_t convDesc, const miopenTensorDescriptor_t dxDesc, const uint64_t solution_id, size_t *workSpaceSize)
Returns the workspace size required for a particular solution id.
miopenStatus_t miopenConvolutionBackwardBias(miopenHandle_t handle, const void *alpha, const miopenTensorDescriptor_t dyDesc, const void *dy, const void *beta, const miopenTensorDescriptor_t dbDesc, void *db)
Calculates the gradient with respect to the bias.
@ miopenConvolutionAlgoDirect
Definition: miopen.h:1213
@ miopenConvolutionAlgoWinograd
Definition: miopen.h:1215
@ miopenConvolutionAlgoFFT
Definition: miopen.h:1214
@ miopenConvolutionAlgoImplicitGEMM
Definition: miopen.h:1216
@ miopenConvolutionAlgoGEMM
Definition: miopen.h:1212
@ miopenConvolutionFwdAlgoFFT
Definition: miopen.h:1177
@ miopenConvolutionFwdAlgoImplicitGEMM
Definition: miopen.h:1179
@ miopenConvolutionFwdAlgoGEMM
Definition: miopen.h:1175
@ miopenConvolutionFwdAlgoWinograd
Definition: miopen.h:1178
@ miopenConvolutionFwdAlgoDirect
Definition: miopen.h:1176
@ miopenTransposeBwdDataAlgoGEMM
Definition: miopen.h:1202
@ miopenConvolutionBwdDataAlgoDirect
Definition: miopen.h:1199
@ miopenConvolutionBwdDataAlgoGEMM
Definition: miopen.h:1198
@ miopenConvolutionBwdDataAlgoFFT
Definition: miopen.h:1200
@ miopenConvolutionBwdDataAlgoWinograd
Definition: miopen.h:1201
@ miopenConvolutionBwdDataAlgoImplicitGEMM
Definition: miopen.h:1204
@ miopenConvolutionBwdWeightsAlgoGEMM
Definition: miopen.h:1187
@ miopenConvolutionBwdWeightsAlgoWinograd
Definition: miopen.h:1189
@ miopenConvolutionBwdWeightsAlgoDirect
Definition: miopen.h:1188
@ miopenConvolutionBwdWeightsAlgoImplicitGEMM
Definition: miopen.h:1190
miopenStatus_t miopenDestroyDropoutDescriptor(miopenDropoutDescriptor_t dropoutDesc)
Destroys the dropout descriptor object.
miopenRNGType_t
Definition: miopen.h:5019
miopenStatus_t miopenDropoutGetStatesSize(miopenHandle_t handle, size_t *stateSizeInBytes)
Query the amount of memory required to store the states of the random number generators.
miopenStatus_t miopenDropoutGetReserveSpaceSize(const miopenTensorDescriptor_t xDesc, size_t *reserveSpaceSizeInBytes)
Query the amount of memory required to run dropout.
miopenStatus_t miopenDropoutForward(miopenHandle_t handle, const miopenDropoutDescriptor_t dropoutDesc, const miopenTensorDescriptor_t noise_shape, const miopenTensorDescriptor_t xDesc, const void *x, const miopenTensorDescriptor_t yDesc, void *y, void *reserveSpace, size_t reserveSpaceSizeInBytes)
Execute forward dropout operation.
miopenStatus_t miopenGetDropoutDescriptor(miopenDropoutDescriptor_t dropoutDesc, miopenHandle_t handle, float *dropout, void **states, unsigned long long *seed, bool *use_mask, bool *state_evo, miopenRNGType_t *rng_mode)
Get the details of the dropout descriptor.
miopenStatus_t miopenCreateDropoutDescriptor(miopenDropoutDescriptor_t *dropoutDesc)
Creates the dropout descriptor object.
miopenStatus_t miopenDropoutBackward(miopenHandle_t handle, const miopenDropoutDescriptor_t dropoutDesc, const miopenTensorDescriptor_t noise_shape, const miopenTensorDescriptor_t dyDesc, const void *dy, const miopenTensorDescriptor_t dxDesc, void *dx, void *reserveSpace, size_t reserveSpaceSizeInBytes)
Execute backward dropout operation.
miopenStatus_t miopenRestoreDropoutDescriptor(miopenDropoutDescriptor_t dropoutDesc, miopenHandle_t handle, float dropout, void *states, size_t stateSizeInBytes, unsigned long long seed, bool use_mask, bool state_evo, miopenRNGType_t rng_mode)
Restore the dropout descriptor to a saved state.
miopenStatus_t miopenSetDropoutDescriptor(miopenDropoutDescriptor_t dropoutDesc, miopenHandle_t handle, float dropout, void *states, size_t stateSizeInBytes, unsigned long long seed, bool use_mask, bool state_evo, miopenRNGType_t rng_mode)
Initialize the dropout descriptor.
@ MIOPEN_RNG_PSEUDO_XORWOW
Definition: miopen.h:5020
miopenFindResultsOrder_t
Definition: miopen.h:5448
miopenStatus_t miopenGetSolutionSolverId(miopenSolution_t solution, uint64_t *solverId)
Reads id of the solver referred by the solution.
miopenStatus_t miopenSetSoftmaxDescriptor(miopenSoftmaxDescriptor_t softmaxDesc, float alpha, float beta, miopenSoftmaxAlgorithm_t algorithm, miopenSoftmaxMode_t mode)
Sets the softmax descriptor details.
miopenStatus_t miopenGetSolutionTime(miopenSolution_t solution, float *time)
Reads the time spent to execute the solution the last it was run.
miopenStatus_t miopenGetMhaDescriptor(miopenMhaDescriptor_t mhaDesc, float *scale)
Gets the Mha descriptor details.
miopenStatus_t miopenSetMhaDescriptor(miopenMhaDescriptor_t mhaDesc, float scale)
Sets the Mha descriptor details.
miopenStatus_t miopenSetFindOptionWorkspaceLimit(miopenFindOptions_t options, size_t value)
Sets the workspace limit find option. Default value is maximum of size_t.
miopenStatus_t miopenSetFindOptionPreallocatedTensor(miopenFindOptions_t options, miopenTensorArgumentId_t id, void *buffer)
Attaches a preallocated tensor to find options. If not used, buffers are allocated by MIOpen internal...
miopenStatus_t miopenCreateSoftmaxProblem(miopenProblem_t *problem, miopenSoftmaxDescriptor_t operatorDesc, miopenProblemDirection_t direction)
Initializes a problem object describing a softmax operation.
miopenStatus_t miopenDestroyFindOptions(miopenFindOptions_t options)
Destroys miopenFindOptions object.
miopenStatus_t miopenFuseProblems(miopenProblem_t problem1, miopenProblem_t problem2)
miopenStatus_t miopenGetSolutionSize(miopenSolution_t solution, size_t *size)
Reads the expected size of a solution.
miopenTensorArgumentId_t
Definition: miopen.h:5369
miopenStatus_t miopenFindSolutions(miopenHandle_t handle, miopenProblem_t problem, miopenFindOptions_t options, miopenSolution_t *solutions, size_t *numSolutions, size_t maxSolutions)
Finds solutions to a problem by running different applicable solutions. Memory is automatically alloc...
miopenStatus_t miopenSetFindOptionTuning(miopenFindOptions_t options, int value)
Sets the tuning find option. Default value is zero.
miopenStatus_t miopenGetSolutionWorkspaceSize(miopenSolution_t solution, size_t *workspaceSize)
Reads the amount of workspace required to exectute the solution.
miopenStatus_t miopenSetFindOptionResultsOrder(miopenFindOptions_t options, miopenFindResultsOrder_t value)
Sets the results order find option. Default value is miopenFindResultsOrderByTime.
miopenStatus_t miopenRunSolution(miopenHandle_t handle, miopenSolution_t solution, size_t nInputs, const miopenTensorArgument_t *tensors, void *workspace, size_t workspaceSize)
Runs the solution using the passed in buffers.
miopenStatus_t miopenCreateMhaProblem(miopenProblem_t *problem, miopenMhaDescriptor_t operatorDesc, miopenProblemDirection_t direction)
Initializes a problem object describing a Mha operation.
miopenProblemDirection_t
Definition: miopen.h:5356
miopenStatus_t miopenCreateBatchnormProblem(miopenProblem_t *problem, miopenBatchNormMode_t mode, bool runningMeanVariance, miopenProblemDirection_t direction)
Initializes a problem object describing an activation operation.
miopenStatus_t miopenCreateMhaDescriptor(miopenMhaDescriptor_t *mhaDesc)
Creates the mha descriptor object.
miopenStatus_t miopenDestroySolution(miopenSolution_t solution)
Destroys solution object.
miopenStatus_t miopenLoadSolution(miopenSolution_t *solution, const char *data, size_t size)
Loads solution object from binary data.
miopenStatus_t miopenSaveSolution(miopenSolution_t solution, char *data)
Saves a solution object as binary data.
miopenStatus_t miopenGetSolverIdConvAlgorithm(uint64_t solverId, miopenConvAlgorithm_t *result)
Gets the convolution algorithm implemented by a solver.
miopenStatus_t miopenSetFindOptionPreallocatedWorkspace(miopenFindOptions_t options, void *buffer, size_t size)
Attaches the preallocated workspace to find options. Allocated by the library by default.
miopenStatus_t miopenCreateActivationProblem(miopenProblem_t *problem, miopenActivationDescriptor_t operatorDesc, miopenProblemDirection_t direction)
Initializes a problem object describing an activation operation.
miopenStatus_t miopenDestroyProblem(miopenProblem_t problem)
Destroys a problem object.
miopenStatus_t miopenCreateFindOptions(miopenFindOptions_t *options)
Initializes miopenFindOptions object.
miopenStatus_t miopenGetSoftmaxDescriptor(const miopenSoftmaxDescriptor_t softmaxDesc, float *alpha, float *beta, miopenSoftmaxAlgorithm_t *algorithm, miopenSoftmaxMode_t *mode)
Gets the softmax layer descriptor details.
miopenStatus_t miopenCreateConvProblem(miopenProblem_t *problem, miopenConvolutionDescriptor_t operatorDesc, miopenProblemDirection_t direction)
Initializes a problem object describing a convolution operation.
miopenStatus_t miopenCreateBiasProblem(miopenProblem_t *problem, miopenProblemDirection_t direction)
Initializes a problem object describing an bias operation.
miopenStatus_t miopenSetProblemTensorDescriptor(miopenProblem_t problem, miopenTensorArgumentId_t id, const miopenTensorDescriptor_t descriptor)
Sets a tensor descriptor for the specified argument.
miopenStatus_t miopenCreateSoftmaxDescriptor(miopenSoftmaxDescriptor_t *softmaxDesc)
Creates the Softmax descriptor object.
@ miopenFindResultsOrderByWorkspaceSize
Definition: miopen.h:5450
@ miopenFindResultsOrderByTime
Definition: miopen.h:5449
@ miopenTensorMhaDescaleS
Definition: miopen.h:5381
@ miopenTensorMhaO
Definition: miopen.h:5387
@ miopenTensorMhaAmaxDV
Definition: miopen.h:5405
@ miopenTensorBatchnormScaleDiff
Definition: miopen.h:5427
@ miopenTensorMhaDescaleDS
Definition: miopen.h:5395
@ miopenTensorMhaDropoutSeed
Definition: miopen.h:5385
@ miopenTensorBatchnormSavedMean
Definition: miopen.h:5424
@ miopenTensorActivationDY
Definition: miopen.h:5412
@ miopenTensorBatchnormDX
Definition: miopen.h:5432
@ miopenTensorMhaDescaleV
Definition: miopen.h:5380
@ miopenTensorMhaK
Definition: miopen.h:5375
@ miopenTensorConvolutionX
Definition: miopen.h:5371
@ miopenTensorMhaAmaxDK
Definition: miopen.h:5404
@ miopenTensorMhaScaleDS
Definition: miopen.h:5396
@ miopenTensorBatchnormBias
Definition: miopen.h:5430
@ miopenTensorMhaM
Definition: miopen.h:5390
@ miopenTensorBatchnormRunningMean
Definition: miopen.h:5422
@ miopenTensorMhaDropoutProbability
Definition: miopen.h:5384
@ miopenTensorSoftmaxY
Definition: miopen.h:5417
@ miopenTensorSoftmaxDY
Definition: miopen.h:5419
@ miopenTensorMhaDescaleO
Definition: miopen.h:5393
@ miopenTensorMhaScaleO
Definition: miopen.h:5383
@ miopenScalarBatchnormExpAvgFactor
Definition: miopen.h:5439
@ miopenTensorBatchnormScale
Definition: miopen.h:5426
@ miopenTensorBatchnormRunningVariance
Definition: miopen.h:5423
@ miopenTensorActivationDX
Definition: miopen.h:5411
@ miopenTensorMhaScaleDK
Definition: miopen.h:5398
@ miopenTensorMhaV
Definition: miopen.h:5377
@ miopenTensorMhaAmaxS
Definition: miopen.h:5389
@ miopenTensorBatchnormBiasDiff
Definition: miopen.h:5431
@ miopenTensorBatchnormSavedVariance
Definition: miopen.h:5425
@ miopenTensorActivationX
Definition: miopen.h:5409
@ miopenTensorMhaScaleDV
Definition: miopen.h:5399
@ miopenTensorMhaAmaxO
Definition: miopen.h:5388
@ miopenScalarBatchnormEpsilon
Definition: miopen.h:5440
@ miopenTensorMhaScaleDQ
Definition: miopen.h:5397
@ miopenTensorSoftmaxDX
Definition: miopen.h:5418
@ miopenTensorMhaAmaxDS
Definition: miopen.h:5406
@ miopenTensorMhaDV
Definition: miopen.h:5402
@ miopenTensorMhaQ
Definition: miopen.h:5376
@ miopenTensorMhaAmaxDQ
Definition: miopen.h:5403
@ miopenTensorConvolutionY
Definition: miopen.h:5373
@ miopenTensorBatchnormEstimatedMean
Definition: miopen.h:5428
@ miopenTensorBatchnormDY
Definition: miopen.h:5433
@ miopenTensorMhaZInv
Definition: miopen.h:5391
@ miopenTensorMhaDescaleQ
Definition: miopen.h:5379
@ miopenTensorBatchnormEstimatedVariance
Definition: miopen.h:5429
@ miopenTensorArgumentIsScalar
Definition: miopen.h:5436
@ miopenTensorArgumentIdInvalid
Definition: miopen.h:5370
@ miopenTensorMhaDO
Definition: miopen.h:5392
@ miopenTensorMhaDescaleDO
Definition: miopen.h:5394
@ miopenTensorConvolutionW
Definition: miopen.h:5372
@ miopenTensorMhaDescaleK
Definition: miopen.h:5378
@ miopenTensorMhaDropoutOffset
Definition: miopen.h:5386
@ miopenTensorBiasY
Definition: miopen.h:5414
@ miopenTensorMhaDQ
Definition: miopen.h:5400
@ miopenTensorSoftmaxX
Definition: miopen.h:5416
@ miopenTensorBatchnormY
Definition: miopen.h:5421
@ miopenTensorMhaScaleS
Definition: miopen.h:5382
@ miopenTensorBias
Definition: miopen.h:5415
@ miopenTensorActivationY
Definition: miopen.h:5410
@ miopenTensorBatchnormX
Definition: miopen.h:5420
@ miopenTensorBiasX
Definition: miopen.h:5413
@ miopenTensorMhaDK
Definition: miopen.h:5401
@ miopenProblemDirectionBackwardWeights
Definition: miopen.h:5359
@ miopenProblemDirectionInference
Definition: miopen.h:5361
@ miopenProblemDirectionForward
Definition: miopen.h:5357
@ miopenProblemDirectionBackward
Definition: miopen.h:5358
miopenStatus_t miopenGroupNormForward(miopenHandle_t handle, miopenNormMode_t mode, const miopenTensorDescriptor_t xDesc, const void *x, const miopenTensorDescriptor_t weightDesc, const void *weight, const miopenTensorDescriptor_t biasDesc, const void *bias, const uint64_t num_groups, const float epsilon, const miopenTensorDescriptor_t yDesc, void *y, const miopenTensorDescriptor_t meanDesc, void *mean, const miopenTensorDescriptor_t rstdDesc, void *rstd)
Execute a groupnorm forward layer.
miopenStatus_t miopenCreateWithStream(miopenHandle_t *handle, miopenAcceleratorQueue_t stream)
Create a MIOpen handle with an accelerator stream.
miopenStatus_t miopenDestroy(miopenHandle_t handle)
Destroys the MIOpen handle.
void(* miopenDeallocatorFunction)(void *context, void *memory)
Custom deallocator function.
Definition: miopen.h:155
miopenStatus_t miopenGetStream(miopenHandle_t handle, miopenAcceleratorQueue_t *streamID)
Get the previously created accelerator command queue.
miopenStatus_t miopenEnableProfiling(miopenHandle_t handle, bool enable)
Enable profiling to retrieve kernel time.
miopenStatus_t miopenGetVersion(size_t *major, size_t *minor, size_t *patch)
Method to return version of MIOpen.
miopenStatus_t
Definition: miopen.h:106
miopenStatus_t miopenSetAllocator(miopenHandle_t handle, miopenAllocatorFunction allocator, miopenDeallocatorFunction deallocator, void *allocatorContext)
Set allocator for previously created miopenHandle.
miopenF8RoundingMode_t
Definition: miopen.h:122
void *(* miopenAllocatorFunction)(void *context, size_t sizeBytes)
Custom allocator function.
Definition: miopen.h:145
const char * miopenGetErrorString(miopenStatus_t error)
Get character string for an error code.
miopenStatus_t miopenCreate(miopenHandle_t *handle)
Method to create the MIOpen handle object.
miopenStatus_t miopenGetKernelTime(miopenHandle_t handle, float *time)
Get time for last kernel launched.
miopenStatus_t miopenSetStream(miopenHandle_t handle, miopenAcceleratorQueue_t streamID)
Set accelerator command queue previously created.
@ miopenStatusUnsupportedOp
Definition: miopen.h:115
@ miopenStatusGpuOperationsSkipped
Definition: miopen.h:116
@ miopenStatusUnknownError
Definition: miopen.h:114
@ miopenStatusSuccess
Definition: miopen.h:107
@ miopenStatusVersionMismatch
Definition: miopen.h:117
@ miopenStatusAllocFailed
Definition: miopen.h:111
@ miopenStatusNotImplemented
Definition: miopen.h:113
@ miopenStatusBadParm
Definition: miopen.h:110
@ miopenStatusNotInitialized
Definition: miopen.h:108
@ miopenStatusInternalError
Definition: miopen.h:112
@ miopenStatusInvalidValue
Definition: miopen.h:109
@ miopenF8RoundingModeStandard
Definition: miopen.h:123
@ miopenF8RoundingModeStochastic
Definition: miopen.h:124
miopenStatus_t miopenLayerNormForward(miopenHandle_t handle, miopenNormMode_t mode, const miopenTensorDescriptor_t xDesc, const void *x, const miopenTensorDescriptor_t weightDesc, const void *weight, const miopenTensorDescriptor_t biasDesc, const void *bias, const float epsilon, const int32_t normalized_dim, const miopenTensorDescriptor_t yDesc, void *y, const miopenTensorDescriptor_t meanDesc, void *mean, const miopenTensorDescriptor_t rstdDesc, void *rstd)
Execute a layernorm forward layer.
miopenStatus_t miopenT5LayerNormBackward(miopenHandle_t handle, miopenNormMode_t mode, void *workspace, size_t workspaceSizeInBytes, const miopenTensorDescriptor_t dyDesc, const void *dy, const miopenTensorDescriptor_t xDesc, const void *x, const miopenTensorDescriptor_t weightDesc, const void *weight, const miopenTensorDescriptor_t rstdDesc, const void *rstd, const miopenTensorDescriptor_t dxDesc, void *dx, const miopenTensorDescriptor_t dwDesc, void *dw)
Execute a T5layernorm backward layer.
miopenStatus_t miopenT5LayerNormForward(miopenHandle_t handle, miopenNormMode_t mode, const miopenTensorDescriptor_t xDesc, const void *x, const miopenTensorDescriptor_t weightDesc, const void *weight, const float epsilon, const miopenTensorDescriptor_t yDesc, void *y, const miopenTensorDescriptor_t rstdDesc, void *rstd)
Execute a T5layernorm forward layer.
miopenNormMode_t
Definition: miopen.h:487
miopenStatus_t miopenGetT5LayerNormBackwardWorkspaceSize(miopenHandle_t handle, miopenNormMode_t mode, const miopenTensorDescriptor_t dyDesc, const miopenTensorDescriptor_t xDesc, const miopenTensorDescriptor_t weightDesc, const miopenTensorDescriptor_t rstdDesc, const miopenTensorDescriptor_t dxDesc, const miopenTensorDescriptor_t dwDesc, size_t *sizeInBytes)
Helper function to query the minimum workspace size required by the T5layernorm backward call.
miopenStatus_t miopenAddLayerNormForward(miopenHandle_t handle, miopenNormMode_t mode, const miopenTensorDescriptor_t xDesc, const void *x, const miopenTensorDescriptor_t x2Desc, const void *x2, const miopenTensorDescriptor_t weightDesc, const void *weight, const miopenTensorDescriptor_t biasDesc, const void *bias, const float epsilon, const int32_t normalized_dim, const miopenTensorDescriptor_t yDesc, void *y, const miopenTensorDescriptor_t meanDesc, void *mean, const miopenTensorDescriptor_t rstdDesc, void *rstd)
Execute a add and layernorm forward layer.
miopenStatus_t miopenSet2dPoolingDescriptor(miopenPoolingDescriptor_t poolDesc, miopenPoolingMode_t mode, int windowHeight, int windowWidth, int pad_h, int pad_w, int stride_h, int stride_w)
Sets a 2-D pooling layer descriptor details.
miopenStatus_t miopenSetPoolingWorkSpaceIndexMode(miopenPoolingDescriptor_t poolDesc, miopenPoolingWorkspaceIndexMode_t workspace_index)
Set workspace index mode for pooling layer. The default mode is miopenPoolingWorkSpaceIndexMask.
miopenStatus_t miopenGetPoolingForwardOutputDim(const miopenPoolingDescriptor_t poolDesc, const miopenTensorDescriptor_t tensorDesc, int *n, int *c, int *h, int *w)
Gets the shape of the output tensor for 2-D pooling.
miopenStatus_t miopenPoolingGetWorkSpaceSize(const miopenTensorDescriptor_t yDesc, size_t *workSpaceSize)
Get the amount of GPU memory required for pooling.
miopenStatus_t miopenSetNdPoolingDescriptor(miopenPoolingDescriptor_t poolDesc, const miopenPoolingMode_t mode, int nbDims, const int *windowDimA, const int *padA, const int *stridesA)
Set details of a N-D pooling layer descriptor.
miopenStatus_t miopenPoolingForward(miopenHandle_t handle, const miopenPoolingDescriptor_t poolDesc, const void *alpha, const miopenTensorDescriptor_t xDesc, const void *x, const void *beta, const miopenTensorDescriptor_t yDesc, void *y, bool do_backward, void *workSpace, size_t workSpaceSize)
Execute a forward pooling layer.
miopenPoolingMode_t
Definition: miopen.h:454
miopenStatus_t miopenPoolingGetWorkSpaceSizeV2(const miopenPoolingDescriptor_t poolDesc, const miopenTensorDescriptor_t yDesc, size_t *workSpaceSize)
Get the amount of GPU memory required for pooling.
miopenStatus_t miopenGetPoolingWorkSpaceIndexMode(miopenPoolingDescriptor_t poolDesc, miopenPoolingWorkspaceIndexMode_t *workspace_index)
Get workspace index mode for pooling layer.
miopenIndexType_t
Definition: miopen.h:407
miopenStatus_t miopenGetPoolingIndexType(miopenPoolingDescriptor_t poolDesc, miopenIndexType_t *index_type)
Get the index data type for pooling layer. The index type to any of the miopenIndexType_t sizes; 8,...
miopenPoolingWorkspaceIndexMode_t
Definition: miopen.h:467
miopenStatus_t miopenGetPoolingNdForwardOutputDim(const miopenPoolingDescriptor_t poolDesc, const miopenTensorDescriptor_t tensorDesc, int dims, int *tensorDimArr)
Gets the shape of the output tensor for N-D pooling.
miopenStatus_t miopenGetNdPoolingDescriptor(const miopenPoolingDescriptor_t poolDesc, int nbDimsRequested, miopenPoolingMode_t *mode, int *nbDims, int *windowDimA, int *padA, int *stridesA)
Get details of a N-D pooling layer descriptor.
miopenStatus_t miopenCreatePoolingDescriptor(miopenPoolingDescriptor_t *poolDesc)
Creates a pooling layer descriptor.
miopenStatus_t miopenSetPoolingIndexType(miopenPoolingDescriptor_t poolDesc, miopenIndexType_t index_type)
Set index data type for pooling layer. The default indexing type is uint8_t. Users can set the index ...
miopenStatus_t miopenGet2dPoolingDescriptor(const miopenPoolingDescriptor_t poolDesc, miopenPoolingMode_t *mode, int *windowHeight, int *windowWidth, int *pad_h, int *pad_w, int *stride_h, int *stride_w)
Gets a 2-D pooling layer descriptor details.
miopenStatus_t miopenDestroyPoolingDescriptor(miopenPoolingDescriptor_t poolDesc)
Destroys the pooling descriptor object.
miopenStatus_t miopenPoolingBackward(miopenHandle_t handle, const miopenPoolingDescriptor_t poolDesc, const void *alpha, const miopenTensorDescriptor_t yDesc, const void *y, const miopenTensorDescriptor_t dyDesc, const void *dy, const miopenTensorDescriptor_t xDesc, const void *x, const void *beta, const miopenTensorDescriptor_t dxDesc, void *dx, void *workSpace)
Execute a backward pooling layer.
miopenStatus_t miopenSoftmaxBackward_V2(miopenHandle_t handle, const void *alpha, const miopenTensorDescriptor_t yDesc, const void *y, const miopenTensorDescriptor_t dyDesc, const void *dy, const void *beta, const miopenTensorDescriptor_t dxDesc, void *dx, miopenSoftmaxAlgorithm_t algorithm, miopenSoftmaxMode_t mode)
Execute a softmax backwards layer with expanded modes and algorithms.
miopenStatus_t miopenSoftmaxForward(miopenHandle_t handle, const void *alpha, const miopenTensorDescriptor_t xDesc, const void *x, const void *beta, const miopenTensorDescriptor_t yDesc, void *y)
Execute a softmax forward layer.
miopenStatus_t miopenSoftmaxForward_V2(miopenHandle_t handle, const void *alpha, const miopenTensorDescriptor_t xDesc, const void *x, const void *beta, const miopenTensorDescriptor_t yDesc, void *y, miopenSoftmaxAlgorithm_t algorithm, miopenSoftmaxMode_t mode)
Execute a softmax forward layer with expanded modes and algorithms.
miopenStatus_t miopenSoftmaxBackward(miopenHandle_t handle, const void *alpha, const miopenTensorDescriptor_t yDesc, const void *y, const miopenTensorDescriptor_t dyDesc, const void *dy, const void *beta, const miopenTensorDescriptor_t dxDesc, void *dx)
Execute a softmax backwards layer.
miopenSoftmaxMode_t
Definition: miopen.h:549
miopenSoftmaxAlgorithm_t
Definition: miopen.h:538
miopenStatus_t miopenSumForward(miopenHandle_t handle, miopenSumNanPropagation_t nanPropagation, void *workspace, size_t workspaceSizeInBytes, const miopenTensorDescriptor_t xDesc, const void *x, const int32_t dim, const miopenTensorDescriptor_t yDesc, void *y)
Execute a sum forward layer.
miopenSumNanPropagation_t
Definition: miopen.h:5846
miopenStatus_t miopenGetSumWorkspaceSize(miopenHandle_t handle, const miopenTensorDescriptor_t xDesc, const int32_t dim, const miopenTensorDescriptor_t yDesc, size_t *sizeInBytes)
Helper function to query the minimum workspace size required by the ReduceTensor call.
miopenStatus_t miopenDestroySeqTensorDescriptor(miopenSeqTensorDescriptor_t tensorDesc)
Destroys the sequence data tensor descriptor.
miopenStatus_t miopenGetTensorDescriptor(miopenTensorDescriptor_t tensorDesc, miopenDataType_t *dataType, int *dimsA, int *stridesA)
Get the details of the N-dimensional tensor descriptor.
miopenStatus_t miopenSetNdTensorDescriptorWithLayout(miopenTensorDescriptor_t tensorDesc, miopenDataType_t dataType, miopenTensorLayout_t tensorLayout, const int *lens, int num_lens)
Set shape of ND tensor with specific layout.
miopenStatus_t miopenSetTensor(miopenHandle_t handle, const miopenTensorDescriptor_t yDesc, void *y, const void *alpha)
Fills a tensor with a single value.
miopenStatus_t miopenOpTensor(miopenHandle_t handle, miopenTensorOp_t tensorOp, const void *alpha1, const miopenTensorDescriptor_t aDesc, const void *A, const void *alpha2, const miopenTensorDescriptor_t bDesc, const void *B, const void *beta, const miopenTensorDescriptor_t cDesc, void *C)
Execute element-wise tensor operations.
miopenStatus_t miopenGetTensorNumBytes(miopenTensorDescriptor_t tensorDesc, size_t *numBytes)
Returns number of bytes associated with tensor descriptor.
miopenStatus_t miopenGet4dTensorDescriptor(miopenTensorDescriptor_t tensorDesc, miopenDataType_t *dataType, int *n, int *c, int *h, int *w, int *nStride, int *cStride, int *hStride, int *wStride)
Get the details of the tensor descriptor.
miopenTensorLayout_t
Definition: miopen.h:390
miopenStatus_t miopenTransformTensor(miopenHandle_t handle, const void *alpha, const miopenTensorDescriptor_t xDesc, const void *x, const void *beta, const miopenTensorDescriptor_t yDesc, void *y)
Copies one tensor to another tensor with a different layout/scale.
miopenStatus_t miopenCreateTensorDescriptor(miopenTensorDescriptor_t *tensorDesc)
Create a Tensor Descriptor.
miopenStatus_t miopenSetTensorDescriptorV2(miopenTensorDescriptor_t tensorDesc, miopenDataType_t dataType, int nbDims, const size_t *dimsA, const size_t *stridesA)
Set shape of N-dimensional tensor.
miopenStatus_t miopenScaleTensor(miopenHandle_t handle, const miopenTensorDescriptor_t yDesc, void *y, const void *alpha)
Scales all elements in a tensor by a single value.
miopenStatus_t miopenSetTensorCastType(miopenTensorDescriptor_t tensorDesc, miopenDataType_t cast_type)
Set the tensor cast type.
miopenStatus_t miopenSet4dTensorDescriptor(miopenTensorDescriptor_t tensorDesc, miopenDataType_t dataType, int n, int c, int h, int w)
Set shape of 4D tensor.
miopenStatus_t miopenSet4dTensorDescriptorEx(miopenTensorDescriptor_t tensorDesc, miopenDataType_t dataType, int n, int c, int h, int w, int nStride, int cStride, int hStride, int wStride)
Set shape and stride of 4D tensor.
miopenDataType_t
Definition: miopen.h:365
miopenStatus_t miopenCreateSeqTensorDescriptor(miopenSeqTensorDescriptor_t *tensorDesc)
Create a Tensor Descriptor for sequence data.
miopenTensorOp_t
Definition: miopen.h:419
miopenStatus_t miopenGetTensorDescriptorSize(miopenTensorDescriptor_t tensorDesc, int *size)
Set shape of N-dimensional tensor.
miopenStatus_t miopenDestroyTensorDescriptor(miopenTensorDescriptor_t tensorDesc)
Destroys the tensor descriptor.
miopenStatus_t miopenSetTensorDescriptor(miopenTensorDescriptor_t tensorDesc, miopenDataType_t dataType, int nbDims, const int *dimsA, const int *stridesA)
Set shape of N-dimensional tensor.
miopenPaddingMode_t
Definition: miopen.h:443
@ miopenPaddingDefault
Definition: miopen.h:444
@ miopenPaddingSame
Definition: miopen.h:445
@ miopenPaddingValid
Definition: miopen.h:446
#define MIOPEN_DECLARE_OBJECT(name)
Definition: miopen.h:76
miopenNanPropagation_t
Definition: miopen.h:594
@ MIOPEN_PROPAGATE_NAN
Definition: miopen.h:596
@ MIOPEN_NOT_PROPAGATE_NAN
Definition: miopen.h:595
@ miopenPoolingAverage
Definition: miopen.h:456
@ miopenPoolingAverageInclusive
Definition: miopen.h:457
@ miopenPoolingMax
Definition: miopen.h:455
@ miopenTensorCHWN
Definition: miopen.h:393
@ miopenTensorNHWC
Definition: miopen.h:392
@ miopenTensorNDHWC
Definition: miopen.h:399
@ miopenTensorNCHW
Definition: miopen.h:391
@ miopenTensorCHWNc4
Definition: miopen.h:396
@ miopenTensorNCHWc8
Definition: miopen.h:395
@ miopenTensorNCDHW
Definition: miopen.h:398
@ miopenTensorCHWNc8
Definition: miopen.h:397
@ miopenTensorNCHWc4
Definition: miopen.h:394
@ MIOPEN_REDUCE_TENSOR_FLATTENED_INDICES
Definition: miopen.h:606
@ MIOPEN_REDUCE_TENSOR_NO_INDICES
Definition: miopen.h:605
@ miopenActivationLEAKYRELU
Definition: miopen.h:526
@ miopenActivationPASTHRU
Definition: miopen.h:517
@ miopenActivationABS
Definition: miopen.h:522
@ miopenActivationLOGISTIC
Definition: miopen.h:518
@ miopenActivationCLIPPEDRELU
Definition: miopen.h:524
@ miopenActivationRELU
Definition: miopen.h:520
@ miopenActivationPOWER
Definition: miopen.h:523
@ miopenActivationELU
Definition: miopen.h:528
@ miopenActivationSOFTRELU
Definition: miopen.h:521
@ miopenActivationTANH
Definition: miopen.h:519
@ MIOPEN_REDUCE_TENSOR_MUL
Definition: miopen.h:571
@ MIOPEN_REDUCE_TENSOR_MAX
Definition: miopen.h:575
@ MIOPEN_REDUCE_TENSOR_AVG
Definition: miopen.h:579
@ MIOPEN_REDUCE_TENSOR_NORM1
Definition: miopen.h:581
@ MIOPEN_REDUCE_TENSOR_AMAX
Definition: miopen.h:577
@ MIOPEN_REDUCE_TENSOR_MIN
Definition: miopen.h:573
@ MIOPEN_REDUCE_TENSOR_ADD
Definition: miopen.h:570
@ MIOPEN_REDUCE_TENSOR_NORM2
Definition: miopen.h:583
@ MIOPEN_CONVOLUTION_ATTRIB_DETERMINISTIC
Definition: miopen.h:631
@ MIOPEN_CONVOLUTION_ATTRIB_FP8_ROUNDING_MODE
Definition: miopen.h:635
@ MIOPEN_CONVOLUTION_ATTRIB_FP16_ALT_IMPL
Definition: miopen.h:627
@ miopenIndexUint16
Definition: miopen.h:409
@ miopenIndexUint64
Definition: miopen.h:411
@ miopenIndexUint32
Definition: miopen.h:410
@ miopenIndexUint8
Definition: miopen.h:408
@ miopenFloat
Definition: miopen.h:367
@ miopenBFloat16
Definition: miopen.h:371
@ miopenInt8
Definition: miopen.h:369
@ miopenInt32
Definition: miopen.h:368
@ miopenHalf
Definition: miopen.h:366
@ miopenBFloat8
Definition: miopen.h:376
@ miopenInt64
Definition: miopen.h:381
@ miopenDouble
Definition: miopen.h:373
@ miopenFloat8
Definition: miopen.h:375
@ MIOPEN_8BIT_INDICES
Definition: miopen.h:618
@ MIOPEN_32BIT_INDICES
Definition: miopen.h:615
@ MIOPEN_16BIT_INDICES
Definition: miopen.h:617
@ MIOPEN_64BIT_INDICES
Definition: miopen.h:616
@ miopenPoolingWorkspaceIndexImage
Definition: miopen.h:469
@ miopenPoolingWorkspaceIndexMask
Definition: miopen.h:468
@ miopenDepthwise
Definition: miopen.h:435
@ miopenGroupConv
Definition: miopen.h:434
@ miopenTranspose
Definition: miopen.h:433
@ miopenConvolution
Definition: miopen.h:432
@ MIOPEN_ELEMENTWISE_AFFINE_FUSED_ADD
Definition: miopen.h:491
@ MIOPEN_WEIGHT_BIAS
Definition: miopen.h:489
@ MIOPEN_ELEMENTWISE_AFFINE
Definition: miopen.h:488
@ MIOPEN_WEIGHT_BIAS_T5
Definition: miopen.h:497
@ MIOPEN_ELEMENTWISE_AFFINE_T5
Definition: miopen.h:495
@ MIOPEN_WEIGHT_BIAS_FUSED_ADD
Definition: miopen.h:493
@ MIOPEN_SUM_NOT_PROPAGATE_NAN
Definition: miopen.h:5847
@ MIOPEN_SUM_PROPAGATE_NAN
Definition: miopen.h:5848
@ MIOPEN_REDUCE_EXTREME_ARGMAX
Definition: miopen.h:5909
@ MIOPEN_REDUCE_EXTREME_MIN
Definition: miopen.h:5911
@ MIOPEN_REDUCE_EXTREME_MAX
Definition: miopen.h:5913
@ MIOPEN_REDUCE_EXTREME_ARGMIN
Definition: miopen.h:5907
@ miopenTensorOpMin
Definition: miopen.h:422
@ miopenTensorOpAdd
Definition: miopen.h:420
@ miopenTensorOpMul
Definition: miopen.h:421
@ miopenTensorOpMax
Definition: miopen.h:423
@ miopenBNSpatial
Definition: miopen.h:508
@ miopenBNPerActivation
Definition: miopen.h:507
@ miopenLRNWithinChannel
Definition: miopen.h:478
@ miopenLRNCrossChannel
Definition: miopen.h:479
@ MIOPEN_SOFTMAX_MODE_INSTANCE
Definition: miopen.h:550
@ MIOPEN_SOFTMAX_MODE_CHANNEL
Definition: miopen.h:551
@ MIOPEN_SOFTMAX_FAST
Definition: miopen.h:539
@ MIOPEN_SOFTMAX_ACCURATE
Definition: miopen.h:540
@ MIOPEN_SOFTMAX_LOG
Definition: miopen.h:541
Perf struct for forward, backward filter, or backward data algorithms.
Definition: miopen.h:1226
Performance struct for forward, backward filter, or backward data algorithms in immediate mode.
Definition: miopen.h:1250
Values of a tensor or scalar argument for the miopenRunSolution function.
Definition: miopen.h:5660
miopenTensorArgumentId_t id
Definition: miopen.h:5663
void * buffer
Definition: miopen.h:5673
miopenTensorDescriptor_t * descriptor
Definition: miopen.h:5669