Skip to content
This repository has been archived by the owner on Mar 21, 2024. It is now read-only.

Initial port to NV_IF_TARGET. #276

Closed
wants to merge 11 commits into from
Closed

Conversation

alliepiper
Copy link
Collaborator

@alliepiper alliepiper commented Mar 26, 2021

No description provided.

@alliepiper alliepiper self-assigned this Mar 26, 2021
@alliepiper alliepiper marked this pull request as draft March 26, 2021 20:22
@alliepiper alliepiper added the compiler: nvc++ Specific to the NVC++ compiler. label Mar 26, 2021
@alliepiper alliepiper added this to the 1.13.0 milestone Mar 26, 2021
@brycelelbach brycelelbach added the P0: must have Absolutely necessary. Critical issue, major blocker, etc. label Mar 29, 2021
@alliepiper alliepiper force-pushed the if_target branch 2 times, most recently from 893b341 to a4c5fe3 Compare April 12, 2021 20:56
@alliepiper alliepiper force-pushed the if_target branch 5 times, most recently from 49771d7 to 02f54b8 Compare April 22, 2021 19:06
@alliepiper alliepiper force-pushed the if_target branch 4 times, most recently from b0a9193 to 83003c9 Compare May 11, 2021 21:08
@alliepiper alliepiper force-pushed the if_target branch 3 times, most recently from 1a05faf to bcc0b2f Compare May 28, 2021 21:24
@alliepiper alliepiper modified the milestones: 1.13.0, 1.14.0 Jun 9, 2021
@alliepiper alliepiper force-pushed the if_target branch 2 times, most recently from 9316b71 to 3372af6 Compare July 1, 2021 14:28
@alliepiper alliepiper force-pushed the if_target branch 2 times, most recently from 4337a78 to 1e5d345 Compare July 13, 2021 21:56
@alliepiper alliepiper modified the milestones: 1.14.0, 1.15.0 Aug 17, 2021
@alliepiper alliepiper linked an issue Aug 17, 2021 that may be closed by this pull request
@alliepiper alliepiper modified the milestones: 1.15.0, 1.16.0 Oct 14, 2021
@alliepiper alliepiper force-pushed the if_target branch 3 times, most recently from 4539f3f to 2e41e30 Compare November 5, 2021 16:13
@alliepiper alliepiper force-pushed the if_target branch 2 times, most recently from 1a59daa to cc75c15 Compare November 30, 2021 18:43
nvc++ will stop defining __NVCOMPILER_CUDA_ARCH__ soon, removing the
ability to determine the PTX arch at compile time.

This updates agents and collective algorithms to no longer require the
PTX_ARCH template parameter, and changes the CUB_WARP_SIZE(PTX_ARCH), etc
helpers to not take an argument. The latter macros only mattered on
obsolete arches and have no effect on currently supported architectures.
This fixes the issue reported in NVIDIA#299. There's no
clear reason why this should use `RandomBits` unconditionally.
This can be used to restrict the number of kernel instantations until
`__CUDA_ARCH_LIST__` is available.
This check was being used to detect host vs. device code at compile-time,
which is no longer possible on all of our platforms.

Changed it to just detect RDC state and nothing else.

Some tests wouldn't compile with RDC enabled. Fixed them.
NVBug 2431416: If a kernel is only launched on the host (e.g. the launch is
ifdef'd out when !defined(__CUDA_ARCH__)), spurious unused parameter warnings
will be emitted from the __wrapper_device_stub_[kernel name] stub.

We regularly hit this due to per-architecture tunings, and there is no known
workaround that can be easily applied. We just disable unused parameter
warnings around the kernel definitions.
@alliepiper alliepiper modified the milestones: 1.16.0, 1.17.0 Feb 7, 2022
@alliepiper alliepiper removed this from the 1.17.0 milestone Apr 14, 2022
@alliepiper
Copy link
Collaborator Author

Closing, these changes will be merged in a series of smaller PRs.

@alliepiper alliepiper closed this May 5, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
compiler: nvc++ Specific to the NVC++ compiler. P0: must have Absolutely necessary. Critical issue, major blocker, etc.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Refactor Thrust/CUB dispatch mechanisms to not rely on __CUDA_ARCH__
2 participants