https://github.com/JuliaLang/julia
Revision bc2abbe81d465b32c509807fef98cf554115f6c2 authored by Tim Holy on 12 September 2020, 10:21:06 UTC, committed by Tim Holy on 29 September 2020, 12:37:56 UTC
This addresses longstanding performance problems with `reinterpret`
when `sizeof(eltype(a))` is an integer multiple of `sizeof(T)`.
By reshaping the array to have an extra "channel dimension,"
LLVM can unroll the inner loop thanks to static size information.
Conversely, this consumes the initial "channel dimension" if
`sizeof(T)` is an integer multiple of `sizeof(eltype(a))`.
1 parent 4f0145b
History
Tip revision: bc2abbe81d465b32c509807fef98cf554115f6c2 authored by Tim Holy on 12 September 2020, 10:21:06 UTC
Add `reinterpret(reshape, T, a)`
Tip revision: bc2abbe
File Mode Size
startup.jl -rw-r--r-- 162 bytes
write_base_cache.jl -rw-r--r-- 376 bytes

back to top