BLAKE3 Cryptographic Hashing Function Sees Experimental Vulkan Implementation

Written by Michael Larabel in Free Software on 29 April 2020 at 12:09 AM EDT. 14 Comments
FREE SOFTWARE
BLAKE3, the cryptographic hash function that advertises itself as being "much faster" than the likes of SHA1 and MD5 and its predecessor BLAKE2 while being more secure and highly parallelizable has seen an experimental implementation for GPU-based acceleration using the Vulkan API.

There has been a lot of interest in BLAKE3 since its introduction in January and building off the successes of BLAKE2. While its design is "highly parallelizable" for threads and SIMD implementations, to date it's been just implemented in Rust for the multi-threaded version and a reference C implementation. But a developer has begun exploring GPU-based BLAKE3 support with Vulkan.

There is an experimental pull request providing a Vulkan implementation. Developer Cesar Eduardo Barros noted, "The highly parallel structure of Blake3, and its use of 32-bit words, in theory make it suitable for being accelerated by a GPU. I wanted to see if the very high number of threads in a GPU would be enough to offset the extra overhead of sending the work to the GPU and getting the result back."

This Vulkan implementation is producing the same output as the CPU-only hasher while with Intel integrated graphics is showing mixed results between different BLAKE3 CPU-based configurations. Ultimately further work on the code is needed for achieving greater performance than the CPU-based hashing but will be interesting to see where it leads.

Those wondering about the current overall state of BLAKE3 can find the latest details and performance metrics on GitHub.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week