diff --git a/src/util.jl b/src/util.jl index b93daf54..d232defd 100644 --- a/src/util.jl +++ b/src/util.jl @@ -93,10 +93,10 @@ function versioninfo(io::IO=stdout) print(io, " ยท $(device.name)") # show a list of tags - tags = [] + tags = String[] ## memory back-ends let - svm_tags = [] + svm_tags = String[] svm_caps = cl.svm_capabilities(device) if svm_caps.coarse_grain_buffer push!(svm_tags, "c") @@ -107,7 +107,7 @@ function versioninfo(io::IO=stdout) push!(tags, "svm:"*join(svm_tags, "+")) end if cl.usm_supported(device) - usm_tags = [] + usm_tags = String[] usm_caps = cl.usm_capabilities(device) if usm_caps.host.access push!(usm_tags, "h") @@ -133,6 +133,16 @@ function versioninfo(io::IO=stdout) if in("cl_khr_il_program", device.extensions) push!(tags, "il") end + if cl.sub_groups_supported(device) + sg_tags = String[] + if in("cl_khr_subgroup_shuffle", device.extensions) + push!(sg_tags, "shfl") + end + # if in("cl_khr_subgroup_ballot", device.extensions) + # push!(sg_tags, "blt") + # end + push!(tags, "sg:"*join(sg_tags, "+")) + end ## render if !isempty(tags) print(io, " (", join(tags, ", "), ")")