Skip to content

Fix GPUCodegen by re-inferring deleted methods#35655

Merged
vtjnash merged 1 commit intomasterfrom
vc/gpucompiler
May 5, 2020
Merged

Fix GPUCodegen by re-inferring deleted methods#35655
vtjnash merged 1 commit intomasterfrom
vc/gpucompiler

Conversation

@vchuravy
Copy link
Copy Markdown
Member

@vchuravy vchuravy commented Apr 30, 2020

Fixes #34993

In JIT compilation mode we delete the inferred method after emitting it. Normally AOT mode doesn't run concurrently with JIT mode, but GPUCodegen does concurrently and
we have stricter requirements since we need to collect all code reachable from the kernel.

This adds a second policy to jl_create_native in which upon encountering a deleted method we re-infer it as needed.

@vchuravy vchuravy added the gpu Affects running Julia on a GPU label Apr 30, 2020
@vchuravy vchuravy added this to the 1.5 milestone Apr 30, 2020
@vchuravy vchuravy requested review from maleadt and vtjnash April 30, 2020 02:30
@vchuravy vchuravy marked this pull request as ready for review April 30, 2020 17:20
Copy link
Copy Markdown
Member

@maleadt maleadt left a comment

Choose a reason for hiding this comment

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

With this, CUDAnative.jl codegen tests pass again.

@vtjnash vtjnash merged commit 2253843 into master May 5, 2020
@vtjnash vtjnash deleted the vc/gpucompiler branch May 5, 2020 15:41
maleadt added a commit to JuliaGPU/GPUCompiler.jl that referenced this pull request May 6, 2020
maleadt added a commit to JuliaGPU/GPUCompiler.jl that referenced this pull request May 6, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

gpu Affects running Julia on a GPU

Projects

None yet

Development

Successfully merging this pull request may close these issues.

jl_create_native generates bad code for *(Float16,Float16)

3 participants