Skip to content
This repository has been archived by the owner on Nov 4, 2024. It is now read-only.
/ MLDataDevices.jl Public archive

Data Transfer Functionalities across Backends for Machine Learning Applications

License

Notifications You must be signed in to change notification settings

LuxDL/MLDataDevices.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MLDataDevices

Join the chat at https://julialang.zulipchat.com #machine-learning Latest Docs Stable Docs

CI Buildkite codecov Aqua QA

ColPrac: Contributor's Guide on Collaborative Practices for Community Packages SciML Code Style

Warning

Package has been moved to a subdirectory in Lux https://github.com/LuxDL/Lux.jl/tree/main/lib/

MLDataDevices.jl is a lightweight package defining rules for transferring data across devices. It is used in deep learning frameworks such as Lux.jl and Flux.jl.

Currently we provide support for the following backends:

  1. CPUDevice: for CPUs -- no additional packages required.
  2. CUDADevice: CUDA.jl for NVIDIA GPUs.
  3. AMDGPUDevice: AMDGPU.jl for AMD ROCM GPUs.
  4. MetalDevice: Metal.jl for Apple Metal GPUs. (Experimental)
  5. oneAPIDevice: oneAPI.jl for Intel GPUs. (Experimental)
  6. XLADevice: Reactant.jl for XLA Support. (Experimental)

Updating to v1.0

  • Package was renamed from LuxDeviceUtils.jl to MLDataDevices.jl.
  • Lux(***)Device has been renamed to (***)Device.
  • Lux(***)Adaptor objects have been removed. Use (***)Device objects instead.