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

Makefile -gencode only embed ptx #9

Open
ptheywood opened this issue Mar 14, 2023 · 1 comment
Open

Makefile -gencode only embed ptx #9

ptheywood opened this issue Mar 14, 2023 · 1 comment
Labels
bug Something isn't working

Comments

@ptheywood
Copy link
Member

The CUDA Makefile throughout the many, many branches of this repository only embed SM_35 PTX, they do not compile for any "real" architectures.

NVCC_FLAGS= -gencode arch=compute_35,code=compute_35

This means they will always preform PTX JIT, even when running on an SM_35 device, resulting in wait time and potentially less useful error messages (I.e. if too much constant cache is requested, the error is just a ptx jit compilation failed).

Instead, IMO it should always requrest a real and virtual arch as a minimum:

e.g.

NVCC_FLAGS= -gencode arch=compute_35,code=sm_35 arch=compute_35,code=compute_35

or

NVCC_FLAGS= -gencode arch=compute_35,code=[sm_35,compute_35]

are some of the many ways this could be achieved.

NVCC docs

@Robadob Robadob added the bug Something isn't working label Mar 14, 2023
@Robadob
Copy link
Member

Robadob commented Mar 14, 2023

Same change probably useful for visual studio too, whereby sm_52, sm_52 is not working on sm_61.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants