LoopVectorization.jl
LoopVectorization.jl copied to clipboard
Macro(s) for vectorizing loops.
I am trying to understand a performance issue I am seeing in [DynamicExpressions.jl](https://github.com/SymbolicML/DynamicExpressions.jl) where using `@turbo` makes the evaluation kernels 4x faster, but makes the derivative kernels 10% _slower_. See...
Hi all, I am a very happy user of LoopVectorization and I am about to publish a paper for a method with an example implementation in Julia using LV. I...
Depending on how the index ranges are specified, there are a few cases in which I get unexpected errors. For example, I am getting errors on something like this: ```julia...
I've been using `FastBroadcast` and `@turbo` to speed up broadcasting operations in DataFrames. However, missing values are quite common when you work with a DataFrame, and `@turbo` throws an error...
LoopVectorization.check_args returns false for `OffsetArray{Bool, BitVector}`, but doesn't with the similar `OffsetArray{Bool, Vector{Bool}}` Code to reproduce the problem: ```julia using OffsetArrays using LoopVectorization OffsetArray(zeros(Bool, 10)) |> LoopVectorization.check_args OffsetArray(trues(10)) |> LoopVectorization.check_args...
See here for some background: https://github.com/JuliaSIMD/StrideArrays.jl/issues/62#issuecomment-1367775417 The idea is not to check whether a function has a `SIMD` implementation, but to scalarize in case we do not have one. ```julia...
Consider the following: ```julia using LoopVectorization, StrideArraysCore, BenchmarkTools randn_stridearray(size...) = StrideArray(randn(Float32, size...), static.(size)) y = randn_stridearray(64, 32, 256); x = randn_stridearray(64, 32, 256); b = randn_stridearray(32); function foo!(y, x, b)...
The code below works for real types and fails for complex types. Am I missing something or should this work? ``` using LoopVectorization function testturbo(T) @show T n1,n2 = 100,200...
Dear all, In **Julia v1.10**, the following function using `@turbo` from **LoopVectorization.jl** runs without error and returns `10`: ```julia using LoopVectorization a = ones(10) b = ones(11) @inline function dot(A::AbstractArray{T},...