Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fill broken after KA integration #466

Closed
christiangnrd opened this issue Oct 18, 2024 · 2 comments · Fixed by #496
Closed

fill broken after KA integration #466

christiangnrd opened this issue Oct 18, 2024 · 2 comments · Fixed by #496

Comments

@christiangnrd
Copy link
Contributor

christiangnrd commented Oct 18, 2024

I don't know why it only shows up in the API validation tests as this test is broken on in regular tests for me.
Edit: --check-bounds=yes seems to hide the errors.

@testset "fill" begin
@testset "fill($T)" for T in [Int8, UInt8, Int16, UInt16, Int32, UInt32, Int64, UInt64,
                              Float16, Float32]

    b = rand(T)

    # Dims in tuple
    let A = Metal.fill(b, (10, 10, 10, 1000))
        B = fill(b, (10, 10, 10, 1000))
        @test Array(A) == B
    end
end
end

Result:

Test Summary:   | Pass  Fail  Total  Time
fill            |    2     8     10  3.0s
  fill(Int8)    |    1            1  0.2s
  fill(UInt8)   |    1            1  0.1s
  fill(Int16)   |          1      1  0.7s
  fill(UInt16)  |          1      1  0.3s
  fill(Int32)   |          1      1  0.1s
  fill(UInt32)  |          1      1  0.3s
  fill(Int64)   |          1      1  0.3s
  fill(UInt64)  |          1      1  0.3s
  fill(Float16) |          1      1  0.3s
  fill(Float32) |          1      1  0.3s
ERROR: Some tests did not pass: 2 passed, 8 failed, 0 errored, 0 broken.

[U]Int8 doesn't fail presumably because it's implemented with Metal instead of KA.

Version info:
macOS 15.0.1, Darwin 24.0.0

Toolchain:
- Julia: 1.11.1
- LLVM: 16.0.6

Julia packages: 
- Metal.jl: 1.4.0
- GPUArrays: 11.0.0
- GPUCompiler: 1.0.0
- KernelAbstractions: 0.9.28
- ObjectiveC: 3.1.0
- LLVM: 9.1.2
- LLVMDowngrader_jll: 0.3.0+1

1 device:
- Apple M2 Max (17.594 MiB allocated)
@christiangnrd
Copy link
Contributor Author

christiangnrd commented Oct 18, 2024

Maybe dup of #442?

@christiangnrd
Copy link
Contributor Author

A big enough Array will surface the error even with --check-bounds: https://buildkite.com/julialang/metal-dot-jl/builds/1380#0192a0ea-d20b-4760-8e2e-3886c6fc6fad

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant