JuliaSIMD / JuliaSIMD/LoopVectorization.jl
"Reduction not found." error with `ifelse`
- Lingua principale
- Julia
- Stelle
- 789
- Fork
- 73
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
```julia
julia> using LoopVectorization
julia> m = [1,2,3,4,5,6,7,8]
8-element Array{Int64,1}:
1
2
3
4
5
6
7
8
julia> s = -Inf
-Inf
julia> @avx for i in eachindex(m)
s = ifelse(m[i]>=s, m[i], s)
end
ERROR: LoadError: "Reduction not found."
Stacktrace:
[1] reduction_zero at C:\Users\89639\.julia\packages\LoopVectorization\O8WW6\src\modeling\costs.jl:469 [inlined]
[2] add_reduction_update_parent!(::Array{LoopVectorization.Operation,1}, ::Array{Symbol,1}, ::Array{Symbol,1}, ::LoopVectorization.LoopSet, ::LoopVectorization.Operation, ::LoopVectorization.Instruction, ::Int64, ::Int64) at C:\Users\89639\.julia\packages\LoopVectorization\O8WW6\src\parse\add_compute.jl:188
in expression starting at REPL[4]:1
```
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Direzione di ricerca
Reproduce the Julia REPL example with LoopVectorization and inspect the stack-trace locations in src/modeling/costs.jl and src/parse/add_compute.jl, especially reduction_zero and add_reduction_update_parent!. Done means the @avx loop using ifelse no longer raises "Reduction not found." and the behavior is covered by an appropriate regression test.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- julia
- Ambito
- performance, tooling
- Tipo di issue
- Bug
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 35/100