|
1 | 1 | unsafe_free!(::AbstractArray) = return |
2 | 2 | synchronize(::CPU) = nothing |
3 | 3 |
|
4 | | -allocate(::CPU, ::Type{T}, dims::Tuple) where {T} = Array{T}(undef, dims) |
| 4 | +allocate(::CPU, ::Type{T}, dims::Tuple; unified::Bool=false) where {T} = Array{T}(undef, dims) |
5 | 5 |
|
6 | | -function zeros(backend::CPU, ::Type{T}, dims::Tuple) where {T} |
7 | | - arr = allocate(backend, T, dims) |
| 6 | +function zeros(backend::CPU, ::Type{T}, dims::Tuple; kwargs...) where {T} |
| 7 | + arr = allocate(backend, T, dims; kwargs...) |
8 | 8 | kernel = init_kernel(backend) |
9 | 9 | kernel(arr, zero, T, ndrange = length(arr)) |
10 | 10 | return arr |
11 | 11 | end |
12 | | -function ones(backend::CPU, ::Type{T}, dims::Tuple) where {T} |
13 | | - arr = allocate(backend, T, dims) |
| 12 | +function ones(backend::CPU, ::Type{T}, dims::Tuple; kwargs...) where {T} |
| 13 | + arr = allocate(backend, T, dims; kwargs...) |
14 | 14 | kernel = init_kernel(backend) |
15 | 15 | kernel(arr, one, T; ndrange = length(arr)) |
16 | 16 | return arr |
|
34 | 34 |
|
35 | 35 | functional(::CPU) = true |
36 | 36 | pagelock!(::CPU, x) = nothing |
| 37 | +supports_unified(::CPU) = true |
37 | 38 |
|
38 | 39 | function (obj::Kernel{CPU})(args...; ndrange = nothing, workgroupsize = nothing) |
39 | 40 | ndrange, workgroupsize, iterspace, dynamic = launch_config(obj, ndrange, workgroupsize) |
|
0 commit comments