-
-
Notifications
You must be signed in to change notification settings - Fork 12.8k
pocl 3.0 (new formula) #103141
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
pocl 3.0 (new formula) #103141
Conversation
c9c36b7
to
b132ca0
Compare
Added both loader options: Also can discuss other details on how we want to distribute OpenCL on Linux. I am thinking that we can just leave the OpenCL runtime installation to user rather than requiring a dependency, but this means the dependents won't work out-of-the-box. However, it allows users to pick a hardware-specific runtime rather than having to install a common denominator like
|
Just so I understand the plan, I think we can provide both @cho-m do you consider this blocked by the LLVM 14 upgrade or do you think we can ship these as-is? We have quite a few OpenCL formulae to fix on Linux I'd like to get this out soon. |
This won't fix ephemeral Apple Silicon as formulae need to directly link to Apple's OpenCL Framework. Based on information in PoCL, the Framework doesn't work with 3rd party ICD loaders http://portablecl.org/docs/html/using.html#using-pocl-on-macosx Mainly looking for feedback for now before finalizing on approach so we don't have to backtrack/fixup later. On Linux, some formulae may link to PoCL 3.0 is now out which supports LLVM 14, so I'll use that in next run. |
That's good to know. Hopefully Khronos or someone else will develop an OSS OpenCL wrapper for Metal similar to MoltenGL for OpenGL (though that is not OSS right now).
It sounds like making an ICD loader a hard dependency is the way to go then. Let's use |
I think new PoCL 3.0 doesn't build with
|
In that case I guess the decision has been made for us. I think we should still package Aside from rebasing/updating, is everything else ready to go for the formulae themselves? If so I think we should be able to publish after another CI run. |
Still need to write tests for I've split off There is a minor question on whether |
I think this PR may need to be merged before #104619 if we want to make |
I don't think this is possible as it makes them depend on each other. At best, we can add |
Okay that makes sense, I didn't notice the build dependency. I think it's fine to add |
5aa316b
to
7fc3162
Compare
Split out Will drop commits from this PR. |
It looks like the |
Current failure is due to RPATH for libraries inside ❯ poclcc -l
LIST OF DEVICES:
0:
Vendor: ARM
Name: pthread
Version: OpenCL 3.0 PoCL HSTR: pthread-arm64-apple-macosx12.0.0-cyclone However, fixing that leads to test failure from trying to use SSE2 rather than Cyclone:
|
Looks like new error is due to May need to check if this needs EDIT: Need to check further, but I don't think we need |
Also may need to check if LLVM Cellar will cause any issues:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great job digging into the symlinking issue and fixing the build on ARM. I think this is ready to go!
brew install --build-from-source <formula>
, where<formula>
is the name of the formula you're submitting?brew test <formula>
, where<formula>
is the name of the formula you're submitting?brew audit --strict <formula>
(after doingbrew install --build-from-source <formula>
)? If this is a new formula, does it passbrew audit --new <formula>
?Experimenting with OpenCL formulae on Linux.