Skip to content
/ RadX Public
forked from BenjaminXiang/RadX

🗡 GPU Radix Sort for Vulkan API 1.1 (Compute Shaders)

License

Notifications You must be signed in to change notification settings

swq0553/RadX

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RadX (VK-1.1.109)

You asked question, but how can be fast radix sort in NVIDIA Turing GPU's?

GPU sorting shaders dedication from vRt project. Optimized for modern GPU's and written on Vulkan API (GLSL).

What to be want to do

  • Optimized sorting for NVIDIA RTX GPU's (and, probably, Volta GPU's)
  • Remove outdated and bloated code
  • Add new experimental features without rendering backend
  • In future, add support for other possible architectures (Radeon VII, Navi, Ampere)
  • Add support for Intel UHD Graphics 630 (if we will have time)
  • CUDA Compute Cabability 7.5 Interporability

Preview results

  • In average can sort (up to, and more) 1 billion uint32_t elements per second (tested with RTX 2070, achievable in RTX 2070 Super)
  • Outperform parallel std::sort up to 40x faster (Intel Core i7-8700K)
  • Performance tested in Windows 10 (Insiders) and Visual Studio 2019
  • Can be built by GCC-8 in Linux systems (tested in Ubuntu 18.10)

Materials

About

🗡 GPU Radix Sort for Vulkan API 1.1 (Compute Shaders)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 83.2%
  • C 7.8%
  • C# 2.8%
  • Python 2.6%
  • Lua 2.4%
  • GLSL 1.0%
  • Other 0.2%