rocBLAS(AMD)と cuBLAS(NVIDIA)の統一インターフェースを提供する BLAS marshalling ライブラリです。アプリケーション側のコード変更なしに backend を切り替えられます。ggml-hip は vendors/hip.h で CUDA API を hipBLAS 等価物にリマップし、BLAS fallback 経路の入口として機能します。
A BLAS marshalling library providing a unified interface across rocBLAS (AMD) and cuBLAS (NVIDIA). Allows backend switching without changing application code. ggml-hip remaps CUDA APIs to hipBLAS equivalents via vendors/hip.h, making hipBLAS the gateway for the BLAS fallback path.
hipBLAS は rocBLAS の上位 abstraction 層として機能します。GPU アーキテクチャ固有の最適化は rocBLAS / Tensile が担い、hipBLAS はその API ラッパーです。gfx1201 固有のコードは hipBLAS には含まれず、バックエンドの rocBLAS から継承されます。
hipBLAS functions as an abstraction layer above rocBLAS. GPU architecture-specific optimizations are handled by rocBLAS/Tensile; hipBLAS is their API wrapper. gfx1201-specific code is not in hipBLAS itself — it is inherited from the rocBLAS backend.
ldd /usr/local/lib/ollama/rocm/libggml-hip.so で libhipblas.so.2.3.60303 が直接依存として確認されました(Phase C)。vendors/hip.h ソースで cublasCreate・cublasGemmEx・cublasSgemm 等が hipBLAS 等価物にリマップされていることを確認しました(Phase B)。rocblas/rocblas.h の include と rocblas_initialize() 呼び出しも含まれており、hipBLAS を通じた rocBLAS の直接 initialize もここで行われます。ROCBLAS_LAYER=9 ログには rocblas_create_handle のみが記録され、これが hipBLAS 経由の handle 初期化に対応する可能性があります。ldd /usr/local/lib/ollama/rocm/libggml-hip.so confirmed libhipblas.so.2.3.60303 as a direct dependency (Phase C).vendors/hip.h that cublasCreate, cublasGemmEx, cublasSgemm, etc. are remapped to hipBLAS equivalents (Phase B).rocblas/rocblas.h and calls rocblas_initialize() directly, so rocBLAS initialization also occurs here via hipBLAS.ROCBLAS_LAYER=9 log from the RX9070XT live case only recorded rocblas_create_handle — which may correspond to the handle initialization via hipBLAS.