Skip to content

Commit

Permalink
returns incorrect results on m1...
Browse files Browse the repository at this point in the history
  • Loading branch information
chriselrod committed Jun 26, 2024
1 parent b413ba8 commit 8ab7465
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 7 deletions.
2 changes: 1 addition & 1 deletion test/gemm.jl
Original file line number Diff line number Diff line change
Expand Up @@ -421,7 +421,7 @@
if LoopVectorization.cache_linesize() == LoopVectorization.register_size()
@test LoopVectorization.choose_order(lsr2amb) == ([:n, :m, :k], :m, :n, :m, 3, 7)
else
@test LoopVectorization.choose_order(lsr2amb) == ([:m, :n, :k], :m, :n, :m, 3, 7)
@test LoopVectorization.choose_order(lsr2amb) == ([:n, :m, :k], :m, :n, :m, 3, 7)
end
elseif LoopVectorization.register_count() == 16
if LoopVectorization.pick_vector_width(Float64) == 4
Expand Down
18 changes: 14 additions & 4 deletions test/miscellaneous.jl
Original file line number Diff line number Diff line change
Expand Up @@ -137,8 +137,13 @@ end
# # @test LoopVectorization.choose_order(lscolsum) == (Symbol[:j,:i], :j, :i, :j, Unum, Tnum)
# @test LoopVectorization.choose_order(lscolsum) == (Symbol[:j,:i], :j, :i, :j, 1, 1)
# end
@test LoopVectorization.choose_order(lscolsum) ==
(Symbol[:j, :i], :j, Symbol("##undefined##"), :j, 4, -1)
if Sys.ARCH === :aarch64
@test LoopVectorization.choose_order(lscolsum) ==
(Symbol[:j, :i], :j, Symbol("##undefined##"), :j, 8, -1)
else
@test LoopVectorization.choose_order(lscolsum) ==
(Symbol[:j, :i], :j, Symbol("##undefined##"), :j, 4, -1)
end
# my colsum is wrong (by 0.25), but slightly more interesting
function mycolsum!(x, A)
@. x = 0
Expand Down Expand Up @@ -177,8 +182,13 @@ end
# LoopVectorization.choose_order(lsvar)
# @test LoopVectorization.choose_order(lsvar) == (Symbol[:j,:i], :j, :i, :j, Unum, Tnum)
# if LoopVectorization.register_count() == 32
@test LoopVectorization.choose_order(lsvar) ==
(Symbol[:j, :i], :j, Symbol("##undefined##"), :j, 4, -1)
if Sys.ARCH === :aarch64
@test LoopVectorization.choose_order(lsvar) ==
(Symbol[:j, :i], :j, Symbol("##undefined##"), :j, 8, -1)
else
@test LoopVectorization.choose_order(lsvar) ==
(Symbol[:j, :i], :j, Symbol("##undefined##"), :j, 4, -1)
end
# @test LoopVectorization.choose_order(lsvar) == (Symbol[:j,:i], :j, :i, :j, 2, 10)
# else#if LoopVectorization.register_count() == 16
# @test LoopVectorization.choose_order(lsvar) == (Symbol[:j,:i], :j, Symbol("##undefined##"), :j, 8, -1)
Expand Down
10 changes: 8 additions & 2 deletions test/special.jl
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,14 @@
end
)
lsvexp = LoopVectorization.loopset(vexpq)
@test LoopVectorization.choose_order(lsvexp) ==
(Symbol[:i], :i, Symbol("##undefined##"), :i, 2, -1)
if Sys.ARCH === :aarch64
# returned `4` on an M1...
@test LoopVectorization.choose_order(lsvexp) ==
(Symbol[:i], :i, Symbol("##undefined##"), :i, 4, -1)
else
@test LoopVectorization.choose_order(lsvexp) ==
(Symbol[:i], :i, Symbol("##undefined##"), :i, 2, -1)
end

function myvexp!(b, a)
@inbounds for i eachindex(a)
Expand Down

0 comments on commit 8ab7465

Please sign in to comment.