Skip to content

Commit 21997f1

Browse files
authored
Merge pull request #539 from JuliaParallel/jps/datadeps-gpu-fixes
Minor fixes to Datadeps for GPUs
2 parents 6b10054 + 7aa0dc5 commit 21997f1

File tree

2 files changed

+7
-1
lines changed

2 files changed

+7
-1
lines changed

src/array/cholesky.jl

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ LinearAlgebra.cholcopy(A::DArray{T,2}) where T = copy(A)
22
function potrf_checked!(uplo, A, info_arr)
33
_A, info = move(thunk_processor(), LAPACK.potrf!)(uplo, A)
44
if info != 0
5-
info_arr[1] = info
5+
fill!(info_arr, info)
66
throw(PosDefException(info))
77
end
88
return _A, info

src/datadeps.jl

+6
Original file line numberDiff line numberDiff line change
@@ -450,7 +450,13 @@ function distribute_tasks!(queue::DataDepsTaskQueue)
450450
filter!(proc->!isa(constrain(ExactScope(proc), scope),
451451
InvalidScope),
452452
all_procs)
453+
if isempty(all_procs)
454+
throw(Sch.SchedulingException("No processors available, try widening scope"))
455+
end
453456
exec_spaces = unique(vcat(map(proc->collect(memory_spaces(proc)), all_procs)...))
457+
if !all(space->space isa CPURAMMemorySpace, exec_spaces) && !all(space->root_worker_id(space) == myid(), exec_spaces)
458+
@warn "Datadeps support for multi-GPU, multi-worker is currently broken\nPlease be prepared for incorrect results or errors" maxlog=1
459+
end
454460

455461
# Round-robin assign tasks to processors
456462
upper_queue = get_options(:task_queue)

0 commit comments

Comments
 (0)