FastAI.jl icon indicating copy to clipboard operation
FastAI.jl copied to clipboard

Faster image pipelines

Open lorenzoh opened this issue 3 years ago • 0 comments

Some low-hanging fruit that FastAI.jl can pick to become faster here:

  • builtin presizing support
    • prototype at https://github.com/lorenzoh/DataBlockStorage.jl/
    • using JpegTurbo.jl's downsized loading so no storing to disk is needed (https://github.com/JuliaIO/JpegTurbo.jl/issues/15#issuecomment-1031548344)
  • use inplace operations
    • DataAugmentation.jl already supports inplace operations, FastAI.jl just needs to add a buffered encode! interface and use those paths
    • JpegTurbo.jl image loading could also be done inplace (https://github.com/JuliaIO/JpegTurbo.jl/issues/23)
    • the whole pipeline could become non-allocating
  • use MLUtils.jl (#196)
    • new DataLoader seems more stable and possibly a little faster
  • run projective transformations on GPU (https://github.com/lorenzoh/DataAugmentation.jl/issues/48)

lorenzoh avatar Jun 10 '22 19:06 lorenzoh