You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I think we should rely on MLDataDevices.jl for data movement functionality.
This would allow to reduce the codebase here and share functionality with the rest of the ecosystem.
Moreover, MLDataDevices has more functionalities implemented.
Unfortunately, the mapping among the two is not perfect, and the function get_device acquires a different meaning. This is a loose map between the two:
Flux
MLDataDevices
get_device(; [verbose])
gpu_device([device_id]; [force_gpu_usage])
get_device(backend::String, [idx])
cpu_device or gpu_device
gpu_backend!(backend::String)
gpu_backend!(backend::String)
supported_devices()
supported_gpu_backends()
X
get_device(x) -> dev::AbstractDevice
X
functional(x::AbstractDevice) or functional(::Type{<:AbstractDevice})
X
set_device!(T::Type{<:AbstractDevice}, dev_or_id)
X
loaded(x::AbstractDevice) or loaded(::Type{<:AbstractDevice})
X
default_device_rng(x::AbstractDevice)
We should be able to deprecate the old interface in favor of the new without a sudden breaking change.
The text was updated successfully, but these errors were encountered:
I think we should rely on MLDataDevices.jl for data movement functionality.
This would allow to reduce the codebase here and share functionality with the rest of the ecosystem.
Moreover, MLDataDevices has more functionalities implemented.
Unfortunately, the mapping among the two is not perfect, and the function
get_device
acquires a different meaning. This is a loose map between the two:get_device(; [verbose])
gpu_device([device_id]; [force_gpu_usage])
get_device(backend::String, [idx])
cpu_device
orgpu_device
gpu_backend!(backend::String)
gpu_backend!(backend::String)
supported_devices()
supported_gpu_backends()
get_device(x) -> dev::AbstractDevice
functional(x::AbstractDevice)
orfunctional(::Type{<:AbstractDevice})
set_device!(T::Type{<:AbstractDevice}, dev_or_id)
loaded(x::AbstractDevice)
orloaded(::Type{<:AbstractDevice})
default_device_rng(x::AbstractDevice)
We should be able to deprecate the old interface in favor of the new without a sudden breaking change.
The text was updated successfully, but these errors were encountered: