ssimulacra2-cuda

Crates.iossimulacra2-cuda
lib.rsssimulacra2-cuda
version0.1.0
sourcesrc
created_at2024-10-12 13:07:34.647204
updated_at2024-10-12 13:07:34.647204
descriptionSsimulacra2 implementation running on CUDA
homepagehttps://github.com/Gui-Yom/turbo-metrics
repositoryhttps://github.com/Gui-Yom/turbo-metrics
max_upload_size
id1406487
size89,658
(Gui-Yom)

documentation

README

ssimulacra2-cuda

An implementation of ssimulacra2 using CUDA.

Features

  • Close to the original implementation, and with close results.
  • Leverages many custom kernels written in Rust and a few CUDA NPP primitives.
  • Uses CUDA graphs to alleviate the cost of launching the 200+ kernels per image pair.

TODO

  • Investigate if it is possible to change some computations to accelerate processing without deviating from the original implementation too much. Maybe making it configurable.
  • More custom kernels, is it possible to run the whole computation in a single fused kernel launch ?
  • Use less memory (currently 500MB for 1080p), might be possible by using a single fused kernel.

Credits

Original reference implementation : https://github.com/cloudinary/ssimulacra2

With inspiration from : https://github.com/rust-av/ssimulacra2

Commit count: 75

cargo fmt