From 542d6fc9d01357b28ba41f02395e3ad947e56984 Mon Sep 17 00:00:00 2001
From: Florent Pruvost <florent.pruvost@inria.fr>
Date: Thu, 4 May 2023 17:31:46 +0200
Subject: [PATCH] Change name of internal libraries cudablas and hipblas to
 gpucublas and gpuhipblas to avoid confusion with external libraries that can
 have the same name

---
 CMakeLists.txt                                | 17 +++---
 cmake_modules/CHAMELEONConfig.cmake.in        |  5 +-
 cmake_modules/GenPkgConfig.cmake              | 54 +++++++++----------
 compute/CMakeLists.txt                        |  4 +-
 doc/dev/main.dox                              | 14 +++--
 {cudablas => gpucublas}/CMakeLists.txt        |  0
 .../compute/CMakeLists.txt                    | 38 ++++++-------
 {cudablas => gpucublas}/compute/cuda_zgeadd.c |  2 +-
 {cudablas => gpucublas}/compute/cuda_zgelqt.c |  2 +-
 .../compute/cuda_zgemerge.c                   |  2 +-
 {cudablas => gpucublas}/compute/cuda_zgemm.c  |  2 +-
 {cudablas => gpucublas}/compute/cuda_zgeqrt.c |  2 +-
 {cudablas => gpucublas}/compute/cuda_zgessm.c |  2 +-
 {cudablas => gpucublas}/compute/cuda_zgetrf.c |  2 +-
 {cudablas => gpucublas}/compute/cuda_zhemm.c  |  2 +-
 {cudablas => gpucublas}/compute/cuda_zher2k.c |  2 +-
 {cudablas => gpucublas}/compute/cuda_zherfb.c | 18 +++----
 {cudablas => gpucublas}/compute/cuda_zherk.c  |  2 +-
 {cudablas => gpucublas}/compute/cuda_zlarfb.c |  2 +-
 {cudablas => gpucublas}/compute/cuda_zlauum.c |  2 +-
 {cudablas => gpucublas}/compute/cuda_zparfb.c |  4 +-
 {cudablas => gpucublas}/compute/cuda_zpotrf.c |  2 +-
 {cudablas => gpucublas}/compute/cuda_zssssm.c |  2 +-
 {cudablas => gpucublas}/compute/cuda_zsymm.c  |  2 +-
 {cudablas => gpucublas}/compute/cuda_zsyr2k.c |  2 +-
 {cudablas => gpucublas}/compute/cuda_zsyrk.c  |  2 +-
 .../compute/cuda_ztpmlqt.c                    |  6 +--
 .../compute/cuda_ztpmqrt.c                    |  6 +--
 {cudablas => gpucublas}/compute/cuda_ztrmm.c  |  2 +-
 {cudablas => gpucublas}/compute/cuda_ztrsm.c  |  2 +-
 {cudablas => gpucublas}/compute/cuda_ztrtri.c |  2 +-
 {cudablas => gpucublas}/compute/cuda_ztslqt.c |  2 +-
 {cudablas => gpucublas}/compute/cuda_ztsmlq.c |  2 +-
 {cudablas => gpucublas}/compute/cuda_ztsmqr.c |  2 +-
 {cudablas => gpucublas}/compute/cuda_ztsqrt.c |  2 +-
 {cudablas => gpucublas}/compute/cuda_ztstrf.c |  2 +-
 {cudablas => gpucublas}/compute/cuda_zttmlq.c |  2 +-
 {cudablas => gpucublas}/compute/cuda_zttmqr.c |  2 +-
 .../compute/cuda_zunmlqt.c                    |  2 +-
 .../compute/cuda_zunmqrt.c                    |  2 +-
 {cudablas => gpucublas}/compute/cudaglobal.c  |  4 +-
 .../eztrace_module/CMakeLists.txt             |  4 +-
 .../eztrace_module/gpucublas_eztrace_module   |  0
 .../include/CMakeLists.txt                    | 26 ++++-----
 .../include/gpucublas.h                       | 18 +++----
 .../include/gpucublas/gpucublas_z.h           |  8 +--
 {hipblas => gpuhipblas}/CMakeLists.txt        |  0
 .../compute/CMakeLists.txt                    | 38 ++++++-------
 {hipblas => gpuhipblas}/compute/hip_zgemm.c   |  2 +-
 {hipblas => gpuhipblas}/compute/hip_zhemm.c   |  2 +-
 {hipblas => gpuhipblas}/compute/hip_zher2k.c  |  2 +-
 {hipblas => gpuhipblas}/compute/hip_zherk.c   |  2 +-
 {hipblas => gpuhipblas}/compute/hip_zsymm.c   |  2 +-
 {hipblas => gpuhipblas}/compute/hip_zsyr2k.c  |  2 +-
 {hipblas => gpuhipblas}/compute/hip_zsyrk.c   |  2 +-
 {hipblas => gpuhipblas}/compute/hip_ztrmm.c   |  2 +-
 {hipblas => gpuhipblas}/compute/hip_ztrsm.c   |  2 +-
 {hipblas => gpuhipblas}/compute/hipglobal.c   |  2 +-
 .../eztrace_module/CMakeLists.txt             |  4 +-
 .../eztrace_module/gpuhipblas_eztrace_module  |  0
 .../include/CMakeLists.txt                    | 26 ++++-----
 .../include/gpuhipblas.h                      | 18 +++----
 .../include/gpuhipblas/gpuhipblas_z.h         |  8 +--
 .../{cudablas.pc.in => gpucublas.pc.in}       | 14 ++---
 .../{hipblas.pc.in => gpuhipblas.pc.in}       | 14 ++---
 runtime/parsec/CMakeLists.txt                 |  4 +-
 runtime/starpu/CMakeLists.txt                 |  8 +--
 runtime/starpu/include/runtime_codelet_z.h    |  4 +-
 runtime/starpu/include/runtime_codelet_zc.h   |  2 +-
 69 files changed, 225 insertions(+), 219 deletions(-)
 rename {cudablas => gpucublas}/CMakeLists.txt (100%)
 rename {cudablas => gpucublas}/compute/CMakeLists.txt (67%)
 rename {cudablas => gpucublas}/compute/cuda_zgeadd.c (99%)
 rename {cudablas => gpucublas}/compute/cuda_zgelqt.c (99%)
 rename {cudablas => gpucublas}/compute/cuda_zgemerge.c (98%)
 rename {cudablas => gpucublas}/compute/cuda_zgemm.c (98%)
 rename {cudablas => gpucublas}/compute/cuda_zgeqrt.c (99%)
 rename {cudablas => gpucublas}/compute/cuda_zgessm.c (98%)
 rename {cudablas => gpucublas}/compute/cuda_zgetrf.c (98%)
 rename {cudablas => gpucublas}/compute/cuda_zhemm.c (98%)
 rename {cudablas => gpucublas}/compute/cuda_zher2k.c (98%)
 rename {cudablas => gpucublas}/compute/cuda_zherfb.c (82%)
 rename {cudablas => gpucublas}/compute/cuda_zherk.c (97%)
 rename {cudablas => gpucublas}/compute/cuda_zlarfb.c (99%)
 rename {cudablas => gpucublas}/compute/cuda_zlauum.c (97%)
 rename {cudablas => gpucublas}/compute/cuda_zparfb.c (99%)
 rename {cudablas => gpucublas}/compute/cuda_zpotrf.c (97%)
 rename {cudablas => gpucublas}/compute/cuda_zssssm.c (98%)
 rename {cudablas => gpucublas}/compute/cuda_zsymm.c (98%)
 rename {cudablas => gpucublas}/compute/cuda_zsyr2k.c (98%)
 rename {cudablas => gpucublas}/compute/cuda_zsyrk.c (98%)
 rename {cudablas => gpucublas}/compute/cuda_ztpmlqt.c (97%)
 rename {cudablas => gpucublas}/compute/cuda_ztpmqrt.c (97%)
 rename {cudablas => gpucublas}/compute/cuda_ztrmm.c (98%)
 rename {cudablas => gpucublas}/compute/cuda_ztrsm.c (98%)
 rename {cudablas => gpucublas}/compute/cuda_ztrtri.c (97%)
 rename {cudablas => gpucublas}/compute/cuda_ztslqt.c (99%)
 rename {cudablas => gpucublas}/compute/cuda_ztsmlq.c (99%)
 rename {cudablas => gpucublas}/compute/cuda_ztsmqr.c (99%)
 rename {cudablas => gpucublas}/compute/cuda_ztsqrt.c (99%)
 rename {cudablas => gpucublas}/compute/cuda_ztstrf.c (98%)
 rename {cudablas => gpucublas}/compute/cuda_zttmlq.c (99%)
 rename {cudablas => gpucublas}/compute/cuda_zttmqr.c (99%)
 rename {cudablas => gpucublas}/compute/cuda_zunmlqt.c (99%)
 rename {cudablas => gpucublas}/compute/cuda_zunmqrt.c (99%)
 rename {cudablas => gpucublas}/compute/cudaglobal.c (98%)
 rename {cudablas => gpucublas}/eztrace_module/CMakeLists.txt (94%)
 rename cudablas/eztrace_module/cudablas_eztrace_module => gpucublas/eztrace_module/gpucublas_eztrace_module (100%)
 rename {cudablas => gpucublas}/include/CMakeLists.txt (65%)
 rename cudablas/include/cudablas.h => gpucublas/include/gpucublas.h (81%)
 rename cudablas/include/cudablas/cudablas_z.h => gpucublas/include/gpucublas/gpucublas_z.h (98%)
 rename {hipblas => gpuhipblas}/CMakeLists.txt (100%)
 rename {hipblas => gpuhipblas}/compute/CMakeLists.txt (59%)
 rename {hipblas => gpuhipblas}/compute/hip_zgemm.c (98%)
 rename {hipblas => gpuhipblas}/compute/hip_zhemm.c (98%)
 rename {hipblas => gpuhipblas}/compute/hip_zher2k.c (98%)
 rename {hipblas => gpuhipblas}/compute/hip_zherk.c (97%)
 rename {hipblas => gpuhipblas}/compute/hip_zsymm.c (98%)
 rename {hipblas => gpuhipblas}/compute/hip_zsyr2k.c (98%)
 rename {hipblas => gpuhipblas}/compute/hip_zsyrk.c (97%)
 rename {hipblas => gpuhipblas}/compute/hip_ztrmm.c (98%)
 rename {hipblas => gpuhipblas}/compute/hip_ztrsm.c (98%)
 rename {hipblas => gpuhipblas}/compute/hipglobal.c (99%)
 rename {hipblas => gpuhipblas}/eztrace_module/CMakeLists.txt (94%)
 rename hipblas/eztrace_module/hipblas_eztrace_module => gpuhipblas/eztrace_module/gpuhipblas_eztrace_module (100%)
 rename {hipblas => gpuhipblas}/include/CMakeLists.txt (65%)
 rename hipblas/include/hipblas.h => gpuhipblas/include/gpuhipblas.h (80%)
 rename hipblas/include/hipblas/hipblas_z.h => gpuhipblas/include/gpuhipblas/gpuhipblas_z.h (96%)
 rename lib/pkgconfig/{cudablas.pc.in => gpucublas.pc.in} (62%)
 rename lib/pkgconfig/{hipblas.pc.in => gpuhipblas.pc.in} (61%)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index f62ddbdf0..3e2dbdeef 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -230,11 +230,10 @@ cmake_dependent_option(CHAMELEON_USE_HIP_ROC
                     "Enable HIP kernels with ROCclr backend" OFF
                     "CHAMELEON_ENABLE_HIP" OFF)
 
-set(CHAMELEON_USE_HIP OFF CACHE INTERNAL "Equivalent to CHAMELEON_USE_CUDA for HIP. Enabled only of one of the CHAMELEON_USE_HIP{CUDA,ROC} is enabled")
 if( CHAMELEON_USE_HIP_CUDA OR CHAMELEON_USE_HIP_ROC )
-  set(CHAMELEON_USE_HIP ON)
+    set(CHAMELEON_USE_HIP ON CACHE INTERNAL "Equivalent to CHAMELEON_USE_CUDA for HIP. Enabled only of one of the CHAMELEON_USE_HIP{CUDA,ROC} is enabled" FORCE)
 else()
-  set(CHAMELEON_USE_HIP OFF)
+    set(CHAMELEON_USE_HIP OFF CACHE INTERNAL "Equivalent to CHAMELEON_USE_CUDA for HIP. Enabled only of one of the CHAMELEON_USE_HIP{CUDA,ROC} is enabled" FORCE)
 endif()
 
 # Enable Hmat-OSS kernels
@@ -690,18 +689,18 @@ set(CHAMELEON_SOURCES_TARGETS "" CACHE INTERNAL "List of targets of sources")
 
 if (NOT CHAMELEON_SIMULATION)
   ###############################################################################
-  # Coreblas library (kernels for CPUs) #
-  #######################################
+  # coreblas library (kernels for CPUs, interface to cblas/lapacke) #
+  ###################################################################
   add_subdirectory(coreblas)
 
   ###############################################################################
-  # Cudablas library (kernels for CUDAs) #
-  ########################################
+  # gpucublas library (kernels for GPUs, interface to cublas or hibblas) #
+  ########################################################################
   if(CHAMELEON_USE_CUDA)
-    add_subdirectory(cudablas)
+    add_subdirectory(gpucublas)
   endif()
   if(CHAMELEON_USE_HIP)
-    add_subdirectory(hipblas)
+    add_subdirectory(gpuhipblas)
   endif()
 
 endif()
diff --git a/cmake_modules/CHAMELEONConfig.cmake.in b/cmake_modules/CHAMELEONConfig.cmake.in
index eda084878..9bc029786 100644
--- a/cmake_modules/CHAMELEONConfig.cmake.in
+++ b/cmake_modules/CHAMELEONConfig.cmake.in
@@ -50,7 +50,10 @@ if (NOT @CHAMELEON_SIMULATION@)
   include("${CMAKE_CURRENT_LIST_DIR}/coreblasTargets.cmake")
 endif()
 if (@CHAMELEON_USE_CUDA@ AND NOT @CHAMELEON_SIMULATION@)
-  include("${CMAKE_CURRENT_LIST_DIR}/cudablasTargets.cmake")
+  include("${CMAKE_CURRENT_LIST_DIR}/gpucublasTargets.cmake")
+endif()
+if (@CHAMELEON_USE_HIP@ AND NOT @CHAMELEON_SIMULATION@)
+  include("${CMAKE_CURRENT_LIST_DIR}/gpuhipblasTargets.cmake")
 endif()
 if (@CHAMELEON_SCHED_OPENMP@)
   include("${CMAKE_CURRENT_LIST_DIR}/chameleon_openmpTargets.cmake")
diff --git a/cmake_modules/GenPkgConfig.cmake b/cmake_modules/GenPkgConfig.cmake
index 16e5e4f47..72fd26a53 100644
--- a/cmake_modules/GenPkgConfig.cmake
+++ b/cmake_modules/GenPkgConfig.cmake
@@ -74,7 +74,7 @@ ENDMACRO(CLEAN_LIB_LIST)
 
 ###
 #
-# GENERATE_PKGCONFIG_FILE: generate files chameleon.pc, coreblas.pc and cudablas.pc
+# GENERATE_PKGCONFIG_FILE: generate files chameleon_lapack.pc, chameleon.pc, coreblas.pc and gpucublas.pc or gpuhipblas.pc
 #
 ###
 MACRO(GENERATE_PKGCONFIG_FILE)
@@ -83,39 +83,39 @@ MACRO(GENERATE_PKGCONFIG_FILE)
     set(CHAMELEON_LAPACK_PKGCONFIG_DEFINITIONS "")
     set(CHAMELEON_PKGCONFIG_DEFINITIONS "")
     set(COREBLAS_PKGCONFIG_DEFINITIONS "")
-    set(CUDABLAS_PKGCONFIG_DEFINITIONS "")
-    set(HIPBLAS_PKGCONFIG_DEFINITIONS "")
+    set(GPUCUBLAS_PKGCONFIG_DEFINITIONS "")
+    set(GPUHIPBLAS_PKGCONFIG_DEFINITIONS "")
 
     # The link flags specific to this package and any required libraries
     # that don't support PkgConfig
     set(CHAMELEON_LAPACK_PKGCONFIG_LIBS "-lchameleon_lapack")
     set(CHAMELEON_PKGCONFIG_LIBS "-lchameleon")
     set(COREBLAS_PKGCONFIG_LIBS  "-lcoreblas")
-    set(CUDABLAS_PKGCONFIG_LIBS  "-lcudablas")
-    set(HIPBLAS_PKGCONFIG_LIBS  "-lhipblas")
+    set(GPUCUBLAS_PKGCONFIG_LIBS  "-lgpucublas")
+    set(GPUHIPBLAS_PKGCONFIG_LIBS  "-lgpuhipblas")
 
     # The link flags for private libraries required by this package but not
     # exposed to applications
     set(CHAMELEON_LAPACK_PKGCONFIG_LIBS_PRIVATE "")
     set(CHAMELEON_PKGCONFIG_LIBS_PRIVATE "")
     set(COREBLAS_PKGCONFIG_LIBS_PRIVATE  "")
-    set(CUDABLAS_PKGCONFIG_LIBS_PRIVATE  "")
-    set(HIPBLAS_PKGCONFIG_LIBS_PRIVATE  "")
+    set(GPUCUBLAS_PKGCONFIG_LIBS_PRIVATE  "")
+    set(GPUHIPBLAS_PKGCONFIG_LIBS_PRIVATE  "")
 
     # A list of packages required by this package
     set(CHAMELEON_LAPACK_PKGCONFIG_REQUIRED "chameleon")
     set(CHAMELEON_PKGCONFIG_REQUIRED "hqr")
     set(COREBLAS_PKGCONFIG_REQUIRED  "")
-    set(CUDABLAS_PKGCONFIG_REQUIRED  "")
-    set(HIPBLAS_PKGCONFIG_REQUIRED  "")
+    set(GPUCUBLAS_PKGCONFIG_REQUIRED  "")
+    set(GPUHIPBLAS_PKGCONFIG_REQUIRED  "")
 
     # A list of private packages required by this package but not exposed to
     # applications
     set(CHAMELEON_LAPACK_PKGCONFIG_REQUIRED_PRIVATE "")
     set(CHAMELEON_PKGCONFIG_REQUIRED_PRIVATE "")
     set(COREBLAS_PKGCONFIG_REQUIRED_PRIVATE  "")
-    set(CUDABLAS_PKGCONFIG_REQUIRED_PRIVATE  "")
-    set(HIPBLAS_PKGCONFIG_REQUIRED_PRIVATE  "")
+    set(GPUCUBLAS_PKGCONFIG_REQUIRED_PRIVATE  "")
+    set(GPUHIPBLAS_PKGCONFIG_REQUIRED_PRIVATE  "")
 
     if(CHAMELEON_SCHED_OPENMP)
         list(APPEND CHAMELEON_PKGCONFIG_LIBS -lchameleon_openmp)
@@ -144,15 +144,15 @@ MACRO(GENERATE_PKGCONFIG_FILE)
         list(APPEND CHAMELEON_PKGCONFIG_REQUIRED "coreblas")
 
         if(CHAMELEON_USE_CUDA)
-            list(APPEND CUDABLAS_PKGCONFIG_LIBS_PRIVATE ${CUDA_CUBLAS_LIBRARIES})
-            list(APPEND CUDABLAS_PKGCONFIG_REQUIRED "cuda")
-            list(APPEND CHAMELEON_PKGCONFIG_REQUIRED "cudablas")
+            list(APPEND GPUCUBLAS_PKGCONFIG_LIBS_PRIVATE ${CUDA_CUBLAS_LIBRARIES})
+            list(APPEND GPUCUBLAS_PKGCONFIG_REQUIRED "cuda")
+            list(APPEND CHAMELEON_PKGCONFIG_REQUIRED "gpucublas")
         endif()
 
         if(CHAMELEON_USE_HIP)
-            list(APPEND HIPBLAS_PKGCONFIG_LIBS_PRIVATE ${HIPBLAS_LIBRARIES})
-            list(APPEND HIPBLAS_PKGCONFIG_LIBS_PRIVATE ${HIP_LIBRARIES})
-            list(APPEND CHAMELEON_PKGCONFIG_REQUIRED "hipblas")
+            list(APPEND GPUHIPBLAS_PKGCONFIG_LIBS_PRIVATE ${HIPBLAS_LIBRARIES})
+            list(APPEND GPUHIPBLAS_PKGCONFIG_LIBS_PRIVATE ${HIP_LIBRARIES})
+            list(APPEND CHAMELEON_PKGCONFIG_REQUIRED "gpuhipblas")
         endif()
 
     endif(NOT CHAMELEON_SIMULATION)
@@ -170,10 +170,10 @@ MACRO(GENERATE_PKGCONFIG_FILE)
     CLEAN_LIB_LIST(CHAMELEON)
     CLEAN_LIB_LIST(COREBLAS)
     if(CHAMELEON_USE_CUDA)
-        CLEAN_LIB_LIST(CUDABLAS)
+        CLEAN_LIB_LIST(GPUCUBLAS)
     endif()
     if(CHAMELEON_USE_HIP)
-        CLEAN_LIB_LIST(HIPBLAS)
+        CLEAN_LIB_LIST(GPUHIPBLAS)
     endif()
 
     # Create .pc file
@@ -182,30 +182,30 @@ MACRO(GENERATE_PKGCONFIG_FILE)
     SET(_output_chameleon_file "${CMAKE_BINARY_DIR}/chameleon.pc")
     SET(_output_coreblas_file "${CMAKE_BINARY_DIR}/coreblas.pc")
     if(CHAMELEON_USE_CUDA)
-        SET(_output_cudablas_file "${CMAKE_BINARY_DIR}/cudablas.pc")
+        SET(_output_gpucublas_file "${CMAKE_BINARY_DIR}/gpucublas.pc")
     endif()
     if(CHAMELEON_USE_HIP)
-        SET(_output_hipblas_file "${CMAKE_BINARY_DIR}/hipblas.pc")
+        SET(_output_gpuhipblas_file "${CMAKE_BINARY_DIR}/gpuhipblas.pc")
     endif()
 
     # TODO: add url of CHAMELEON releases in .pc file
     CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/lib/pkgconfig/chameleon_lapack.pc.in" "${_output_chameleon_lapack_file}" @ONLY)
     CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/lib/pkgconfig/chameleon.pc.in" "${_output_chameleon_file}" @ONLY)
-    CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/lib/pkgconfig/coreblas.pc.in"  "${_output_coreblas_file}" @ONLY)
+    CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/lib/pkgconfig/coreblas.pc.in" "${_output_coreblas_file}" @ONLY)
     if(CHAMELEON_USE_CUDA)
-        CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/lib/pkgconfig/cudablas.pc.in"  "${_output_cudablas_file}" @ONLY)
+        CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/lib/pkgconfig/gpucublas.pc.in" "${_output_gpucublas_file}" @ONLY)
     endif()
     if(CHAMELEON_USE_HIP)
-        CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/lib/pkgconfig/hipblas.pc.in"  "${_output_hipblas_file}" @ONLY)
+        CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/lib/pkgconfig/gpuhipblas.pc.in" "${_output_gpuhipblas_file}" @ONLY)
     endif()
 
     # installation
     # ------------
     INSTALL(FILES ${_output_chameleon_lapack_file} DESTINATION lib/pkgconfig)
     INSTALL(FILES ${_output_chameleon_file} DESTINATION lib/pkgconfig)
-    INSTALL(FILES ${_output_coreblas_file}  DESTINATION lib/pkgconfig)
-    INSTALL(FILES ${_output_cudablas_file}  DESTINATION lib/pkgconfig)
-    INSTALL(FILES ${_output_hipblas_file}  DESTINATION lib/pkgconfig)
+    INSTALL(FILES ${_output_coreblas_file} DESTINATION lib/pkgconfig)
+    INSTALL(FILES ${_output_gpucublas_file} DESTINATION lib/pkgconfig)
+    INSTALL(FILES ${_output_gpuhipblas_file} DESTINATION lib/pkgconfig)
 
 ENDMACRO(GENERATE_PKGCONFIG_FILE)
 
diff --git a/compute/CMakeLists.txt b/compute/CMakeLists.txt
index bed4df6f1..1f18046a4 100644
--- a/compute/CMakeLists.txt
+++ b/compute/CMakeLists.txt
@@ -344,13 +344,13 @@ if (CHAMELEON_USE_MPI)
 endif()
 if (CHAMELEON_USE_CUDA)
   if (NOT CHAMELEON_SIMULATION)
-    target_link_libraries(chameleon PUBLIC cudablas)
+    target_link_libraries(chameleon PUBLIC gpucublas)
     target_link_libraries(chameleon PUBLIC CUDA::CUBLAS)
   endif()
 endif()
 if (CHAMELEON_USE_HIP)
   if (NOT CHAMELEON_SIMULATION)
-    target_link_libraries(chameleon PUBLIC hipblas)
+    target_link_libraries(chameleon PUBLIC gpuhipblas)
     target_link_libraries(chameleon PUBLIC HIP::HIPBLAS)
   endif()
 endif()
diff --git a/doc/dev/main.dox b/doc/dev/main.dox
index e4ee8ecbd..d8f732094 100644
--- a/doc/dev/main.dox
+++ b/doc/dev/main.dox
@@ -67,10 +67,10 @@ The libraries are organized as follows :
 
 - __chameleon_quark|openmp|parsec|starpu__ : interface to the
   different runtimes, depends on "coreblas" and optionally on
-  "cudablas" and on a runtime system library
+  "gpucublas" or "gpuhiblas" and on a runtime system library
 
-- __coreblas__ and __cudablas__ : interfaces to the CPU and GPU
-  kernels
+- __coreblas__ and __gpucublas__ or __gpuhipblas__ :
+  interfaces to the CPU and GPU kernels
 
 - __hqr__ : HQR is a C library providing tools to generate hierachical
   trees adapted to 2D block-cyclic data distribution and algorithms
@@ -91,14 +91,16 @@ Lets have a look to the source code organization in directories.
 
 - __coreblas__ : the Chameleon interface to CPU linear algebra kernels
 
-- __cudablas__ : the Chameleon interface to GPU linear algebra kernels
-
 - __distrib__ : some hints to install Chameleon's dependencies
 
 - __doc__ : users and developers documentations
 
 - __example__ : couple of C files to show how to use Chameleon
 
+- __gpucublas__ : the Chameleon interface to GPU linear algebra kernels (cublas)
+
+- __gpuhipblas__ : the Chameleon interface to GPU linear algebra kernels (hipblas)
+
 - __hqr__ : [HQR](https://gitlab.inria.fr/solverstack/hqr) is a C
 library providing tools to generate hierachical trees adapted to 2D
 block-cyclic data distribution and algorithms based on tiled
@@ -106,6 +108,8 @@ QR/algorithms
 
 - __include__ : Chameleon's headers file necessary for users
 
+- __lapack_api__ : the Chameleon interface CBLAS/LAPACKE like
+
 - __lib__ : material related to the distribution
 
 - __plasma-conversion__ : scripts to convert plasma task based
diff --git a/cudablas/CMakeLists.txt b/gpucublas/CMakeLists.txt
similarity index 100%
rename from cudablas/CMakeLists.txt
rename to gpucublas/CMakeLists.txt
diff --git a/cudablas/compute/CMakeLists.txt b/gpucublas/compute/CMakeLists.txt
similarity index 67%
rename from cudablas/compute/CMakeLists.txt
rename to gpucublas/compute/CMakeLists.txt
index 5389d35fd..d7a745c04 100644
--- a/cudablas/compute/CMakeLists.txt
+++ b/gpucublas/compute/CMakeLists.txt
@@ -27,7 +27,7 @@
 
 # Generate the chameleon sources for all possible precisions
 # ------------------------------------------------------
-set(CUDABLAS_SRCS_GENERATED "")
+set(GPUCUBLAS_SRCS_GENERATED "")
 set(ZSRC
     cuda_zgeadd.c
     cuda_zgemerge.c
@@ -72,46 +72,46 @@ set(ZSRC
 # endif()
 
 precisions_rules_py(
-  CUDABLAS_SRCS_GENERATED "${ZSRC}"
+  GPUCUBLAS_SRCS_GENERATED "${ZSRC}"
   PRECISIONS "${CHAMELEON_PRECISION}")
 
-set(CUDABLAS_SRCS
-  ${CUDABLAS_SRCS_GENERATED}
+set(GPUCUBLAS_SRCS
+  ${GPUCUBLAS_SRCS_GENERATED}
   cudaglobal.c
   )
 
 # Force generation of sources
 # ---------------------------
-add_custom_target(cudablas_sources ALL SOURCES ${CUDABLAS_SRCS})
-set(CHAMELEON_SOURCES_TARGETS "${CHAMELEON_SOURCES_TARGETS};cudablas_sources" CACHE INTERNAL "List of targets of sources")
+add_custom_target(gpucublas_sources ALL SOURCES ${GPUCUBLAS_SRCS})
+set(CHAMELEON_SOURCES_TARGETS "${CHAMELEON_SOURCES_TARGETS};gpucublas_sources" CACHE INTERNAL "List of targets of sources")
 
 # Compile step
 # ------------
-add_library(cudablas ${CUDABLAS_SRCS})
-set_target_properties(cudablas PROPERTIES VERSION ${CHAMELEON_VERSION})
-set_target_properties(cudablas PROPERTIES SOVERSION ${CHAMELEON_VERSION_MAJOR})
-add_dependencies(cudablas cudablas_include cudablas_sources)
-target_include_directories(cudablas PUBLIC
-  $<BUILD_INTERFACE:${CHAMELEON_SOURCE_DIR}/cudablas/include>
-  $<BUILD_INTERFACE:${CHAMELEON_BINARY_DIR}/cudablas/include>
+add_library(gpucublas ${GPUCUBLAS_SRCS})
+set_target_properties(gpucublas PROPERTIES VERSION ${CHAMELEON_VERSION})
+set_target_properties(gpucublas PROPERTIES SOVERSION ${CHAMELEON_VERSION_MAJOR})
+add_dependencies(gpucublas gpucublas_include gpucublas_sources)
+target_include_directories(gpucublas PUBLIC
+  $<BUILD_INTERFACE:${CHAMELEON_SOURCE_DIR}/gpucublas/include>
+  $<BUILD_INTERFACE:${CHAMELEON_BINARY_DIR}/gpucublas/include>
   $<BUILD_INTERFACE:${CHAMELEON_SOURCE_DIR}/include>
   $<BUILD_INTERFACE:${CHAMELEON_BINARY_DIR}/include>
   $<INSTALL_INTERFACE:include>)
-set_property(TARGET cudablas PROPERTY INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib")
+set_property(TARGET gpucublas PROPERTY INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib")
 
-target_link_libraries(cudablas PRIVATE coreblas CUDA::CUBLAS)
-target_link_libraries(cudablas PUBLIC MORSE::M)
+target_link_libraries(gpucublas PRIVATE coreblas CUDA::CUBLAS)
+target_link_libraries(gpucublas PUBLIC MORSE::M)
 
 # export target coreblas
-install(EXPORT cudablasTargets
+install(EXPORT gpucublasTargets
         NAMESPACE CHAMELEON::
         DESTINATION lib/cmake/chameleon
         )
 
 # installation
 # ------------
-install(TARGETS cudablas
-        EXPORT cudablasTargets
+install(TARGETS gpucublas
+        EXPORT gpucublasTargets
         ARCHIVE DESTINATION lib
         LIBRARY DESTINATION lib
         )
diff --git a/cudablas/compute/cuda_zgeadd.c b/gpucublas/compute/cuda_zgeadd.c
similarity index 99%
rename from cudablas/compute/cuda_zgeadd.c
rename to gpucublas/compute/cuda_zgeadd.c
index 1e9ff964e..c3909cfba 100644
--- a/cudablas/compute/cuda_zgeadd.c
+++ b/gpucublas/compute/cuda_zgeadd.c
@@ -17,7 +17,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 /**
  ******************************************************************************
diff --git a/cudablas/compute/cuda_zgelqt.c b/gpucublas/compute/cuda_zgelqt.c
similarity index 99%
rename from cudablas/compute/cuda_zgelqt.c
rename to gpucublas/compute/cuda_zgelqt.c
index f02d024fa..ad027da3a 100644
--- a/cudablas/compute/cuda_zgelqt.c
+++ b/gpucublas/compute/cuda_zgelqt.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 #if defined(CHAMELEON_USE_MAGMA)
 int CUDA_zgelqt(
diff --git a/cudablas/compute/cuda_zgemerge.c b/gpucublas/compute/cuda_zgemerge.c
similarity index 98%
rename from cudablas/compute/cuda_zgemerge.c
rename to gpucublas/compute/cuda_zgemerge.c
index 19caa2d6b..e0c18d6da 100644
--- a/cudablas/compute/cuda_zgemerge.c
+++ b/gpucublas/compute/cuda_zgemerge.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 int
 CUDA_zgemerge( cham_side_t side, cham_diag_t diag,
diff --git a/cudablas/compute/cuda_zgemm.c b/gpucublas/compute/cuda_zgemm.c
similarity index 98%
rename from cudablas/compute/cuda_zgemm.c
rename to gpucublas/compute/cuda_zgemm.c
index 94ad85ef2..e685b84c1 100644
--- a/cudablas/compute/cuda_zgemm.c
+++ b/gpucublas/compute/cuda_zgemm.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 int
 CUDA_zgemm( cham_trans_t transa, cham_trans_t transb,
diff --git a/cudablas/compute/cuda_zgeqrt.c b/gpucublas/compute/cuda_zgeqrt.c
similarity index 99%
rename from cudablas/compute/cuda_zgeqrt.c
rename to gpucublas/compute/cuda_zgeqrt.c
index bcd273e48..d24fa552c 100644
--- a/cudablas/compute/cuda_zgeqrt.c
+++ b/gpucublas/compute/cuda_zgeqrt.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 #if defined(CHAMELEON_USE_MAGMA)
 int
diff --git a/cudablas/compute/cuda_zgessm.c b/gpucublas/compute/cuda_zgessm.c
similarity index 98%
rename from cudablas/compute/cuda_zgessm.c
rename to gpucublas/compute/cuda_zgessm.c
index 47c74fedf..372b43a55 100644
--- a/cudablas/compute/cuda_zgessm.c
+++ b/gpucublas/compute/cuda_zgessm.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 #if defined(CHAMELEON_USE_MAGMA)
 #if defined(HAVE_MAGMA_GETRF_INCPIV_GPU)
diff --git a/cudablas/compute/cuda_zgetrf.c b/gpucublas/compute/cuda_zgetrf.c
similarity index 98%
rename from cudablas/compute/cuda_zgetrf.c
rename to gpucublas/compute/cuda_zgetrf.c
index 1acfbfacd..ec0bc3055 100644
--- a/cudablas/compute/cuda_zgetrf.c
+++ b/gpucublas/compute/cuda_zgetrf.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 #if defined(CHAMELEON_USE_MAGMA)
 #if defined(HAVE_MAGMA_GETRF_INCPIV_GPU)
diff --git a/cudablas/compute/cuda_zhemm.c b/gpucublas/compute/cuda_zhemm.c
similarity index 98%
rename from cudablas/compute/cuda_zhemm.c
rename to gpucublas/compute/cuda_zhemm.c
index 60d9dc364..b832596ad 100644
--- a/cudablas/compute/cuda_zhemm.c
+++ b/gpucublas/compute/cuda_zhemm.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 int
 CUDA_zhemm( cham_side_t side, cham_uplo_t uplo,
diff --git a/cudablas/compute/cuda_zher2k.c b/gpucublas/compute/cuda_zher2k.c
similarity index 98%
rename from cudablas/compute/cuda_zher2k.c
rename to gpucublas/compute/cuda_zher2k.c
index a8b4c6274..c0dc2c7e7 100644
--- a/cudablas/compute/cuda_zher2k.c
+++ b/gpucublas/compute/cuda_zher2k.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 int
 CUDA_zher2k( cham_uplo_t uplo, cham_trans_t trans,
diff --git a/cudablas/compute/cuda_zherfb.c b/gpucublas/compute/cuda_zherfb.c
similarity index 82%
rename from cudablas/compute/cuda_zherfb.c
rename to gpucublas/compute/cuda_zherfb.c
index ea486cc59..aa550c87c 100644
--- a/cudablas/compute/cuda_zherfb.c
+++ b/gpucublas/compute/cuda_zherfb.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 int
 CUDA_zherfb( cham_uplo_t uplo, int n,
@@ -31,35 +31,35 @@ CUDA_zherfb( cham_uplo_t uplo, int n,
 {
     /* Check input arguments */
     if ((uplo != ChamUpper) && (uplo != ChamLower)) {
-        cudablas_error(1, "Illegal value of uplo");
+        gpucublas_error(1, "Illegal value of uplo");
         return -1;
     }
     if (n < 0) {
-        cudablas_error(2, "Illegal value of n");
+        gpucublas_error(2, "Illegal value of n");
         return -2;
     }
     if (k < 0) {
-        cudablas_error(3, "Illegal value of k");
+        gpucublas_error(3, "Illegal value of k");
         return -3;
     }
     if (ib < 0) {
-        cudablas_error(4, "Illegal value of ib");
+        gpucublas_error(4, "Illegal value of ib");
         return -4;
     }
     if (nb < 0) {
-        cudablas_error(5, "Illegal value of nb");
+        gpucublas_error(5, "Illegal value of nb");
         return -5;
     }
     if ( (lda < chameleon_max(1,n)) && (n > 0) ) {
-        cudablas_error(7, "Illegal value of lda");
+        gpucublas_error(7, "Illegal value of lda");
         return -7;
     }
     if ( (ldt < chameleon_max(1,ib)) && (ib > 0) ) {
-        cudablas_error(9, "Illegal value of ldt");
+        gpucublas_error(9, "Illegal value of ldt");
         return -9;
     }
     if ( (ldc < chameleon_max(1,n)) && (n > 0) ) {
-        cudablas_error(11, "Illegal value of ldc");
+        gpucublas_error(11, "Illegal value of ldc");
         return -11;
     }
 
diff --git a/cudablas/compute/cuda_zherk.c b/gpucublas/compute/cuda_zherk.c
similarity index 97%
rename from cudablas/compute/cuda_zherk.c
rename to gpucublas/compute/cuda_zherk.c
index e50cbf033..b863ce1ac 100644
--- a/cudablas/compute/cuda_zherk.c
+++ b/gpucublas/compute/cuda_zherk.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 int
 CUDA_zherk( cham_uplo_t uplo, cham_trans_t trans,
diff --git a/cudablas/compute/cuda_zlarfb.c b/gpucublas/compute/cuda_zlarfb.c
similarity index 99%
rename from cudablas/compute/cuda_zlarfb.c
rename to gpucublas/compute/cuda_zlarfb.c
index 8175d1944..69da9f1f8 100644
--- a/cudablas/compute/cuda_zlarfb.c
+++ b/gpucublas/compute/cuda_zlarfb.c
@@ -20,7 +20,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 int
 CUDA_zlarfb( cham_side_t side, cham_trans_t trans,
diff --git a/cudablas/compute/cuda_zlauum.c b/gpucublas/compute/cuda_zlauum.c
similarity index 97%
rename from cudablas/compute/cuda_zlauum.c
rename to gpucublas/compute/cuda_zlauum.c
index ea000c220..305fb345b 100644
--- a/cudablas/compute/cuda_zlauum.c
+++ b/gpucublas/compute/cuda_zlauum.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 #if defined(CHAMELEON_USE_MAGMA)
 int CUDA_zlauum(
diff --git a/cudablas/compute/cuda_zparfb.c b/gpucublas/compute/cuda_zparfb.c
similarity index 99%
rename from cudablas/compute/cuda_zparfb.c
rename to gpucublas/compute/cuda_zparfb.c
index 8977eb6a1..778f25110 100644
--- a/cudablas/compute/cuda_zparfb.c
+++ b/gpucublas/compute/cuda_zparfb.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 /**
  *
@@ -210,7 +210,7 @@ CUDA_zparfb( cham_side_t side, cham_trans_t trans,
         return wrsize;
     }
     else if ( LWORK < wssize ) {
-        cudablas_error(20, "Illegal value of LWORK");
+        gpucublas_error(20, "Illegal value of LWORK");
         return -20;
     }
 
diff --git a/cudablas/compute/cuda_zpotrf.c b/gpucublas/compute/cuda_zpotrf.c
similarity index 97%
rename from cudablas/compute/cuda_zpotrf.c
rename to gpucublas/compute/cuda_zpotrf.c
index 7c6c86c14..3e51e384d 100644
--- a/cudablas/compute/cuda_zpotrf.c
+++ b/gpucublas/compute/cuda_zpotrf.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 #if defined(CHAMELEON_USE_MAGMA)
 int CUDA_zpotrf(
diff --git a/cudablas/compute/cuda_zssssm.c b/gpucublas/compute/cuda_zssssm.c
similarity index 98%
rename from cudablas/compute/cuda_zssssm.c
rename to gpucublas/compute/cuda_zssssm.c
index 2bc0d77b8..124e62b8e 100644
--- a/cudablas/compute/cuda_zssssm.c
+++ b/gpucublas/compute/cuda_zssssm.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 #if defined(CHAMELEON_USE_MAGMA)
 #if defined(HAVE_MAGMA_GETRF_INCPIV_GPU)
diff --git a/cudablas/compute/cuda_zsymm.c b/gpucublas/compute/cuda_zsymm.c
similarity index 98%
rename from cudablas/compute/cuda_zsymm.c
rename to gpucublas/compute/cuda_zsymm.c
index b42b86dba..6cd5f5bae 100644
--- a/cudablas/compute/cuda_zsymm.c
+++ b/gpucublas/compute/cuda_zsymm.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 int
 CUDA_zsymm( cham_side_t side, cham_uplo_t uplo,
diff --git a/cudablas/compute/cuda_zsyr2k.c b/gpucublas/compute/cuda_zsyr2k.c
similarity index 98%
rename from cudablas/compute/cuda_zsyr2k.c
rename to gpucublas/compute/cuda_zsyr2k.c
index 9110eda4c..4f280f171 100644
--- a/cudablas/compute/cuda_zsyr2k.c
+++ b/gpucublas/compute/cuda_zsyr2k.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 int
 CUDA_zsyr2k( cham_uplo_t uplo, cham_trans_t trans,
diff --git a/cudablas/compute/cuda_zsyrk.c b/gpucublas/compute/cuda_zsyrk.c
similarity index 98%
rename from cudablas/compute/cuda_zsyrk.c
rename to gpucublas/compute/cuda_zsyrk.c
index c5d484ecf..4bef5c57e 100644
--- a/cudablas/compute/cuda_zsyrk.c
+++ b/gpucublas/compute/cuda_zsyrk.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 int
 CUDA_zsyrk( cham_uplo_t uplo, cham_trans_t trans,
diff --git a/cudablas/compute/cuda_ztpmlqt.c b/gpucublas/compute/cuda_ztpmlqt.c
similarity index 97%
rename from cudablas/compute/cuda_ztpmlqt.c
rename to gpucublas/compute/cuda_ztpmlqt.c
index a46c7ee5e..b41e3f099 100644
--- a/cudablas/compute/cuda_ztpmlqt.c
+++ b/gpucublas/compute/cuda_ztpmlqt.c
@@ -17,7 +17,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 /**
  *******************************************************************************
@@ -148,7 +148,7 @@ CUDA_ztpmlqt( cham_side_t side, cham_trans_t trans,
 
     /* Check input arguments */
     if ((side != ChamLeft) && (side != ChamRight)) {
-        cudablas_error(1, "Illegal value of side");
+        gpucublas_error(1, "Illegal value of side");
         return -1;
     }
 
@@ -176,7 +176,7 @@ CUDA_ztpmlqt( cham_side_t side, cham_trans_t trans,
                      handle );
     }
     else {
-        cudablas_error(-6, "TPMLQT not available on GPU for general cases yet\n" );
+        gpucublas_error(-6, "TPMLQT not available on GPU for general cases yet\n" );
         return -6;
     }
 
diff --git a/cudablas/compute/cuda_ztpmqrt.c b/gpucublas/compute/cuda_ztpmqrt.c
similarity index 97%
rename from cudablas/compute/cuda_ztpmqrt.c
rename to gpucublas/compute/cuda_ztpmqrt.c
index a44b6fb27..3087a8bb0 100644
--- a/cudablas/compute/cuda_ztpmqrt.c
+++ b/gpucublas/compute/cuda_ztpmqrt.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 /**
  *******************************************************************************
@@ -150,7 +150,7 @@ CUDA_ztpmqrt( cham_side_t side, cham_trans_t trans,
 
     /* Check input arguments */
     if ((side != ChamLeft) && (side != ChamRight)) {
-        cudablas_error(1, "Illegal value of side");
+        gpucublas_error(1, "Illegal value of side");
         return -1;
     }
 
@@ -178,7 +178,7 @@ CUDA_ztpmqrt( cham_side_t side, cham_trans_t trans,
                      handle );
     }
     else {
-        cudablas_error(-6, "TPMQRT not available on GPU for general cases yet\n" );
+        gpucublas_error(-6, "TPMQRT not available on GPU for general cases yet\n" );
         return -6;
     }
 
diff --git a/cudablas/compute/cuda_ztrmm.c b/gpucublas/compute/cuda_ztrmm.c
similarity index 98%
rename from cudablas/compute/cuda_ztrmm.c
rename to gpucublas/compute/cuda_ztrmm.c
index ead07f97d..ceaceca15 100644
--- a/cudablas/compute/cuda_ztrmm.c
+++ b/gpucublas/compute/cuda_ztrmm.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 int
 CUDA_ztrmm( cham_side_t side, cham_uplo_t uplo,
diff --git a/cudablas/compute/cuda_ztrsm.c b/gpucublas/compute/cuda_ztrsm.c
similarity index 98%
rename from cudablas/compute/cuda_ztrsm.c
rename to gpucublas/compute/cuda_ztrsm.c
index 23e8c0ee6..d4591d07b 100644
--- a/cudablas/compute/cuda_ztrsm.c
+++ b/gpucublas/compute/cuda_ztrsm.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 int
 CUDA_ztrsm( cham_side_t side, cham_uplo_t uplo,
diff --git a/cudablas/compute/cuda_ztrtri.c b/gpucublas/compute/cuda_ztrtri.c
similarity index 97%
rename from cudablas/compute/cuda_ztrtri.c
rename to gpucublas/compute/cuda_ztrtri.c
index d79310acc..927540248 100644
--- a/cudablas/compute/cuda_ztrtri.c
+++ b/gpucublas/compute/cuda_ztrtri.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 #if defined(CHAMELEON_USE_MAGMA)
 int CUDA_ztrtri(
diff --git a/cudablas/compute/cuda_ztslqt.c b/gpucublas/compute/cuda_ztslqt.c
similarity index 99%
rename from cudablas/compute/cuda_ztslqt.c
rename to gpucublas/compute/cuda_ztslqt.c
index 174941232..1a238e91b 100644
--- a/cudablas/compute/cuda_ztslqt.c
+++ b/gpucublas/compute/cuda_ztslqt.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 #if defined(CHAMELEON_USE_MAGMA) && 0
 int CUDA_ztslqt(
diff --git a/cudablas/compute/cuda_ztsmlq.c b/gpucublas/compute/cuda_ztsmlq.c
similarity index 99%
rename from cudablas/compute/cuda_ztsmlq.c
rename to gpucublas/compute/cuda_ztsmlq.c
index f75dfa801..10c5d6283 100644
--- a/cudablas/compute/cuda_ztsmlq.c
+++ b/gpucublas/compute/cuda_ztsmlq.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 int
 CUDA_ztsmlq( cham_side_t side, cham_trans_t trans,
diff --git a/cudablas/compute/cuda_ztsmqr.c b/gpucublas/compute/cuda_ztsmqr.c
similarity index 99%
rename from cudablas/compute/cuda_ztsmqr.c
rename to gpucublas/compute/cuda_ztsmqr.c
index ff5c9fef0..471ada70e 100644
--- a/cudablas/compute/cuda_ztsmqr.c
+++ b/gpucublas/compute/cuda_ztsmqr.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 int
 CUDA_ztsmqr( cham_side_t side, cham_trans_t trans,
diff --git a/cudablas/compute/cuda_ztsqrt.c b/gpucublas/compute/cuda_ztsqrt.c
similarity index 99%
rename from cudablas/compute/cuda_ztsqrt.c
rename to gpucublas/compute/cuda_ztsqrt.c
index 90bd21d86..2add23cd6 100644
--- a/cudablas/compute/cuda_ztsqrt.c
+++ b/gpucublas/compute/cuda_ztsqrt.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 #if defined(CHAMELEON_USE_MAGMA)
 int CUDA_ztsqrt(
diff --git a/cudablas/compute/cuda_ztstrf.c b/gpucublas/compute/cuda_ztstrf.c
similarity index 98%
rename from cudablas/compute/cuda_ztstrf.c
rename to gpucublas/compute/cuda_ztstrf.c
index df836c428..bcf35a138 100644
--- a/cudablas/compute/cuda_ztstrf.c
+++ b/gpucublas/compute/cuda_ztstrf.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 #if defined(CHAMELEON_USE_MAGMA) && 0
 int CUDA_ztstrf(
diff --git a/cudablas/compute/cuda_zttmlq.c b/gpucublas/compute/cuda_zttmlq.c
similarity index 99%
rename from cudablas/compute/cuda_zttmlq.c
rename to gpucublas/compute/cuda_zttmlq.c
index 131f6c353..6b5c5738a 100644
--- a/cudablas/compute/cuda_zttmlq.c
+++ b/gpucublas/compute/cuda_zttmlq.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 int
 CUDA_zttmlq( cham_side_t side, cham_trans_t trans,
diff --git a/cudablas/compute/cuda_zttmqr.c b/gpucublas/compute/cuda_zttmqr.c
similarity index 99%
rename from cudablas/compute/cuda_zttmqr.c
rename to gpucublas/compute/cuda_zttmqr.c
index a9078ba09..68ab000e9 100644
--- a/cudablas/compute/cuda_zttmqr.c
+++ b/gpucublas/compute/cuda_zttmqr.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 int
 CUDA_zttmqr( cham_side_t side, cham_trans_t trans,
diff --git a/cudablas/compute/cuda_zunmlqt.c b/gpucublas/compute/cuda_zunmlqt.c
similarity index 99%
rename from cudablas/compute/cuda_zunmlqt.c
rename to gpucublas/compute/cuda_zunmlqt.c
index 24db85828..918fb3f1d 100644
--- a/cudablas/compute/cuda_zunmlqt.c
+++ b/gpucublas/compute/cuda_zunmlqt.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 int
 CUDA_zunmlqt( cham_side_t side, cham_trans_t trans,
diff --git a/cudablas/compute/cuda_zunmqrt.c b/gpucublas/compute/cuda_zunmqrt.c
similarity index 99%
rename from cudablas/compute/cuda_zunmqrt.c
rename to gpucublas/compute/cuda_zunmqrt.c
index 01f5f14bb..f6e4e2dd7 100644
--- a/cudablas/compute/cuda_zunmqrt.c
+++ b/gpucublas/compute/cuda_zunmqrt.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 int
 CUDA_zunmqrt( cham_side_t side, cham_trans_t trans,
diff --git a/cudablas/compute/cudaglobal.c b/gpucublas/compute/cudaglobal.c
similarity index 98%
rename from cudablas/compute/cudaglobal.c
rename to gpucublas/compute/cudaglobal.c
index cbcbf5b2f..bc0cf74a1 100644
--- a/cudablas/compute/cudaglobal.c
+++ b/gpucublas/compute/cudaglobal.c
@@ -9,7 +9,7 @@
  *
  ***
  *
- * @brief Chameleon global cudablas variables and functions
+ * @brief Chameleon global gpucublas variables and functions
  *
  * @version 1.2.0
  * @author Mathieu Faverge
@@ -17,7 +17,7 @@
  * @date 2022-02-22
  *
  */
-#include "cudablas.h"
+#include "gpucublas.h"
 
 /**
  *  LAPACK Constants
diff --git a/cudablas/eztrace_module/CMakeLists.txt b/gpucublas/eztrace_module/CMakeLists.txt
similarity index 94%
rename from cudablas/eztrace_module/CMakeLists.txt
rename to gpucublas/eztrace_module/CMakeLists.txt
index 8a298a868..83e737220 100644
--- a/cudablas/eztrace_module/CMakeLists.txt
+++ b/gpucublas/eztrace_module/CMakeLists.txt
@@ -43,8 +43,8 @@ if (EZTRACE_FOUND AND EZTRACE_DIR_FOUND)
         add_custom_command(
             OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/output
             COMMAND ${EZTRACE_CREATE_PLUGIN}
-            ARGS ${CMAKE_CURRENT_SOURCE_DIR}/cudablas_eztrace_module
-            DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/cudablas_eztrace_module
+            ARGS ${CMAKE_CURRENT_SOURCE_DIR}/gpucublas_eztrace_module
+            DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/gpucublas_eztrace_module
             )
         add_custom_target(
             eztrace-module-chameleon_cuda-dir ALL
diff --git a/cudablas/eztrace_module/cudablas_eztrace_module b/gpucublas/eztrace_module/gpucublas_eztrace_module
similarity index 100%
rename from cudablas/eztrace_module/cudablas_eztrace_module
rename to gpucublas/eztrace_module/gpucublas_eztrace_module
diff --git a/cudablas/include/CMakeLists.txt b/gpucublas/include/CMakeLists.txt
similarity index 65%
rename from cudablas/include/CMakeLists.txt
rename to gpucublas/include/CMakeLists.txt
index 12dbc4692..b208d377e 100644
--- a/cudablas/include/CMakeLists.txt
+++ b/gpucublas/include/CMakeLists.txt
@@ -26,39 +26,39 @@
 
 # Generate header files
 # ---------------------
-set(CUDABLAS_HDRS_GENERATED "")
+set(GPUCUBLAS_HDRS_GENERATED "")
 set(ZHDR
-    cudablas/cudablas_z.h
+    gpucublas/gpucublas_z.h
 )
 precisions_rules_py(
-  CUDABLAS_HDRS_GENERATED "${ZHDR}"
-  TARGETDIR cudablas
+  GPUCUBLAS_HDRS_GENERATED "${ZHDR}"
+  TARGETDIR gpucublas
   PRECISIONS "s;d;c;z;zc;ds" )
 
 # Define the list of headers
 # --------------------------
-set(CUDABLAS_HDRS
-    cudablas.h
+set(GPUCUBLAS_HDRS
+    gpucublas.h
     )
 
 # Add generated headers
 # ---------------------
-foreach( hdr_file ${CUDABLAS_HDRS_GENERATED} )
-  list(APPEND CUDABLAS_HDRS ${CMAKE_CURRENT_BINARY_DIR}/${hdr_file})
+foreach( hdr_file ${GPUCUBLAS_HDRS_GENERATED} )
+  list(APPEND GPUCUBLAS_HDRS ${CMAKE_CURRENT_BINARY_DIR}/${hdr_file})
 endforeach()
 
 # Force generation of headers
 # ---------------------------
-add_custom_target(cudablas_include ALL SOURCES ${CUDABLAS_HDRS})
-set(CHAMELEON_SOURCES_TARGETS "${CHAMELEON_SOURCES_TARGETS};cudablas_include" CACHE INTERNAL "List of targets of sources")
+add_custom_target(gpucublas_include ALL SOURCES ${GPUCUBLAS_HDRS})
+set(CHAMELEON_SOURCES_TARGETS "${CHAMELEON_SOURCES_TARGETS};gpucublas_include" CACHE INTERNAL "List of targets of sources")
 
 # Installation
 # ------------
-install( FILES cudablas.h
+install( FILES gpucublas.h
          DESTINATION include )
 
-install( FILES ${CUDABLAS_HDRS}
-         DESTINATION include/cudablas )
+install( FILES ${GPUCUBLAS_HDRS}
+         DESTINATION include/gpucublas )
 
 ###
 ### END CMakeLists.txt
diff --git a/cudablas/include/cudablas.h b/gpucublas/include/gpucublas.h
similarity index 81%
rename from cudablas/include/cudablas.h
rename to gpucublas/include/gpucublas.h
index fc6fe7a71..90f05f44b 100644
--- a/cudablas/include/cudablas.h
+++ b/gpucublas/include/gpucublas.h
@@ -1,6 +1,6 @@
 /**
  *
- * @file cudablas.h
+ * @file gpucublas.h
  *
  * @copyright 2009-2014 The University of Tennessee and The University of
  *                      Tennessee Research Foundation. All rights reserved.
@@ -19,8 +19,8 @@
  * @precisions normal z -> c d s
  *
  */
-#ifndef _cudablas_h_
-#define _cudablas_h_
+#ifndef _gpucublas_h_
+#define _gpucublas_h_
 
 #include "chameleon/config.h"
 
@@ -54,17 +54,17 @@
  */
 BEGIN_C_DECLS
 
-#include "cudablas/cudablas_z.h"
-#include "cudablas/cudablas_d.h"
-#include "cudablas/cudablas_c.h"
-#include "cudablas/cudablas_s.h"
+#include "gpucublas/gpucublas_z.h"
+#include "gpucublas/gpucublas_d.h"
+#include "gpucublas/gpucublas_c.h"
+#include "gpucublas/gpucublas_s.h"
 
 END_C_DECLS
 
 /**
  * Coreblas Error
  */
-#define cudablas_error(k, str) fprintf(stderr, "%s: Parameter %d / %s\n", __func__, k, str)
+#define gpucublas_error(k, str) fprintf(stderr, "%s: Parameter %d / %s\n", __func__, k, str)
 
 /**
  *  LAPACK Constants
@@ -79,4 +79,4 @@ extern int chameleon_cublas_constants[];
 
 END_C_DECLS
 
-#endif /* _cudablas_h_ */
+#endif /* _gpucublas_h_ */
diff --git a/cudablas/include/cudablas/cudablas_z.h b/gpucublas/include/gpucublas/gpucublas_z.h
similarity index 98%
rename from cudablas/include/cudablas/cudablas_z.h
rename to gpucublas/include/gpucublas/gpucublas_z.h
index d0fa9be78..0773e0035 100644
--- a/cudablas/include/cudablas/cudablas_z.h
+++ b/gpucublas/include/gpucublas/gpucublas_z.h
@@ -1,6 +1,6 @@
 /**
  *
- * @file cudablas_z.h
+ * @file gpucublas_z.h
  *
  * @copyright 2009-2014 The University of Tennessee and The University of
  *                      Tennessee Research Foundation. All rights reserved.
@@ -18,8 +18,8 @@
  * @precisions normal z -> c d s
  *
  */
-#ifndef _cudablas_z_h_
-#define _cudablas_z_h_
+#ifndef _gpucublas_z_h_
+#define _gpucublas_z_h_
 
 /**
  *  Declarations of cuda kernels - alphabetical order
@@ -47,4 +47,4 @@ int CUDA_zttmqr( cham_side_t side, cham_trans_t trans, int M1, int N1, int M2, i
 int CUDA_zunmlqt(cham_side_t side, cham_trans_t trans, int M, int N, int K, int IB, const cuDoubleComplex *A,    int LDA, const cuDoubleComplex *T,    int LDT, cuDoubleComplex *C,    int LDC, cuDoubleComplex *WORK, int LDWORK, cublasHandle_t handle );
 int CUDA_zunmqrt(cham_side_t side, cham_trans_t trans, int M, int N, int K, int IB, const cuDoubleComplex *A,    int LDA, const cuDoubleComplex *T,    int LDT, cuDoubleComplex *C,    int LDC, cuDoubleComplex *WORK, int LDWORK, cublasHandle_t handle );
 
-#endif /* _cudablas_z_h_ */
+#endif /* _gpucublas_z_h_ */
diff --git a/hipblas/CMakeLists.txt b/gpuhipblas/CMakeLists.txt
similarity index 100%
rename from hipblas/CMakeLists.txt
rename to gpuhipblas/CMakeLists.txt
diff --git a/hipblas/compute/CMakeLists.txt b/gpuhipblas/compute/CMakeLists.txt
similarity index 59%
rename from hipblas/compute/CMakeLists.txt
rename to gpuhipblas/compute/CMakeLists.txt
index 632049557..bd7ac4540 100644
--- a/hipblas/compute/CMakeLists.txt
+++ b/gpuhipblas/compute/CMakeLists.txt
@@ -28,7 +28,7 @@
 
 # Generate the chameleon sources for all possible precisions
 # ------------------------------------------------------
-set(HIPBLAS_SRCS_GENERATED "")
+set(GPUHIPBLAS_SRCS_GENERATED "")
 set(ZSRC
     hip_zgemm.c
     hip_zhemm.c
@@ -42,46 +42,46 @@ set(ZSRC
     )
 
 precisions_rules_py(
-  HIPBLAS_SRCS_GENERATED "${ZSRC}"
+  GPUHIPBLAS_SRCS_GENERATED "${ZSRC}"
   PRECISIONS "${CHAMELEON_PRECISION}")
 
-set(HIPBLAS_SRCS
-  ${HIPBLAS_SRCS_GENERATED}
+set(GPUHIPBLAS_SRCS
+  ${GPUHIPBLAS_SRCS_GENERATED}
   hipglobal.c
   )
 
 # Force generation of sources
 # ---------------------------
-add_custom_target(hipblas_sources ALL SOURCES ${HIPBLAS_SRCS})
-set(CHAMELEON_SOURCES_TARGETS "${CHAMELEON_SOURCES_TARGETS};hipblas_sources" CACHE INTERNAL "List of targets of sources")
+add_custom_target(gpuhipblas_sources ALL SOURCES ${GPUHIPBLAS_SRCS})
+set(CHAMELEON_SOURCES_TARGETS "${CHAMELEON_SOURCES_TARGETS};gpuhipblas_sources" CACHE INTERNAL "List of targets of sources")
 
 # Compile step
 # ------------
-add_library(hipblas ${HIPBLAS_SRCS})
-set_target_properties(hipblas PROPERTIES VERSION ${CHAMELEON_VERSION})
-set_target_properties(hipblas PROPERTIES SOVERSION ${CHAMELEON_VERSION_MAJOR})
-add_dependencies(hipblas hipblas_include hipblas_sources)
-target_include_directories(hipblas PUBLIC
-  $<BUILD_INTERFACE:${CHAMELEON_SOURCE_DIR}/hipblas/include>
-  $<BUILD_INTERFACE:${CHAMELEON_BINARY_DIR}/hipblas/include>
+add_library(gpuhipblas ${GPUHIPBLAS_SRCS})
+set_target_properties(gpuhipblas PROPERTIES VERSION ${CHAMELEON_VERSION})
+set_target_properties(gpuhipblas PROPERTIES SOVERSION ${CHAMELEON_VERSION_MAJOR})
+add_dependencies(gpuhipblas gpuhipblas_include gpuhipblas_sources)
+target_include_directories(gpuhipblas PUBLIC
+  $<BUILD_INTERFACE:${CHAMELEON_SOURCE_DIR}/gpuhipblas/include>
+  $<BUILD_INTERFACE:${CHAMELEON_BINARY_DIR}/gpuhipblas/include>
   $<BUILD_INTERFACE:${CHAMELEON_SOURCE_DIR}/include>
   $<BUILD_INTERFACE:${CHAMELEON_BINARY_DIR}/include>
   $<INSTALL_INTERFACE:include>)
-set_property(TARGET hipblas PROPERTY INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib")
+set_property(TARGET gpuhipblas PROPERTY INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib")
 
-target_link_libraries(hipblas PRIVATE coreblas HIP::HIPBLAS)
-target_link_libraries(hipblas PUBLIC MORSE::M)
+target_link_libraries(gpuhipblas PRIVATE coreblas HIP::HIPBLAS)
+target_link_libraries(gpuhipblas PUBLIC MORSE::M)
 
 # export target coreblas
-install(EXPORT hipblasTargets
+install(EXPORT gpuhipblasTargets
         NAMESPACE CHAMELEON::
         DESTINATION lib/cmake/chameleon
         )
 
 # installation
 # ------------
-install(TARGETS hipblas
-        EXPORT hipblasTargets
+install(TARGETS gpuhipblas
+        EXPORT gpuhipblasTargets
         ARCHIVE DESTINATION lib
         LIBRARY DESTINATION lib
         )
diff --git a/hipblas/compute/hip_zgemm.c b/gpuhipblas/compute/hip_zgemm.c
similarity index 98%
rename from hipblas/compute/hip_zgemm.c
rename to gpuhipblas/compute/hip_zgemm.c
index ed42fa7b8..0fe90f606 100644
--- a/hipblas/compute/hip_zgemm.c
+++ b/gpuhipblas/compute/hip_zgemm.c
@@ -19,7 +19,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "hipblas.h"
+#include "gpuhipblas.h"
 
 int
 HIP_zgemm( cham_trans_t transa, cham_trans_t transb,
diff --git a/hipblas/compute/hip_zhemm.c b/gpuhipblas/compute/hip_zhemm.c
similarity index 98%
rename from hipblas/compute/hip_zhemm.c
rename to gpuhipblas/compute/hip_zhemm.c
index 1d6936783..f1724738e 100644
--- a/hipblas/compute/hip_zhemm.c
+++ b/gpuhipblas/compute/hip_zhemm.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c
  *
  */
-#include "hipblas.h"
+#include "gpuhipblas.h"
 
 int
 HIP_zhemm( cham_side_t side, cham_uplo_t uplo,
diff --git a/hipblas/compute/hip_zher2k.c b/gpuhipblas/compute/hip_zher2k.c
similarity index 98%
rename from hipblas/compute/hip_zher2k.c
rename to gpuhipblas/compute/hip_zher2k.c
index fc245eb3e..f6bf36023 100644
--- a/hipblas/compute/hip_zher2k.c
+++ b/gpuhipblas/compute/hip_zher2k.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c
  *
  */
-#include "hipblas.h"
+#include "gpuhipblas.h"
 
 int
 HIP_zher2k( cham_uplo_t uplo, cham_trans_t trans,
diff --git a/hipblas/compute/hip_zherk.c b/gpuhipblas/compute/hip_zherk.c
similarity index 97%
rename from hipblas/compute/hip_zherk.c
rename to gpuhipblas/compute/hip_zherk.c
index c31247546..ce0005812 100644
--- a/hipblas/compute/hip_zherk.c
+++ b/gpuhipblas/compute/hip_zherk.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c
  *
  */
-#include "hipblas.h"
+#include "gpuhipblas.h"
 
 int
 HIP_zherk( cham_uplo_t uplo, cham_trans_t trans,
diff --git a/hipblas/compute/hip_zsymm.c b/gpuhipblas/compute/hip_zsymm.c
similarity index 98%
rename from hipblas/compute/hip_zsymm.c
rename to gpuhipblas/compute/hip_zsymm.c
index 3c25f9073..f217c27dd 100644
--- a/hipblas/compute/hip_zsymm.c
+++ b/gpuhipblas/compute/hip_zsymm.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "hipblas.h"
+#include "gpuhipblas.h"
 
 int
 HIP_zsymm( cham_side_t side, cham_uplo_t uplo,
diff --git a/hipblas/compute/hip_zsyr2k.c b/gpuhipblas/compute/hip_zsyr2k.c
similarity index 98%
rename from hipblas/compute/hip_zsyr2k.c
rename to gpuhipblas/compute/hip_zsyr2k.c
index 6da295381..3f3197b2f 100644
--- a/hipblas/compute/hip_zsyr2k.c
+++ b/gpuhipblas/compute/hip_zsyr2k.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "hipblas.h"
+#include "gpuhipblas.h"
 
 int
 HIP_zsyr2k( cham_uplo_t uplo, cham_trans_t trans,
diff --git a/hipblas/compute/hip_zsyrk.c b/gpuhipblas/compute/hip_zsyrk.c
similarity index 97%
rename from hipblas/compute/hip_zsyrk.c
rename to gpuhipblas/compute/hip_zsyrk.c
index 63b87ac14..2d6dac816 100644
--- a/hipblas/compute/hip_zsyrk.c
+++ b/gpuhipblas/compute/hip_zsyrk.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "hipblas.h"
+#include "gpuhipblas.h"
 
 int
 HIP_zsyrk( cham_uplo_t uplo, cham_trans_t trans,
diff --git a/hipblas/compute/hip_ztrmm.c b/gpuhipblas/compute/hip_ztrmm.c
similarity index 98%
rename from hipblas/compute/hip_ztrmm.c
rename to gpuhipblas/compute/hip_ztrmm.c
index f281385ab..73141dcfd 100644
--- a/hipblas/compute/hip_ztrmm.c
+++ b/gpuhipblas/compute/hip_ztrmm.c
@@ -18,7 +18,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "hipblas.h"
+#include "gpuhipblas.h"
 
 int
 HIP_ztrmm( cham_side_t side, cham_uplo_t uplo,
diff --git a/hipblas/compute/hip_ztrsm.c b/gpuhipblas/compute/hip_ztrsm.c
similarity index 98%
rename from hipblas/compute/hip_ztrsm.c
rename to gpuhipblas/compute/hip_ztrsm.c
index d2d939e83..7c0c44124 100644
--- a/hipblas/compute/hip_ztrsm.c
+++ b/gpuhipblas/compute/hip_ztrsm.c
@@ -19,7 +19,7 @@
  * @precisions normal z -> c d s
  *
  */
-#include "hipblas.h"
+#include "gpuhipblas.h"
 
 int
 HIP_ztrsm( cham_side_t side, cham_uplo_t uplo,
diff --git a/hipblas/compute/hipglobal.c b/gpuhipblas/compute/hipglobal.c
similarity index 99%
rename from hipblas/compute/hipglobal.c
rename to gpuhipblas/compute/hipglobal.c
index 3c9fce602..2da05eac2 100644
--- a/hipblas/compute/hipglobal.c
+++ b/gpuhipblas/compute/hipglobal.c
@@ -17,7 +17,7 @@
  * @date 2023-01-30
  *
  */
-#include "hipblas.h"
+#include "gpuhipblas.h"
 
 /**
  *  LAPACK Constants
diff --git a/hipblas/eztrace_module/CMakeLists.txt b/gpuhipblas/eztrace_module/CMakeLists.txt
similarity index 94%
rename from hipblas/eztrace_module/CMakeLists.txt
rename to gpuhipblas/eztrace_module/CMakeLists.txt
index f46c2e28d..444a6d3de 100644
--- a/hipblas/eztrace_module/CMakeLists.txt
+++ b/gpuhipblas/eztrace_module/CMakeLists.txt
@@ -43,8 +43,8 @@ if (EZTRACE_FOUND AND EZTRACE_DIR_FOUND)
         add_custom_command(
             OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/output
             COMMAND ${EZTRACE_CREATE_PLUGIN}
-            ARGS ${CMAKE_CURRENT_SOURCE_DIR}/hipblas_eztrace_module
-            DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/hipblas_eztrace_module
+            ARGS ${CMAKE_CURRENT_SOURCE_DIR}/gpuhipblas_eztrace_module
+            DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/gpuhipblas_eztrace_module
             )
         add_custom_target(
             eztrace-module-chameleon_hip-dir ALL
diff --git a/hipblas/eztrace_module/hipblas_eztrace_module b/gpuhipblas/eztrace_module/gpuhipblas_eztrace_module
similarity index 100%
rename from hipblas/eztrace_module/hipblas_eztrace_module
rename to gpuhipblas/eztrace_module/gpuhipblas_eztrace_module
diff --git a/hipblas/include/CMakeLists.txt b/gpuhipblas/include/CMakeLists.txt
similarity index 65%
rename from hipblas/include/CMakeLists.txt
rename to gpuhipblas/include/CMakeLists.txt
index ec1b8e3b4..16aa69548 100644
--- a/hipblas/include/CMakeLists.txt
+++ b/gpuhipblas/include/CMakeLists.txt
@@ -27,39 +27,39 @@
 
 # Generate header files
 # ---------------------
-set(HIPBLAS_HDRS_GENERATED "")
+set(GPUHIPBLAS_HDRS_GENERATED "")
 set(ZHDR
-    hipblas/hipblas_z.h
+    gpuhipblas/gpuhipblas_z.h
 )
 precisions_rules_py(
-  HIPBLAS_HDRS_GENERATED "${ZHDR}"
-  TARGETDIR hipblas
+  GPUHIPBLAS_HDRS_GENERATED "${ZHDR}"
+  TARGETDIR gpuhipblas
   PRECISIONS "s;d;c;z;zc;ds" )
 
 # Define the list of headers
 # --------------------------
-set(HIPBLAS_HDRS
-    hipblas.h
+set(GPUHIPBLAS_HDRS
+    gpuhipblas.h
     )
 
 # Add generated headers
 # ---------------------
-foreach( hdr_file ${HIPBLAS_HDRS_GENERATED} )
-  list(APPEND HIPBLAS_HDRS ${CMAKE_CURRENT_BINARY_DIR}/${hdr_file})
+foreach( hdr_file ${GPUHIPBLAS_HDRS_GENERATED} )
+  list(APPEND GPUHIPBLAS_HDRS ${CMAKE_CURRENT_BINARY_DIR}/${hdr_file})
 endforeach()
 
 # Force generation of headers
 # ---------------------------
-add_custom_target(hipblas_include ALL SOURCES ${HIPBLAS_HDRS})
-set(CHAMELEON_SOURCES_TARGETS "${CHAMELEON_SOURCES_TARGETS};hipblas_include" CACHE INTERNAL "List of targets of sources")
+add_custom_target(gpuhipblas_include ALL SOURCES ${GPUHIPBLAS_HDRS})
+set(CHAMELEON_SOURCES_TARGETS "${CHAMELEON_SOURCES_TARGETS};gpuhipblas_include" CACHE INTERNAL "List of targets of sources")
 
 # Installation
 # ------------
-install( FILES hipblas.h
+install( FILES gpuhipblas.h
          DESTINATION include )
 
-install( FILES ${HIPBLAS_HDRS}
-         DESTINATION include/hipblas )
+install( FILES ${GPUHIPBLAS_HDRS}
+         DESTINATION include/gpuhipblas )
 
 ###
 ### END CMakeLists.txt
diff --git a/hipblas/include/hipblas.h b/gpuhipblas/include/gpuhipblas.h
similarity index 80%
rename from hipblas/include/hipblas.h
rename to gpuhipblas/include/gpuhipblas.h
index 333bbc2d9..572abcf96 100644
--- a/hipblas/include/hipblas.h
+++ b/gpuhipblas/include/gpuhipblas.h
@@ -1,6 +1,6 @@
 /**
  *
- * @file hipblas.h
+ * @file gpuhipblas.h
  *
  * @copyright 2009-2014 The University of Tennessee and The University of
  *                      Tennessee Research Foundation. All rights reserved.
@@ -20,8 +20,8 @@
  * @precisions normal z -> c d s
  *
  */
-#ifndef _hipblas_h_
-#define _hipblas_h_
+#ifndef _gpuhipblas_h_
+#define _gpuhipblas_h_
 
 #include "chameleon/config.h"
 
@@ -54,17 +54,17 @@
  */
 BEGIN_C_DECLS
 
-#include "hipblas/hipblas_z.h"
-#include "hipblas/hipblas_d.h"
-#include "hipblas/hipblas_c.h"
-#include "hipblas/hipblas_s.h"
+#include "gpuhipblas/gpuhipblas_z.h"
+#include "gpuhipblas/gpuhipblas_d.h"
+#include "gpuhipblas/gpuhipblas_c.h"
+#include "gpuhipblas/gpuhipblas_s.h"
 
 END_C_DECLS
 
 /**
  * Coreblas Error
  */
-#define hipblas_error(k, str) fprintf(stderr, "%s: Parameter %d / %s\n", __func__, k, str)
+#define gpuhipblas_error(k, str) fprintf(stderr, "%s: Parameter %d / %s\n", __func__, k, str)
 
 /**
  *  LAPACK Constants
@@ -79,4 +79,4 @@ extern int chameleon_hipblas_constants[];
 
 END_C_DECLS
 
-#endif /* _hipblas_h_ */
+#endif /* _gpuhipblas_h_ */
diff --git a/hipblas/include/hipblas/hipblas_z.h b/gpuhipblas/include/gpuhipblas/gpuhipblas_z.h
similarity index 96%
rename from hipblas/include/hipblas/hipblas_z.h
rename to gpuhipblas/include/gpuhipblas/gpuhipblas_z.h
index 3e4509a3c..0b6f8837a 100644
--- a/hipblas/include/hipblas/hipblas_z.h
+++ b/gpuhipblas/include/gpuhipblas/gpuhipblas_z.h
@@ -1,6 +1,6 @@
 /**
  *
- * @file hipblas_z.h
+ * @file gpuhipblas_z.h
  *
  * @copyright 2009-2014 The University of Tennessee and The University of
  *                      Tennessee Research Foundation. All rights reserved.
@@ -19,8 +19,8 @@
  * @precisions normal z -> c d s
  *
  */
-#ifndef _hipblas_z_h_
-#define _hipblas_z_h_
+#ifndef _gpuhipblas_z_h_
+#define _gpuhipblas_z_h_
 
 /**
  *  Declarations of hip kernels - alphabetical order
@@ -35,4 +35,4 @@ int HIP_zsyrk(  cham_uplo_t uplo, cham_trans_t trans, int n, int k, const hipbla
 int HIP_ztrmm(  cham_side_t side, cham_uplo_t uplo, cham_trans_t transa, cham_diag_t diag, int m, int n, const hipblasDoubleComplex *alpha, const hipblasDoubleComplex *A, int lda, hipblasDoubleComplex *B, int ldb, hipblasHandle_t handle );
 int HIP_ztrsm(  cham_side_t side, cham_uplo_t uplo, cham_trans_t transa, cham_diag_t diag, int m, int n, const hipblasDoubleComplex *alpha, const hipblasDoubleComplex *A, int lda, hipblasDoubleComplex *B, int ldb, hipblasHandle_t handle );
 
-#endif /* _hipblas_z_h_ */
+#endif /* _gpuhipblas_z_h_ */
diff --git a/lib/pkgconfig/cudablas.pc.in b/lib/pkgconfig/gpucublas.pc.in
similarity index 62%
rename from lib/pkgconfig/cudablas.pc.in
rename to lib/pkgconfig/gpucublas.pc.in
index c9d38dfde..0aef0c0b2 100644
--- a/lib/pkgconfig/cudablas.pc.in
+++ b/lib/pkgconfig/gpucublas.pc.in
@@ -1,5 +1,5 @@
 #
-#  @file cudablas.pc
+#  @file gpucublas.pc
 #
 #  @copyright 2016-2023 Bordeaux INP, CNRS (LaBRI UMR 5800), Inria,
 #                       Univ. Bordeaux. All rights reserved.
@@ -13,11 +13,11 @@ exec_prefix=${prefix}
 libdir=${exec_prefix}/lib
 includedir=${exec_prefix}/include
 
-Name: cudablas
+Name: gpucublas
 Description: Interface to cuBLAS routines + some other auxiliary routines
 Version: @CHAMELEON_VERSION_MAJOR@.@CHAMELEON_VERSION_MINOR@.@CHAMELEON_VERSION_MICRO@
-Cflags: @CUDABLAS_PKGCONFIG_DEFINITIONS@ -I${includedir}
-Libs: -L${libdir} @CUDABLAS_PKGCONFIG_LIBS@
-Libs.private: @CUDABLAS_PKGCONFIG_LIBS_PRIVATE@
-Requires: @CUDABLAS_PKGCONFIG_REQUIRED@
-Requires.private: @CUDABLAS_PKGCONFIG_REQUIRED_PRIVATE@
+Cflags: @GPUCUBLAS_PKGCONFIG_DEFINITIONS@ -I${includedir}
+Libs: -L${libdir} @GPUCUBLAS_PKGCONFIG_LIBS@
+Libs.private: @GPUCUBLAS_PKGCONFIG_LIBS_PRIVATE@
+Requires: @GPUCUBLAS_PKGCONFIG_REQUIRED@
+Requires.private: @GPUCUBLAS_PKGCONFIG_REQUIRED_PRIVATE@
diff --git a/lib/pkgconfig/hipblas.pc.in b/lib/pkgconfig/gpuhipblas.pc.in
similarity index 61%
rename from lib/pkgconfig/hipblas.pc.in
rename to lib/pkgconfig/gpuhipblas.pc.in
index 78d0f55d4..08c80fe3d 100644
--- a/lib/pkgconfig/hipblas.pc.in
+++ b/lib/pkgconfig/gpuhipblas.pc.in
@@ -1,5 +1,5 @@
 #
-#  @file hipblas.pc
+#  @file gpuhipblas.pc
 #
 #  @copyright 2016-2023 Bordeaux INP, CNRS (LaBRI UMR 5800), Inria,
 #                       Univ. Bordeaux. All rights reserved.
@@ -13,11 +13,11 @@ exec_prefix=${prefix}
 libdir=${exec_prefix}/lib
 includedir=${exec_prefix}/include
 
-Name: hipblas
+Name: gpuhipblas
 Description: Interface to hipBLAS routines + some other auxiliary routines
 Version: @CHAMELEON_VERSION_MAJOR@.@CHAMELEON_VERSION_MINOR@.@CHAMELEON_VERSION_MICRO@
-Cflags: @HIPBLAS_PKGCONFIG_DEFINITIONS@ -I${includedir}
-Libs: -L${libdir} @HIPBLAS_PKGCONFIG_LIBS@
-Libs.private: @HIPBLAS_PKGCONFIG_LIBS_PRIVATE@
-Requires: @HIPBLAS_PKGCONFIG_REQUIRED@
-Requires.private: @HIPBLAS_PKGCONFIG_REQUIRED_PRIVATE@
+Cflags: @GPUHIPBLAS_PKGCONFIG_DEFINITIONS@ -I${includedir}
+Libs: -L${libdir} @GPUHIPBLAS_PKGCONFIG_LIBS@
+Libs.private: @GPUHIPBLAS_PKGCONFIG_LIBS_PRIVATE@
+Requires: @GPUHIPBLAS_PKGCONFIG_REQUIRED@
+Requires.private: @GPUHIPBLAS_PKGCONFIG_REQUIRED_PRIVATE@
diff --git a/runtime/parsec/CMakeLists.txt b/runtime/parsec/CMakeLists.txt
index 2355aa206..74c4d0f92 100644
--- a/runtime/parsec/CMakeLists.txt
+++ b/runtime/parsec/CMakeLists.txt
@@ -130,7 +130,7 @@ add_dependencies(chameleon_parsec
   parsec_sources
 )
 if (CHAMELEON_USE_CUDA)
-  add_dependencies(chameleon_parsec cudablas_include)
+  add_dependencies(chameleon_parsec gpucublas_include)
 endif()
 
 target_include_directories(chameleon_parsec PUBLIC
@@ -148,7 +148,7 @@ target_include_directories(chameleon_parsec PRIVATE
 target_link_libraries(chameleon_parsec PRIVATE MORSE::PARSEC)
 target_link_libraries(chameleon_parsec PRIVATE coreblas)
 if(CHAMELEON_USE_CUDA)
-  target_link_libraries(chameleon_parsec PRIVATE cudablas)
+  target_link_libraries(chameleon_parsec PRIVATE gpucublas)
 endif(CHAMELEON_USE_CUDA)
 target_link_libraries(chameleon_parsec PRIVATE MORSE::M)
 
diff --git a/runtime/starpu/CMakeLists.txt b/runtime/starpu/CMakeLists.txt
index c70669ba4..f7c00783b 100644
--- a/runtime/starpu/CMakeLists.txt
+++ b/runtime/starpu/CMakeLists.txt
@@ -276,10 +276,10 @@ add_dependencies(chameleon_starpu
 if (NOT CHAMELEON_SIMULATION)
   add_dependencies(chameleon_starpu coreblas_include)
   if (CHAMELEON_USE_CUDA)
-    add_dependencies(chameleon_starpu cudablas_include)
+    add_dependencies(chameleon_starpu gpucublas_include)
   endif()
   if (CHAMELEON_USE_HIP)
-    add_dependencies(chameleon_starpu hipblas_include)
+    add_dependencies(chameleon_starpu gpuhipblas_include)
   endif()
 endif()
 
@@ -305,10 +305,10 @@ endif()
 if (NOT CHAMELEON_SIMULATION)
   target_link_libraries(chameleon_starpu PRIVATE coreblas)
   if(CHAMELEON_USE_CUDA)
-    target_link_libraries(chameleon_starpu PRIVATE cudablas)
+    target_link_libraries(chameleon_starpu PRIVATE gpucublas)
   endif(CHAMELEON_USE_CUDA)
   if(CHAMELEON_USE_HIP)
-    target_link_libraries(chameleon_starpu PRIVATE hipblas)
+    target_link_libraries(chameleon_starpu PRIVATE gpuhipblas)
   endif(CHAMELEON_USE_HIP)
 endif(NOT CHAMELEON_SIMULATION)
 target_link_libraries(chameleon_starpu PRIVATE MORSE::M)
diff --git a/runtime/starpu/include/runtime_codelet_z.h b/runtime/starpu/include/runtime_codelet_z.h
index 673d8c5d7..14f7c4e20 100644
--- a/runtime/starpu/include/runtime_codelet_z.h
+++ b/runtime/starpu/include/runtime_codelet_z.h
@@ -34,11 +34,11 @@
 #include "coreblas/coreblas_ztile.h"
 
 #if defined(CHAMELEON_USE_CUDA)
-#include "cudablas.h"
+#include "gpucublas.h"
 #endif
 
 #if defined(CHAMELEON_USE_HIP)
-#include "hipblas.h"
+#include "gpuhipblas.h"
 #endif
 
 #endif /* !defined(CHAMELEON_SIMULATION) */
diff --git a/runtime/starpu/include/runtime_codelet_zc.h b/runtime/starpu/include/runtime_codelet_zc.h
index 010da1bbb..edbebf408 100644
--- a/runtime/starpu/include/runtime_codelet_zc.h
+++ b/runtime/starpu/include/runtime_codelet_zc.h
@@ -31,7 +31,7 @@
 #include "coreblas/coreblas_zc.h"
 #include "coreblas/coreblas_zctile.h"
 #if defined(CHAMELEON_USE_CUDA)
-#include "cudablas.h"
+#include "gpucublas.h"
 #endif
 #endif
 
-- 
GitLab