-
Notifications
You must be signed in to change notification settings - Fork 19
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
Feature/mac os install inst #3
Conversation
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.
LGTM in general, modulo the minor nitpicks, thank you very much for contributing this. I think the point about TBB not being required in macOS is a fairly interesting one, which warrants further investigation. It's definitely very curious as the dependency on TBB is still there for libc++ and libstdc++.
docs/gcc_macos.md
Outdated
|
||
3. Install [Intel TBB](https://github.com/oneapi-src/oneTBB): | ||
- At this time this is a pre-requisite for CPU-HIP (makefiles depend on it) |
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.
Could you please use HIP-CPU and not CPU-HIP here? Thank you.
executables as gcc-10 and g++-10 | ||
|
||
3. Install [Intel TBB](https://github.com/oneapi-src/oneTBB): |
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.
Perhaps we can separate the investigation into whether or not TBB is required on macOS into a separate issue? It's ideal to have as few dependencies as possible, but the wording here could confuse users into believing that libstdc++ no longer depends on TBB in general, which is not quite yet the case as far as I can tell.
@bjoo regarding the three problems, it would be lovely if you could create separate issues. The first two are known and benign (still require addressing, since they are noisy), the third had crept up in the CI actions and is most definitely a bother. I had (optimistically) assumed that it might be tied to the macOS VM used by GitHub and punted on looking into it, but since you're seeing it it's clearly more widespread. Thank you. Cheers! |
Requested CPU-HIP -> HIP-CPU Typo Correction. Thanks for the catch @AlexVlx
Hi,
Requested change made, thank you for the catch. Regarding the TBB,
I think that g++-10 may implement std::execution::par without actually
running in parallel the way it is built for Homebrew. Certainly on my Mac, there seems not much difference
between using std::execution::seq and std::execution::par in terms of wallclock
time. I show below the compile command, the testrun, and the shared library dependencies
of the test program.
```
$ g++-10 -std=c++17 ./testprog.cpp -O3 -o ./testprog
$ ./testprog
std::execution::seq
Elapsed time 394.102 ms
Elapsed time 391.906 ms
Elapsed time 391.217 ms
Elapsed time 387.615 ms
Elapsed time 391.228 ms
Elapsed time 391.113 ms
Elapsed time 390.188 ms
Elapsed time 389.842 ms
Elapsed time 389.571 ms
Elapsed time 389.009 ms
std::execution::par
Elapsed time 386.625 ms
Elapsed time 391.613 ms
Elapsed time 389.12 ms
Elapsed time 392.005 ms
Elapsed time 393.48 ms
Elapsed time 384.825 ms
Elapsed time 389.083 ms
Elapsed time 386.932 ms
Elapsed time 390.423 ms
Elapsed time 384.614 ms
$ otool -L ./testprog
./testprog:
/usr/local/opt/gcc/lib/gcc/10/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.28.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1281.100.1)
/usr/local/lib/gcc/10/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0)
```
I will investigate this further – it could be that we may need to modify
the basic standard Homebrew install, or build a libstdc++ with parallelism, and
I will modify this PR appropriately.
I will create issues for the other things. I realized that the half precision / memcpy of nontrivial types issue is known.
Noise is not too much of a problem, but it can inhibit ‘strict’ (-Wall -Werror) builds of some later packages,
Thanks very much for your efforts with this,
Best wishes and a Happy New Year to you!
Balint
Balint Joo, Oak Ridge Leadership Computing Facility,
Oak Ridge National Laboratory
P.O. Box 2008, 1 Bethel Valley Road, Oak Ridge, TN 37831, USA
email: joob AT ornl.gov. Tel: +1-757-912-0566 (cell, remote)
From: Alex Voicu <notifications@github.com>
Reply-To: ROCm-Developer-Tools/HIP-CPU <reply@reply.github.com>
Date: Friday, January 1, 2021 at 8:09 AM
To: ROCm-Developer-Tools/HIP-CPU <HIP-CPU@noreply.github.com>
Cc: Balint Joo <bjoo@jlab.org>, Author <author@noreply.github.com>
Subject: [EXTERNAL] Re: [ROCm-Developer-Tools/HIP-CPU] Feature/mac os install inst (#3)
Resent-From: <bjoo@jlab.org>
Resent-Date: Friday, January 1, 2021 at 8:08 AM
@AlexVlx requested changes on this pull request.
LGTM in general, modulo the minor nitpicks, thank you very much for contributing this. I think the point about TBB not being required in macOS is a fairly interesting one, which warrants further investigation. It's definitely very curious as the dependency on TBB is still there for libc++ and libstdc++.
________________________________
In docs/gcc_macos.md<https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_ROCm-2DDeveloper-2DTools_HIP-2DCPU_pull_3-23discussion-5Fr550766347&d=DwMCaQ&c=CJqEzB1piLOyyvZjb8YUQw&r=WG01dcOd8ZFLFFNkrpbj6A&m=r5E-BCkyQNqYr9ul6m5Jrb4ir0Zak6ppiivcygIEBmw&s=K6ps3spSXepP_x6_euI__2QMyyCiwopFgfRexI8VkHM&e=>:
+ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
+ ```
+ You may or may not get messages about needing to install the XCode command line
+ utilities if these are not yet installed. Follow the appropriate installation
+ instructions on the Homebrew site.
+
+2. Install [GNU G++][(https://gcc.gnu.org)
+ - Using Homebrew:
+ ```bash
+ brew install gcc@10
+ ```
+ - to avoid confusion with the system GCC (which is actually Clang), homebrew will name the
+ executables as gcc-10 and g++-10
+
+3. Install [Intel TBB](https://github.com/oneapi-src/oneTBB):
+ - At this time this is a pre-requisite for CPU-HIP (makefiles depend on it)
Could you please use HIP-CPU and not CPU-HIP here? Thank you.
________________________________
In docs/gcc_macos.md<https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_ROCm-2DDeveloper-2DTools_HIP-2DCPU_pull_3-23discussion-5Fr550767123&d=DwMCaQ&c=CJqEzB1piLOyyvZjb8YUQw&r=WG01dcOd8ZFLFFNkrpbj6A&m=r5E-BCkyQNqYr9ul6m5Jrb4ir0Zak6ppiivcygIEBmw&s=OKjmt3Bv4CXUbXgil8lCW9A9IQAiklWwtCKKC7OI4FA&e=>:
+ ```bash
+ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
+ ```
+ You may or may not get messages about needing to install the XCode command line
+ utilities if these are not yet installed. Follow the appropriate installation
+ instructions on the Homebrew site.
+
+2. Install [GNU G++][(https://gcc.gnu.org)
+ - Using Homebrew:
+ ```bash
+ brew install gcc@10
+ ```
+ - to avoid confusion with the system GCC (which is actually Clang), homebrew will name the
+ executables as gcc-10 and g++-10
+
+3. Install [Intel TBB](https://github.com/oneapi-src/oneTBB):
Perhaps we can separate the investigation into whether or not TBB is required on macOS into a separate issue? It's ideal to have as few dependencies as possible, but the wording here could confuse users into believing that libstdc++ no longer depends on TBB in general, which is not quite yet the case as far as I can tell.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub<https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_ROCm-2DDeveloper-2DTools_HIP-2DCPU_pull_3-23pullrequestreview-2D560586179&d=DwMCaQ&c=CJqEzB1piLOyyvZjb8YUQw&r=WG01dcOd8ZFLFFNkrpbj6A&m=r5E-BCkyQNqYr9ul6m5Jrb4ir0Zak6ppiivcygIEBmw&s=JhdFbnwQoYF4KuxN4cjMOh1Kf2Qr8HYD-IIOHUw6igU&e=>, or unsubscribe<https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_AAEPL2HLTIOG7A5ZZUTTQY3SXXCNXANCNFSM4VPVTOMQ&d=DwMCaQ&c=CJqEzB1piLOyyvZjb8YUQw&r=WG01dcOd8ZFLFFNkrpbj6A&m=r5E-BCkyQNqYr9ul6m5Jrb4ir0Zak6ppiivcygIEBmw&s=PQ9LNqroTab54Zyv_WscQdlHj4BEtbT0CStEyYxwGWM&e=>.
|
Thank you, Happy New Year to you too! |
Hi @AlexVlx<https://github.com/ROCm-Developer-Tools/HIP-CPU/commits?author=AlexVlx>,
Thanks for the merge. I have created 4 issues about these. (2 about the warnings #4 and #5; 1 about the hang #6, and a question/request #7)
With best wishes,
Balint
…--
Balint Joo, Oak Ridge Leadership Computing Facility,
Oak Ridge National Laboratory
P.O. Box 2008, 1 Bethel Valley Road, Oak Ridge, TN 37831, USA
email: joob AT ornl.gov. Tel: +1-757-912-0566 (cell, remote)
From: Alex Voicu <notifications@github.com>
Reply-To: ROCm-Developer-Tools/HIP-CPU <reply@reply.github.com>
Date: Friday, January 1, 2021 at 8:14 AM
To: ROCm-Developer-Tools/HIP-CPU <HIP-CPU@noreply.github.com>
Cc: Balint Joo <bjoo@jlab.org>, Mention <mention@noreply.github.com>
Subject: [EXTERNAL] Re: [ROCm-Developer-Tools/HIP-CPU] Feature/mac os install inst (#3)
Resent-From: <bjoo@jlab.org>
Resent-Date: Friday, January 1, 2021 at 8:14 AM
@bjoo<https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_bjoo&d=DwMCaQ&c=CJqEzB1piLOyyvZjb8YUQw&r=WG01dcOd8ZFLFFNkrpbj6A&m=4lHAHELSMxjA8TLk2MOAek8tukcJJYecMoz5lMb5F8c&s=hhCSoWZFkvHTp3U6Q9nRKQXkuqQL8MmeSP1KZwIypng&e=> regarding the three problems, it would be lovely if you could create separate issues. The first two are known and benign (still require addressing, since they are noisy), the third had crept up in the CI actions and is most definitely a bother. I had (optimistically) assumed that it might be tied to the macOS VM used by GitHub and punted on looking into it, but since you're seeing it it's clearly more widespread. Thank you. Cheers!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub<https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_ROCm-2DDeveloper-2DTools_HIP-2DCPU_pull_3-23issuecomment-2D753314794&d=DwMCaQ&c=CJqEzB1piLOyyvZjb8YUQw&r=WG01dcOd8ZFLFFNkrpbj6A&m=4lHAHELSMxjA8TLk2MOAek8tukcJJYecMoz5lMb5F8c&s=Ad2Wzv4RkyXuyTclPqqFjhC9dwZl_icU-8C5oylsQgU&e=>, or unsubscribe<https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_AAEPL2ERIG64DHMIZR62FMDSXXDBXANCNFSM4VPVTOMQ&d=DwMCaQ&c=CJqEzB1piLOyyvZjb8YUQw&r=WG01dcOd8ZFLFFNkrpbj6A&m=4lHAHELSMxjA8TLk2MOAek8tukcJJYecMoz5lMb5F8c&s=bPIYF3sxPZrEALarglMg7u0MCgRaZ4yUWEeo5ivsEqg&e=>.
|
Hi @AlexVlx
I had a go with some MacOS instructions using Homebrew for GCC-10, CMake, Git, and TBB.
This PR has an edited
gcc_macos.md
file which records my experiencesSome issues on my MacOS:
memcpy
to copy the half precision struct#pragma unroll
not being supported.legacy-async-memcpy
test appears to hang.Would you like me to raise these as concrete GitHub issues?
I am happy to contribute these instructions as a starting point for others, do you by chance have a 'develop' branch I can submit the PRs to rather than the
main
branch?With best wishes,
Balint