Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SYCL kernels 2 #146

Open
wants to merge 10 commits into
base: master
Choose a base branch
from
Open

SYCL kernels 2 #146

wants to merge 10 commits into from

Conversation

ayarkhan
Copy link
Contributor

Use SYCL kernels in SLATE (generated by dpct tool) for a SYCL-OneMKL hardware.

@ayarkhan ayarkhan added the Draft label Nov 17, 2023
@ayarkhan
Copy link
Contributor Author

ayarkhan commented Nov 17, 2023

On sunspot, testing using 1 process, 8-threads, 1 GPU.
( cd ~/icl/slate/test/; env ZE_AFFINITY_MASK=0.0 OMP_NUM_THREADS=8 ./run_tests.py --quick --target d --origin s --timeout 300 --type s,d,c,z --check y --ref n )
Gives inconsistent results on different runs (different qsub allocations)

% 2023-11-16 21:31:31, 1 MPI ranks, CPU-only MPI, 8 OpenMP threads, 1 GPU devices per MPI rank
16 routines FAILED: gbmm, gemm, gemmA, gemmC, hemmC, herk, her2k, her2k, syr2k, syr2k, syrk, trsmA, heev, stedc, hegv, scale_row_col
% 2023-11-16 23:08:37, 1 MPI ranks, CPU-only MPI, 8 OpenMP threads, 1 GPU devices per MPI rank
12 routines FAILED: gbmm, gemmC, her2k, syrk, trmm, trsmA, gbtrs, heev, stedc, hegv, svd, scale_row_col

One unit test fails (test_norm, synorm_dev, fro (upper and lower)

1 unit tests FAILED: test_norm
synorm_dev( one, lower )                                    pass,  0.0752 sec
synorm_dev( fro, lower )                                    FAILED:
    error < 5*eps at unit_test/test_norm.cc:479
synorm_dev( one, upper )                                    pass,  0.0685 sec
synorm_dev( fro, upper )                                    FAILED:
    error < 5*eps at unit_test/test_norm.cc:479
synorm_offdiag( one )                                       pass,  0.0000 sec

@mgates3 mgates3 changed the title Sycl kernels 2 SYCL kernels 2 Feb 9, 2024
LDFLAGS += -fsycl -fsycl-unnamed-lambda # allow unnamed sycl lambda kernels
endif

endif
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In Makefiles, use spaces for if-else-endif blocks. Use tabs only for rules.

# If SYCL + OpenMP-offload-kernels, specify omp device type
CXXFLAGS += -fopenmp-targets=spir64
LDFLAGS += -fopenmp-targets=spir64
endif
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Spaces.

@mgates3 mgates3 mentioned this pull request Jun 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants