JuliaSIMD / JuliaSIMD/LoopVectorization.jl

impl missing for complex broadcast?

Offen
#550 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Julia
Sterne
789
Forks
73
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

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
x = zeros(T,n1)
y = rand(T,n1,n2)
for k2 ∈ 1:n2
@turbo x[:] .+= y[:,k2]
end
nothing
end

testturbo(Float32)
testturbo(Float64)
testturbo(Complex{Float32})
testturbo(Complex{Float64})
```

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Start by running the testturbo reproducer and compare the real-type and complex-type results. Trace the @turbo broadcast path used by x[:] .+= y[:,k2]. Done means the complex Float32 and Complex{Float64} cases work consistently with the real cases, with coverage for the reported examples.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
julia
Bereich
performance
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
42/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.