Skip to content
This repository was archived by the owner on Jan 13, 2025. It is now read-only.

Commit 7332757

Browse files
authored
Rename SYCL-BLAS to portBLAS (#455)
This pull request renames the sycl-blas library to portBLAS.
1 parent 1cad09d commit 7332757

File tree

398 files changed

+1435
-1436
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

398 files changed

+1435
-1436
lines changed

.github/workflows/build-and-test.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -76,9 +76,9 @@ jobs:
7676
--build-arg git_slug=${GIT_SLUG}
7777
--build-arg impl=${IMPL}
7878
--build-arg command=${COMMAND}
79-
-t sycl-blas .
79+
-t portblas .
8080
- name: Run the Docker image
81-
run: docker run -t sycl-blas
81+
run: docker run -t portblas
8282
# Builds the dockerfile in the repo and uses that to build auto-tuner.
8383
Build-Auto-Tuner:
8484
needs: skip-check
@@ -116,6 +116,6 @@ jobs:
116116
--build-arg git_slug=${GIT_SLUG}
117117
--build-arg impl=${IMPL}
118118
--build-arg command=${COMMAND}
119-
-t sycl-blas .
119+
-t portblas .
120120
- name: Run the Docker image
121-
run: docker run -t sycl-blas
121+
run: docker run -t portblas

CMakeLists.txt

Lines changed: 45 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,13 @@
1717
# * See the License for the specific language governing permissions and
1818
# * limitations under the License.
1919
# *
20-
# * SYCL-BLAS: BLAS implementation using SYCL
20+
# * portBLAS: BLAS implementation using SYCL
2121
# *
2222
# * @filename CMakeLists.txt
2323
# *
2424
# **************************************************************************/
2525
cmake_minimum_required(VERSION 3.4.3)
26-
project(sycl-blas VERSION 0.1.0 LANGUAGES CXX)
26+
project(portBLAS VERSION 0.1.0 LANGUAGES CXX)
2727

2828
if(POLICY CMP0074)
2929
cmake_policy(SET CMP0074 NEW)
@@ -36,7 +36,7 @@ if(EXISTS ${CMAKE_BINARY_DIR}/conanbuildinfo.cmake)
3636
list(APPEND CMAKE_PREFIX_PATH ${CMAKE_BINARY_DIR})
3737
endif()
3838

39-
option(INSTALL_HEADER_ONLY "Install SYCL-BLAS as a header only library" OFF)
39+
option(INSTALL_HEADER_ONLY "Install portBLAS as a header only library" OFF)
4040

4141
set(BUILD_SHARED_LIBS ON CACHE BOOL "")
4242
set(CMAKE_CXX_STANDARD 14)
@@ -58,27 +58,27 @@ list(APPEND CMAKE_MODULE_PATH
5858
)
5959

6060
# This turns the long file names that are generated into short versions using a hash
61-
# This is required to build SYCL-BLAS on Windows and on WSL since Windows doesn't
61+
# This is required to build portBLAS on Windows and on WSL since Windows doesn't
6262
# have good support for long file names
63-
option(SYCLBLAS_USE_SHORT_NAMES "Whether to use short names for generated files" OFF)
63+
option(PORTBLAS_USE_SHORT_NAMES "Whether to use short names for generated files" OFF)
6464
if (WIN32)
6565
# On WIN32 we can force this option to be true, but when building on WSL this
6666
# must be set in the command line
67-
set(SYCLBLAS_USE_SHORT_NAMES ON CACHE BOOL "Enable short names for generated files in Windows" FORCE)
67+
set(PORTBLAS_USE_SHORT_NAMES ON CACHE BOOL "Enable short names for generated files in Windows" FORCE)
6868
endif()
6969

7070
# Setup datatypes, workgroup sizes and other options.
7171
# NB: This has to be included before CmakeFunctionHelper as it declares various options.
7272
if (NOT INSTALL_HEADER_ONLY)
73-
include(ConfigureSYCLBLAS)
73+
include(ConfigurePORTBLAS)
7474
include(SYCL)
7575
find_package(PythonInterp 3 REQUIRED)
7676
endif()
7777

7878
if (MSVC)
7979
# The device compiler needs C++14 to parse the Windows headers
8080
set(BUILD_SHARED_LIBS FALSE CACHE BOOL
81-
"Force SYCL-BLAS to be built as a static library on Windows"
81+
"Force portBLAS to be built as a static library on Windows"
8282
FORCE
8383
)
8484
endif()
@@ -91,12 +91,12 @@ option(GEMM_VECTORIZATION_SUPPORT "Whether to enable vectorization in Gemm kerne
9191
add_definitions(-DCL_TARGET_OPENCL_VERSION=220)
9292

9393
set(CBLAS_INCLUDE ${CMAKE_CURRENT_SOURCE_DIR}/external/cblas/include)
94-
set(SYCLBLAS_GENERATED_SRC ${CMAKE_CURRENT_BINARY_DIR}/generated_src)
95-
set(SYCLBLAS_INCLUDE $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
94+
set(PORTBLAS_GENERATED_SRC ${CMAKE_CURRENT_BINARY_DIR}/generated_src)
95+
set(PORTBLAS_INCLUDE $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
9696
$<INSTALL_INTERFACE:include>)
97-
set(SYCLBLAS_COMMON_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/common/include)
98-
set(SYCLBLAS_SRC ${CMAKE_CURRENT_SOURCE_DIR}/src)
99-
set(SYCLBLAS_SRC_GENERATOR ${CMAKE_CURRENT_SOURCE_DIR}/python_generator)
97+
set(PORTBLAS_COMMON_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/common/include)
98+
set(PORTBLAS_SRC ${CMAKE_CURRENT_SOURCE_DIR}/src)
99+
set(PORTBLAS_SRC_GENERATOR ${CMAKE_CURRENT_SOURCE_DIR}/python_generator)
100100
list(APPEND THIRD_PARTIES_INCLUDE ${CBLAS_INCLUDE})
101101

102102
if(IMGDNN_DIR)
@@ -105,7 +105,7 @@ if(IMGDNN_DIR)
105105
list(APPEND THIRD_PARTIES_INCLUDE ${IMGDNN_INCLUDE_DIRS})
106106
endif()
107107

108-
option(BLAS_ENABLE_EXTENSIONS "Whether to enable sycl-blas extensions" ON)
108+
option(BLAS_ENABLE_EXTENSIONS "Whether to enable portBLAS extensions" ON)
109109

110110
# CmakeFunctionHelper has to be included after any options that it depends on are declared.
111111
# These include:
@@ -118,91 +118,91 @@ option(BLAS_ENABLE_EXTENSIONS "Whether to enable sycl-blas extensions" ON)
118118
include(CmakeFunctionHelper)
119119

120120
if (INSTALL_HEADER_ONLY)
121-
add_library(sycl_blas INTERFACE)
122-
set_target_properties(sycl_blas PROPERTIES
123-
INTERFACE_INCLUDE_DIRECTORIES "${SYCLBLAS_INCLUDE};$<INSTALL_INTERFACE:src>"
121+
add_library(portblas INTERFACE)
122+
set_target_properties(portblas PROPERTIES
123+
INTERFACE_INCLUDE_DIRECTORIES "${PORTBLAS_INCLUDE};$<INSTALL_INTERFACE:src>"
124124
)
125125
else()
126126
add_subdirectory(src)
127-
build_library(sycl_blas ${BLAS_ENABLE_EXTENSIONS})
127+
build_library(portblas ${BLAS_ENABLE_EXTENSIONS})
128128
if (WIN32)
129129
# On Windows, all symbols must be resolved at link time for DLLs.
130-
# The sycl_blas target is just a collection of other objects so
130+
# The portblas target is just a collection of other objects so
131131
# the linked libraries are not going to be propagated to this target.
132132
# This requires manual linking against SYCL on Windows.
133133
if(is_computecpp)
134-
target_link_libraries(sycl_blas PUBLIC ComputeCpp::ComputeCpp)
134+
target_link_libraries(portblas PUBLIC ComputeCpp::ComputeCpp)
135135
elseif(is_dpcpp)
136-
target_link_libraries(sycl_blas PUBLIC DPCPP::DPCPP)
136+
target_link_libraries(portblas PUBLIC DPCPP::DPCPP)
137137
elseif(is_hipsycl)
138-
target_link_libraries(sycl_blas PUBLIC hipSYCL::hipSYCL-rt)
138+
target_link_libraries(portblas PUBLIC hipSYCL::hipSYCL-rt)
139139
endif()
140140
endif()
141141
if(is_computecpp)
142142
set(sycl_impl ComputeCpp::ComputeCpp)
143143
elseif(is_dpcpp)
144144
set(sycl_impl DPCPP::DPCPP)
145-
add_sycl_to_target(TARGET sycl_blas SOURCES)
145+
add_sycl_to_target(TARGET portblas SOURCES)
146146
elseif(is_hipsycl)
147147
set(sycl_impl hipSYCL::hipSYCL-rt)
148-
add_sycl_to_target(TARGET sycl_blas SOURCES)
148+
add_sycl_to_target(TARGET portblas SOURCES)
149149
endif()
150150
if(IMGDNN_DIR)
151-
target_link_libraries(sycl_blas PUBLIC IMGDNN::IMGDNN)
151+
target_link_libraries(portblas PUBLIC IMGDNN::IMGDNN)
152152
endif()
153-
set_target_properties(sycl_blas PROPERTIES
153+
set_target_properties(portblas PROPERTIES
154154
INTERFACE_LINK_LIBRARIES ${sycl_impl}
155-
INTERFACE_INCLUDE_DIRECTORIES "${SYCLBLAS_INCLUDE}"
155+
INTERFACE_INCLUDE_DIRECTORIES "${PORTBLAS_INCLUDE}"
156156
)
157-
set_target_properties(sycl_blas PROPERTIES
157+
set_target_properties(portblas PROPERTIES
158158
VERSION ${PROJECT_VERSION}
159159
)
160160
endif()
161161

162162
include(CMakePackageConfigHelpers)
163-
set(version_file "${CMAKE_CURRENT_BINARY_DIR}/cmake/sycl_blas-version.cmake")
163+
set(version_file "${CMAKE_CURRENT_BINARY_DIR}/cmake/portblas-version.cmake")
164164
write_basic_package_version_file(${version_file}
165165
VERSION ${PROJECT_VERSION}
166166
COMPATIBILITY AnyNewerVersion
167167
)
168168

169169
include(GNUInstallDirs)
170-
install(TARGETS sycl_blas
171-
EXPORT sycl_blas
170+
install(TARGETS portblas
171+
EXPORT portblas
172172
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
173173
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
174174
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
175175
)
176176

177-
install(DIRECTORY ${SYCLBLAS_INCLUDE}
177+
install(DIRECTORY ${PORTBLAS_INCLUDE}
178178
DESTINATION ${CMAKE_INSTALL_PREFIX}
179-
COMPONENT sycl_blas
179+
COMPONENT portblas
180180
FILES_MATCHING PATTERN "*.h"
181181
)
182182
if (INSTALL_HEADER_ONLY)
183-
install(DIRECTORY ${SYCLBLAS_SRC}
183+
install(DIRECTORY ${PORTBLAS_SRC}
184184
DESTINATION ${CMAKE_INSTALL_PREFIX}
185-
COMPONENT sycl_blas
185+
COMPONENT portblas
186186
FILES_MATCHING PATTERN "*.hpp"
187187
)
188188
endif()
189189

190190
install(FILES ${version_file} DESTINATION ${CMAKE_INSTALL_PREFIX})
191-
install(EXPORT sycl_blas
191+
install(EXPORT portblas
192192
DESTINATION ${CMAKE_INSTALL_PREFIX}
193-
NAMESPACE SYCL_BLAS::
194-
FILE sycl_blas-config.cmake
193+
NAMESPACE PORTBLAS::
194+
FILE portblas-config.cmake
195195
)
196196

197-
export(EXPORT sycl_blas
198-
NAMESPACE SYCL_BLAS::
199-
FILE sycl_blas-config.cmake
197+
export(EXPORT portblas
198+
NAMESPACE PORTBLAS::
199+
FILE portblas-config.cmake
200200
)
201201

202202
option(BLAS_ENABLE_TESTING "Whether to enable testing" ON)
203203
option(ENABLE_EXPRESSION_TESTS "Whether to build expression tree fusion tests" OFF)
204204
if (INSTALL_HEADER_ONLY AND BLAS_ENABLE_TESTING)
205-
message(STATUS "Tests are disabled when installing SYCL-BLAS in header only mode")
205+
message(STATUS "Tests are disabled when installing portBLAS in header only mode")
206206
set(BLAS_ENABLE_TESTING OFF)
207207
endif()
208208

@@ -219,13 +219,13 @@ option(BUILD_CLBLAS_BENCHMARKS "Whether to build clBLAS benchmarks" OFF)
219219
option(BUILD_CUBLAS_BENCHMARKS "Whether to build cuBLAS benchmarks" OFF)
220220
option(BUILD_ROCBLAS_BENCHMARKS "Whether to build rocBLAS benchmarks" OFF)
221221
option(BUILD_ACL_BENCHMARKS "Whether to build ARM Compute Library benchmarks" OFF)
222-
option(BLAS_BUILD_SAMPLES "Whether to build SYCL-BLAS samples" ON)
222+
option(BLAS_BUILD_SAMPLES "Whether to build portBLAS samples" ON)
223223
if (INSTALL_HEADER_ONLY AND BLAS_ENABLE_BENCHMARK)
224-
message(STATUS "Benchmarks are disabled when installing SYCL-BLAS in header only mode")
224+
message(STATUS "Benchmarks are disabled when installing portBLAS in header only mode")
225225
set(BLAS_ENABLE_BENCHMARK OFF)
226226
endif()
227227
if (INSTALL_HEADER_ONLY AND BLAS_BUILD_SAMPLES)
228-
message(STATUS "Samples are disabled when installing SYCL-BLAS in header only mode")
228+
message(STATUS "Samples are disabled when installing portBLAS in header only mode")
229229
set(BLAS_BUILD_SAMPLES OFF)
230230
endif()
231231

Dockerfile

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -39,23 +39,23 @@ RUN if [ "${c_compiler}" = 'gcc-7' ]; then apt-get install -yq \
3939
RUN apt-get install -yq --allow-downgrades --allow-remove-essential \
4040
--allow-change-held-packages ocl-icd-opencl-dev ocl-icd-dev opencl-headers
4141

42-
RUN git clone https://github.com/${git_slug}.git --recursive -b ${git_branch} /sycl-blas
42+
RUN git clone https://github.com/${git_slug}.git --recursive -b ${git_branch} /portBLAS
4343

4444
#OpenBLAS
45-
RUN bash /sycl-blas/.scripts/build_OpenBLAS.sh
45+
RUN bash /portBLAS/.scripts/build_OpenBLAS.sh
4646
# Intel OpenCL Runtime
47-
RUN bash /sycl-blas/.scripts/install_intel_opencl.sh
47+
RUN bash /portBLAS/.scripts/install_intel_opencl.sh
4848

4949
# SYCL
50-
RUN if [ "${impl}" = 'COMPUTECPP' ]; then cd /sycl-blas && bash /sycl-blas/.scripts/build_computecpp.sh; fi
51-
RUN if [ "${impl}" = 'DPCPP' ]; then cd /sycl-blas && bash /sycl-blas/.scripts/build_dpcpp.sh; fi
50+
RUN if [ "${impl}" = 'COMPUTECPP' ]; then cd /portBLAS && bash /portBLAS/.scripts/build_computecpp.sh; fi
51+
RUN if [ "${impl}" = 'DPCPP' ]; then cd /portBLAS && bash /portBLAS/.scripts/build_dpcpp.sh; fi
5252

5353
ENV COMMAND=${command}
5454
ENV CC=${c_compiler}
5555
ENV CXX=${cxx_compiler}
5656
ENV SYCL_IMPL=${impl}
5757

58-
CMD cd /sycl-blas && \
58+
CMD cd /portBLAS && \
5959
if [ "${COMMAND}" = 'build-test' ]; then \
6060
if [ "${SYCL_IMPL}" = 'COMPUTECPP' ]; then \
6161
/tmp/ComputeCpp-latest/bin/computecpp_info && \

NOTICE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
SYCL-BLAS
1+
portBLAS
22
Copyright (C) Codeplay Software Limited.

0 commit comments

Comments
 (0)