Skip to content

Commit

Permalink
rocblas init stuff
Browse files Browse the repository at this point in the history
  • Loading branch information
SlyEcho committed Jul 29, 2023
1 parent d2ade63 commit f8e3fc6
Showing 1 changed file with 10 additions and 3 deletions.
13 changes: 10 additions & 3 deletions ggml-cuda.cu
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,10 @@
#include <hip/hip_runtime.h>
#include <hipblas/hipblas.h>
#include <hip/hip_fp16.h>
#ifdef __HIP_PLATFORM_AMD__
// for rocblas_initialize()
#include "rocblas/rocblas.h"
#endif
#define CUBLAS_COMPUTE_32F HIPBLAS_R_32F
#define CUBLAS_COMPUTE_32F_FAST_16F HIPBLAS_R_32F
#define CUBLAS_GEMM_DEFAULT HIPBLAS_GEMM_DEFAULT
Expand Down Expand Up @@ -2746,10 +2749,14 @@ void ggml_init_cublas() {
static bool initialized = false;

if (!initialized) {
#ifdef GGML_USE_HIPBLAS
rocblas_initialize();
hipDeviceSynchronize();

#ifdef __HIP_PLATFORM_AMD__
// Workaround for a rocBLAS bug when using multiple graphics cards:
// https://github.com/ROCmSoftwarePlatform/rocBLAS/issues/1346
rocblas_initialize();
CUDA_CHECK(cudaDeviceSynchronize());
#endif

CUDA_CHECK(cudaGetDeviceCount(&g_device_count));
GGML_ASSERT(g_device_count <= GGML_CUDA_MAX_DEVICES);
int64_t total_vram = 0;
Expand Down

0 comments on commit f8e3fc6

Please sign in to comment.