Skip to content

using CPU as default for Scratchpad and SharedMemory

Churavy, Valentin requested to merge github/fork/leios/cpu_fixes into master

Created by: leios

I have been getting this error ever since #288

[ Info: Precompiling KernelAbstractions [63c18a36-062a-441e-b654-da1e3ab1ce7c]
WARNING: Method definition SharedMemory(Type{T}, Base.Val{Dims}, Base.Val{x} where x) where {T, Dims} in module KernelAbstractions at /home/leios/projects/KernelAbstractions.jl/src/KernelAbstractions.jl:464 overwritten at /home/leios/projects/KernelAbstractions.jl/src/cpu.jl:204.
  ** incremental compilation may be fatally broken for this module **

WARNING: Method definition Scratchpad(Any, Type{T}, Base.Val{Dims}) where {T, Dims} in module KernelAbstractions at /home/leios/projects/KernelAbstractions.jl/src/KernelAbstractions.jl:460 overwritten at /home/leios/projects/KernelAbstractions.jl/src/cpu.jl:218.
  ** incremental compilation may be fatally broken for this module **

I think it's because there used to be an overdub for ScratchPad and SharedMemory on the CPU with a default to an error message in KernelAbstractions, but now we are using @device_override and using the CPU versions as defaults.

This PR just moves the stuff in cpu.jl to KernelAbstractions.jl. There might be a better solution, so it's up to you what you want to do.

Merge request reports

Loading