Skip to content

Commit

Permalink
Merge branch 'uxlfoundation:main' into dev_glob_update
Browse files Browse the repository at this point in the history
  • Loading branch information
KateBlueSky authored Jan 15, 2025
2 parents 4d3a83f + c5ccb9e commit 1fdeb52
Show file tree
Hide file tree
Showing 25 changed files with 1,046 additions and 67 deletions.
31 changes: 20 additions & 11 deletions .ci/env/editorconfig-checker.sh
Original file line number Diff line number Diff line change
Expand Up @@ -15,18 +15,27 @@
# limitations under the License.
#===============================================================================

VERSION=v3.0.3
NAME=ec-linux-amd64
ASSET=$NAME.tar.gz
VERSION=v3.1.2
UNPACKED=ec-linux-amd64
ASSET=$UNPACKED.tar.gz
CHECKSUMS=checksums.txt
BASE_LINK=https://github.com/editorconfig-checker/editorconfig-checker/releases/download/$VERSION

# Download
export SHA256="fc698b0bf5bca0d42e28dd59d72e25487a51f645ca242c5f74bae975369f16aa $ASSET"
wget https://github.com/editorconfig-checker/editorconfig-checker/releases/download/$VERSION/$ASSET
echo "${SHA256}" | sha256sum --check
# Download asset
wget $BASE_LINK/$ASSET

# Download checksum file
wget $BASE_LINK/$CHECKSUMS

# Verify checksum file
if ! grep -E "$ASSET$" $CHECKSUMS | sha256sum --check; then
echo "Checksum verification failed"
exit 1
fi

# Install
tar -xzf $ASSET
mv bin/$NAME /usr/local/bin/editorconfig-checker
mkdir $UNPACKED && tar -xzf "$ASSET" -C $UNPACKED
mv $UNPACKED/bin/$UNPACKED /usr/local/bin/editorconfig-checker

# Clean up the downloaded archive
rm $ASSET
# Clean up the downloaded files
rm -rf "$UNPACKED" "$ASSET" "$CHECKSUMS"
2 changes: 1 addition & 1 deletion .ecrc → .editorconfig-checker.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"Verbose": false,
"Debug": false,
"IgnoreDefaults": false,
"SpacesAftertabs": false,
"SpacesAfterTabs": false,
"NoColor": false,
"AllowedContentTypes": [],
"PassedFiles": [],
Expand Down
2 changes: 1 addition & 1 deletion .github/.licenserc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ header:
# Clang-format config
- '.clang-format'
# Editorconfig configs
- '.ecrc'
- '.editorconfig-checker.json'
- '.editorconfig'
# Samples READMEs and licenses:
- 'samples/daal/cpp/mpi/README.md'
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/nightly-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -70,12 +70,12 @@ jobs:
source /opt/intel/oneapi/setvars.sh
.ci/scripts/build.sh --compiler icx --optimizations avx2 --target onedal
- name: Archive build
uses: actions/upload-artifact@6f51ac03b9356f520e9adb1b1b7802705f340c2b # v4.5.0
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
with:
name: __release_lnx
path: ./__release_lnx
- name: Archive oneDAL environment
uses: actions/upload-artifact@6f51ac03b9356f520e9adb1b1b7802705f340c2b # v4.5.0
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
with:
name: oneDAL_env
path: .ci/env
Expand Down Expand Up @@ -131,17 +131,17 @@ jobs:
for /D %%s in (.\oneapi\*) do for /f "tokens=2 delims=[]" %%H in ('dir /al %%s\ ^| findstr /i /c:"latest"') do rmdir %%s\latest & mklink /D %%s\latest .\%%~nxH
tar -cvzf oneapi.tar.gz .\oneapi
- name: Archive build
uses: actions/upload-artifact@6f51ac03b9356f520e9adb1b1b7802705f340c2b # v4.5.0
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
with:
name: __release_win
path: .\__release_win_vc
- name: Archive Intel BaseKit
uses: actions/upload-artifact@6f51ac03b9356f520e9adb1b1b7802705f340c2b # v4.5.0
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
with:
name: intel_oneapi_basekit
path: .\oneapi.tar.gz
- name: Archive Intel OpenCL CPU runtime
uses: actions/upload-artifact@6f51ac03b9356f520e9adb1b1b7802705f340c2b # v4.5.0
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
with:
name: opencl_rt_installer
path: .\opencl_rt.msi
35 changes: 33 additions & 2 deletions INSTALL.md
Original file line number Diff line number Diff line change
Expand Up @@ -219,7 +219,7 @@ Then, install the necessary dependencies from the appropriate channels with `con
conda install -y \
-c https://software.repos.intel.com/python/conda/ `# Intel's repository` \
-c conda-forge `# for tools like 'make'` \
make python>=3.9 `# used by the build system` \
make "python>=3.9" `# used by the build system` \
dpcpp-cpp-rt dpcpp_linux-64 intel-sycl-rt `# Intel compiler packages` \
tbb tbb-devel `# required TBB packages` \
mkl mkl-devel mkl-static mkl-dpcpp mkl-devel-dpcpp `# required MKL packages` \
Expand All @@ -232,7 +232,7 @@ conda install -y \
conda install -y^
-c https://software.repos.intel.com/python/conda/^
-c conda-forge^
make dos2unix python>=3.9^
make dos2unix "python>=3.9"^
dpcpp-cpp-rt dpcpp_win-64 intel-sycl-rt^
tbb tbb-devel^
mkl mkl-devel mkl-static mkl-dpcpp mkl-devel-dpcpp^
Expand Down Expand Up @@ -268,3 +268,34 @@ set "CMAKE_PREFIX_PATH=%CONDA_PREFIX%\Library\lib\cmake;%CMAKE_PREFIX_PATH%"
```

After that, it should be possible to build oneDAL and run the examples using the ICX compiler and the oneMKL libraries as per the instructions.

For other setups in **Linux\***, such as building for platforms like `aarch64` that are not supported by Intel's toolkits or using non-default options offered by the Makefile, other software can be installed as follows:

* GCC compilers (option `COMPILER=gnu`):

```shell
conda install -y -c conda-forge \
gcc gxx c-compiler cxx-compiler
```

(no environment variables are needed for `COMPILER=gnu`)

* Reference (non-tuned) computational backends, and BLAS/LAPACK backends from OpenBLAS (both through option `BACKEND_CONFIG=ref`):

```shell
conda install -y -c conda-forge \
blas=*=*openblas* openblas
```

* Optionally, if one wishes to install the OpenMP variant of OpenBLAS instead of the pthreads one, or to use the ILP64 variant:
```shell
conda install -y -c conda-forge \
blas=*=*openblas* openblas-ilp64=*=*openmp*
```

Then set environment variables as needed:
```shell
export OPENBLASROOT=${CONDA_PREFIX}
```

(note that other variables such as `TBBROOT` and `CMAKE_PREFIX_PATH` are still required)
6 changes: 4 additions & 2 deletions cpp/oneapi/dal/array.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,7 @@ class array {
/// @param queue The SYCL* queue object.
/// @param count The number of elements of type :literal:`T` to allocate memory for.
/// @param alloc The kind of USM to be allocated.
/// @pre :expr:`count > 0`s
/// @pre :expr:`count > 0`
static array<T> zeros(sycl::queue& queue,
std::int64_t count,
const sycl::usm::alloc& alloc = sycl::usm::alloc::shared) {
Expand Down Expand Up @@ -256,6 +256,7 @@ class array {
/// @param data The pointer to externally-allocated memory block.
/// @param count The number of elements of type :literal:`Data` in the memory block.
/// @param deleter The object used to free :literal:`Data`.
/// @param dependencies Events that indicate when :literal:`Data` becomes ready to be read or written.
template <typename Deleter>
explicit array(const sycl::queue& queue,
T* data,
Expand Down Expand Up @@ -337,7 +338,7 @@ class array {
/// @param queue The SYCL* queue object.
/// @param data The shared pointer to externally-allocated memory block.
/// @param count The number of elements of type :literal:`Data` in the memory block.
/// @param dependencies Events that indicate when :literal:`Data` becomes ready to be read or written
/// @param dependencies Events that indicate when :literal:`Data` becomes ready to be read or written.
explicit array(const sycl::queue& queue,
const std::shared_ptr<T>& data,
std::int64_t count,
Expand Down Expand Up @@ -592,6 +593,7 @@ class array {
/// @tparam ConstDeleter The type of a deleter used to free.
/// The deleter implements `void operator()(const Data*)`` member function.
///
/// @param queue The SYCL* queue object.
/// @param data The immutable memory block pointer to be assigned inside the array
/// @param count The number of elements of type :literal:`Data` into the block
/// @param deleter The object used to free :literal:`Data`.
Expand Down
Loading

0 comments on commit 1fdeb52

Please sign in to comment.