Merge pull request #687 from emankov/hipBLAS

[HIPIFY][BLAS] Add support of hipblasGemmEx and corresponding types
Αυτή η υποβολή περιλαμβάνεται σε:
Evgeny Mankov
2018-09-25 18:48:06 +03:00
υποβλήθηκε από GitHub
γονέας fae1de41e2 65035fa485
υποβολή d12c1f7eff
3 αρχεία άλλαξαν με 82 προσθήκες και 69 διαγραφές
@@ -35,9 +35,9 @@
| enum |***`cublasAtomicsMode_t`*** | |
| 0 |*`CUBLAS_ATOMICS_NOT_ALLOWED`* | |
| 1 |*`CUBLAS_ATOMICS_ALLOWED`* | |
| enum |***`cublasAtomicsMode_t`*** | |
| -1 |*`CUBLAS_GEMM_DFALT`* | |
| -1 |*`CUBLAS_GEMM_DEFAULT`* | |
| enum |***`cublasGemmAlgo_t`*** |***`hipblasGemmAlgo_t`*** |
| -1 |*`CUBLAS_GEMM_DFALT`* |*`HIPBLAS_GEMM_DEFAULT`* | 160 |
| -1 |*`CUBLAS_GEMM_DEFAULT`* |*`HIPBLAS_GEMM_DEFAULT`* | 160 |
| 0 |*`CUBLAS_GEMM_ALGO0`* | |
| 1 |*`CUBLAS_GEMM_ALGO1`* | |
| 2 |*`CUBLAS_GEMM_ALGO2`* | |
@@ -391,7 +391,7 @@
|`cublasZgemm3m` | |
|`cublasHgemm` |`hipblasHgemm` |
|`cublasSgemmEx` | |
|`cublasGemmEx` | |
|`cublasGemmEx` |`hipblasGemmEx` |
|`cublasCgemmEx` | |
|`cublasUint8gemmBias` | |
|`cublasSsyrk` | |
@@ -93,10 +93,10 @@
## **7. Occupancy**
| **CUDA** | **HIP** |
|-----------------------------------------------------------|-------------------------------|
| **CUDA** | **HIP** |
|-----------------------------------------------------------|-----------------------------------------------|
| `cudaOccupancyMaxActiveBlocksPerMultiprocessor` | `hipOccupancyMaxActiveBlocksPerMultiprocessor`|
| `cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags` | |
| `cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags` | |
## **8. Execution Control [deprecated since 7.0]**
@@ -326,13 +326,13 @@
## **25. Texture Object Management**
| **CUDA** | **HIP** |
|-----------------------------------------------------------|-------------------------------|
| `cudaCreateTextureObject` |`hipCreateTextureObject` |
| `cudaDestroyTextureObject` |`hipDestroyTextureObject` |
| `cudaGetTextureObjectResourceDesc` |`hipGetTextureObjectResourceDesc` |
| **CUDA** | **HIP** |
|-----------------------------------------------------------|--------------------------------------|
| `cudaCreateTextureObject` |`hipCreateTextureObject` |
| `cudaDestroyTextureObject` |`hipDestroyTextureObject` |
| `cudaGetTextureObjectResourceDesc` |`hipGetTextureObjectResourceDesc` |
| `cudaGetTextureObjectResourceViewDesc` |`hipGetTextureObjectResourceViewDesc` |
| `cudaGetTextureObjectTextureDesc` |`hipGetTextureObjectTextureDesc` |
| `cudaGetTextureObjectTextureDesc` |`hipGetTextureObjectTextureDesc` |
## **26. Surface Object Management**
@@ -352,36 +352,36 @@
## **28. C++ API Routines**
*(7.0 contains, 7.5 doesnt)*
| **CUDA** | **HIP** |
|-----------------------------------------------------------|-------------------------------|
| `cudaBindSurfaceToArray` | |
| `cudaBindTexture` | `hipBindTexture` |
| `cudaBindTexture2D` | |
| `cudaBindTextureToArray` | |
| `cudaBindTextureToMipmappedArray` | |
| `cudaCreateChannelDesc` | `hipCreateChannelDesc` |
| `cudaFuncGetAttributes` | |
| `cudaFuncSetCacheConfig` | |
| `cudaGetSymbolAddress` | |
| `cudaGetSymbolSize` | |
| `cudaGetTextureAlignmentOffset` | |
| `cudaLaunch` | |
| `cudaLaunchKernel` | |
| `cudaMallocHost` | |
| `cudaMallocManaged` | |
| `cudaMemcpyFromSymbol` | |
| `cudaMemcpyFromSymbolAsync` | |
| `cudaMemcpyToSymbol` | |
| `cudaMemcpyToSymbolAsync` | |
| **CUDA** | **HIP** |
|-----------------------------------------------------------|------------------------------------------------|
| `cudaBindSurfaceToArray` | |
| `cudaBindTexture` | `hipBindTexture` |
| `cudaBindTexture2D` | |
| `cudaBindTextureToArray` | |
| `cudaBindTextureToMipmappedArray` | |
| `cudaCreateChannelDesc` | `hipCreateChannelDesc` |
| `cudaFuncGetAttributes` | |
| `cudaFuncSetCacheConfig` | |
| `cudaGetSymbolAddress` | |
| `cudaGetSymbolSize` | |
| `cudaGetTextureAlignmentOffset` | |
| `cudaLaunch` | |
| `cudaLaunchKernel` | |
| `cudaMallocHost` | |
| `cudaMallocManaged` | |
| `cudaMemcpyFromSymbol` | |
| `cudaMemcpyFromSymbolAsync` | |
| `cudaMemcpyToSymbol` | |
| `cudaMemcpyToSymbolAsync` | |
| `cudaOccupancyMaxActiveBlocksPerMultiprocessor` | `hipOccupancyMaxActiveBlocksPerMultiprocessor` |
| `cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags` | |
| `cudaOccupancyMaxPotentialBlockSize` | `hipOccupancyMaxPotentialBlockSize` |
| `cudaOccupancyMaxPotentialBlockSizeVariableSMem` | |
| `cudaOccupancyMaxPotentialBlockSizeVariableSMemWithFlags` | |
| `cudaOccupancyMaxPotentialBlockSizeWithFlags` | |
| `cudaSetupArgument` | |
| `cudaStreamAttachMemAsync` | |
| `cudaUnbindTexture` | `hipUnbindTexture` |
| `cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags` | |
| `cudaOccupancyMaxPotentialBlockSize` | `hipOccupancyMaxPotentialBlockSize` |
| `cudaOccupancyMaxPotentialBlockSizeVariableSMem` | |
| `cudaOccupancyMaxPotentialBlockSizeVariableSMemWithFlags` | |
| `cudaOccupancyMaxPotentialBlockSizeWithFlags` | |
| `cudaSetupArgument` | |
| `cudaStreamAttachMemAsync` | |
| `cudaUnbindTexture` | `hipUnbindTexture` |
## **30. Profiler Control**
@@ -395,8 +395,8 @@
## **31. Data types**
| **type** | **CUDA** | **HIP** |
|-------------:|-----------------------------------------------|------------------------------------------------------|
| **type** | **CUDA** | **HIP** |**HIP value** (if differs) |
|-------------:|-----------------------------------------------|------------------------------------------------------|---------------------------|
| struct | `cudaChannelFormatDesc` | `hipChannelFormatDesc` |
| struct | `cudaDeviceProp` | `hipDeviceProp_t` |
| struct | `cudaExtent` | `hipExtent` |
@@ -790,3 +790,19 @@
| define | `cudaTextureType1DLayered` | `hipTextureType1DLayered` |
| define | `cudaTextureType2DLayered` | `hipTextureType2DLayered` |
| define | `cudaTextureTypeCubemapLayered` | `hipTextureTypeCubemapLayered` |
| enum |***`cudaDataType_t`*** |***`hipblasDatatype_t`*** |
| enum |***`cudaDataType`*** |***`hipblasDatatype_t`*** |
| 2 |*`CUDA_R_16F`* |*`HIPBLAS_R_16F`* | 150 |
| 6 |*`CUDA_C_16F`* |*`HIPBLAS_C_16F`* | 153 |
| 0 |*`CUDA_R_32F`* |*`HIPBLAS_R_32F`* | 151 |
| 4 |*`CUDA_C_32F`* |*`HIPBLAS_C_32F`* | 154 |
| 1 |*`CUDA_R_64F`* |*`HIPBLAS_R_64F`* | 152 |
| 5 |*`CUDA_C_64F`* |*`HIPBLAS_C_64F`* | 155 |
| 3 |*`CUDA_R_8I`* | |
| 7 |*`CUDA_C_8I`* | |
| 8 |*`CUDA_R_8U`* | |
| 9 |*`CUDA_C_8U`* | |
| 10 |*`CUDA_R_32I`* | |
| 11 |*`CUDA_C_32I`* | |
| 12 |*`CUDA_R_32U`* | |
| 13 |*`CUDA_C_32U`* | |