Skip to content

Comments

Rename hipSYCL/Open SYCL target to AdaptiveCpp#21

Closed
ravil-mobile wants to merge 5 commits intomasterfrom
ravil/opensycl
Closed

Rename hipSYCL/Open SYCL target to AdaptiveCpp#21
ravil-mobile wants to merge 5 commits intomasterfrom
ravil/opensycl

Conversation

@ravil-mobile
Copy link
Contributor

No description provided.

@ravil-mobile
Copy link
Contributor Author

The pipeline failed because the CI-GPU image needs to be rebuilt. It cannot be currently done because the LRZ compute cloud is down

Copy link
Contributor

@davschneller davschneller left a comment

Choose a reason for hiding this comment

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

Thanks alot! I left a bunch of smaller comments regarding the build system etc. ... The main thing is maybe the naming, i.e. it is "Open SYCL", not "openSYCL". Cf. here: AdaptiveCpp/AdaptiveCpp#942 (comment)

DeviceMacros.h Outdated
#elif defined(DEVICE_HIPSYCL_LANG)
#error do not launch kernel with macros using hipsycl
#elif defined(DEVICE_OPENSYCL_LANG)
#error do not launch kernel with macros using opensycl
Copy link
Contributor

Choose a reason for hiding this comment

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

The official name is written with a space in between, see AdaptiveCpp/AdaptiveCpp#942 (comment) .

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Hi, I renamed OpenSYCL to Open SYCL in READMEs.

#elif defined(DEVICE_OPENSYCL_LANG)

It is C-macro. Spaces are not going to work here.



def get_full_target_name(arch):
data = get_config()
Copy link
Contributor

Choose a reason for hiding this comment

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

Right now, get_config is getting called twice—but the result is the same. While that shouldn't cause many problems (I hope)... Wouldn't it be better only load the config once and then re-use it?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I am calling this python script 3 times to get different outputs to stdout

# 1. to get Open SYCL include dit
execute_process(COMMAND "${Python3_EXECUTABLE}" ${CMAKE_CURRENT_LIST_DIR}/find-opensycl.py -i
                  OUTPUT_VARIABLE _OPENSYCL_INLCUDE_DIR)

# 2. to get the vendor name for the default device
execute_process(COMMAND "${Python3_EXECUTABLE}" ${CMAKE_CURRENT_LIST_DIR}/find-opensycl.py --vendor
                  OUTPUT_VARIABLE _OPENSYCL_VENDOR)

# 3. to get correct default target name    
execute_process(COMMAND "${Python3_EXECUTABLE}" ${CMAKE_CURRENT_LIST_DIR}/find-opensycl.py -t -a "${DEVICE_ARCH}"
                  OUTPUT_VARIABLE _OPENSYCL_FULL_TARGET_NAME)

I don't want to execute a python script once and get all these output in one go
because, in this case, I will have to parse the resultant string in CMake which is tedious and ugly.



def get_package_dir():
exe_name = which("syclcc")
Copy link
Contributor

Choose a reason for hiding this comment

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

Maybe make the package dir a CMake variable? Just in case the syclcc in PATH is not the one that is wanted (or some environment variable is supposed to supersede this name), or not given at all.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Hmmm. I would argue that the user is responsible for providing a correct syclcc. The executable is supposed to visible in the environment. Otherwise, nothing is going to get compiled.

* renamed `OpenSycl-config` to `OpenSYCLSettings`
@ravil-mobile ravil-mobile force-pushed the ravil/opensycl branch 3 times, most recently from 261385a to a6dab74 Compare April 3, 2023 16:07
@illuhad
Copy link

illuhad commented Apr 4, 2023

fyi, please see here: AdaptiveCpp/AdaptiveCpp#999

Hi @illuhad. Thank you and @davschneller for pointing it out. Yes, I paused this PR and I am waiting for your team to rename the project. I hope it will happen soon. As for me, both FreeSYCL and LibreSYCL sound good.

@davschneller davschneller changed the title renamed hipsycl to opensycl Rename hipSYCL/Open SYCL target to AdaptiveCpp Sep 20, 2023
@davschneller
Copy link
Contributor

Covered by #46 and #47

@davschneller davschneller deleted the ravil/opensycl branch April 25, 2025 22:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants