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

tests failing locally, related to ComputationalResources ? #182

Closed
goretkin opened this issue Sep 8, 2020 · 1 comment · Fixed by #187
Closed

tests failing locally, related to ComputationalResources ? #182

goretkin opened this issue Sep 8, 2020 · 1 comment · Fixed by #187

Comments

@goretkin
Copy link
Contributor

goretkin commented Sep 8, 2020

I am testing this package locally, on Julia 1.5, and I am getting a test failure on the following test:

@test_throws DimensionMismatch imfilter(A, kern, Fill(0, (0,1)))

because what actually gets thrown is a TaskFailedException. Full information is below.

I imagine there might be something different in my configuration that makes it use Tasks, and that it's not being used in CI? Whatever the case may be, it would be nice to get the tests to pass locally.

import ImageFiltering: imfilter, Kernel, Fill

A = ones(8, 8);
kern = Kernel.gaussian((1,1),(3,3));
imfilter(A, kern, Fill(0, (0,1)))
ERROR: TaskFailedException:
DimensionMismatch("requested indices (1:8, 0:9) and kernel indices (-1:1, 0:0) do not agree with indices of padded input, (1:8, 0:9)")
Stacktrace:
 [1] imfilter!(::ComputationalResources.CPU1{ImageFiltering.Algorithm.FIRTiled{2}}, ::TiledIteration.TileBuffer{Float64,2,2}, ::OffsetArrays.OffsetArray{Float64,2,Array{Float64,2}}, ::OffsetArrays.OffsetArray{Float64,2,Array{Float64,2}}, ::ImageFiltering.NoPad{Fill{Int64,2}}, ::Tuple{UnitRange{Int64},UnitRange{Int64}}) at /private/tmp/dev/ImageFiltering/src/imfilter.jl:980
 [2] macro expansion at /private/tmp/dev/ImageFiltering/src/imfilter.jl:867 [inlined]
 [3] (::ImageFiltering.var"#88#threadsfor_fun#41"{ComputationalResources.CPU1{ImageFiltering.Algorithm.FIRTiled{2}},Array{Float64,2},OffsetArrays.OffsetArray{Float64,2,Array{Float64,2}},OffsetArrays.OffsetArray{Float64,2,Array{Float64,2}},OffsetArrays.OffsetArray{Float64,2,Array{Float64,2}},ImageFiltering.NoPad{Fill{Int64,2}},Array{Tuple{UnitRange{Int64},UnitRange{Int64}},1},Array{Array{Float64,2},1},UnitRange{Int64}})(::Bool) at ./threadingconstructs.jl:81
 [4] (::ImageFiltering.var"#88#threadsfor_fun#41"{ComputationalResources.CPU1{ImageFiltering.Algorithm.FIRTiled{2}},Array{Float64,2},OffsetArrays.OffsetArray{Float64,2,Array{Float64,2}},OffsetArrays.OffsetArray{Float64,2,Array{Float64,2}},OffsetArrays.OffsetArray{Float64,2,Array{Float64,2}},ImageFiltering.NoPad{Fill{Int64,2}},Array{Tuple{UnitRange{Int64},UnitRange{Int64}},1},Array{Array{Float64,2},1},UnitRange{Int64}})() at ./threadingconstructs.jl:48
Stacktrace:
 [1] wait at ./task.jl:267 [inlined]
 [2] threading_run(::Function) at ./threadingconstructs.jl:34
 [3] macro expansion at ./threadingconstructs.jl:93 [inlined]
 [4] _imfilter_tiled_threads!(::ComputationalResources.CPU1{ImageFiltering.Algorithm.FIRTiled{2}}, ::Array{Float64,2}, ::OffsetArrays.OffsetArray{Float64,2,Array{Float64,2}}, ::OffsetArrays.OffsetArray{Float64,2,Array{Float64,2}}, ::OffsetArrays.OffsetArray{Float64,2,Array{Float64,2}}, ::ImageFiltering.NoPad{Fill{Int64,2}}, ::Array{Tuple{UnitRange{Int64},UnitRange{Int64}},1}, ::Array{Array{Float64,2},1}) at /private/tmp/dev/ImageFiltering/src/imfilter.jl:863
 [5] _imfilter_tiled!(::ComputationalResources.CPUThreads{ImageFiltering.Algorithm.FIRTiled{2}}, ::Array{Float64,2}, ::OffsetArrays.OffsetArray{Float64,2,Array{Float64,2}}, ::Tuple{OffsetArrays.OffsetArray{Float64,2,Array{Float64,2}},OffsetArrays.OffsetArray{Float64,2,Array{Float64,2}}}, ::ImageFiltering.NoPad{Fill{Int64,2}}, ::Array{Array{Float64,2},1}, ::Tuple{Base.OneTo{Int64},Base.OneTo{Int64}}) at /private/tmp/dev/ImageFiltering/src/imfilter.jl:859
 [6] imfilter!(::ComputationalResources.CPUThreads{ImageFiltering.Algorithm.FIRTiled{2}}, ::Array{Float64,2}, ::OffsetArrays.OffsetArray{Float64,2,Array{Float64,2}}, ::Tuple{OffsetArrays.OffsetArray{Float64,2,Array{Float64,2}},OffsetArrays.OffsetArray{Float64,2,Array{Float64,2}}}, ::ImageFiltering.NoPad{Fill{Int64,2}}, ::Tuple{Base.OneTo{Int64},Base.OneTo{Int64}}) at /private/tmp/dev/ImageFiltering/src/imfilter.jl:778
 [7] imfilter! at /private/tmp/dev/ImageFiltering/src/imfilter.jl:775 [inlined]
 [8] imfilter! at /private/tmp/dev/ImageFiltering/src/imfilter.jl:716 [inlined]
 [9] imfilter!(::Array{Float64,2}, ::Array{Float64,2}, ::Tuple{OffsetArrays.OffsetArray{Float64,2,Array{Float64,2}},OffsetArrays.OffsetArray{Float64,2,Array{Float64,2}}}, ::Fill{Int64,2}, ::ImageFiltering.Algorithm.FIRTiled{2}) at /private/tmp/dev/ImageFiltering/src/imfilter.jl:612
 [10] imfilter! at /private/tmp/dev/ImageFiltering/src/imfilter.jl:606 [inlined]
 [11] imfilter at /private/tmp/dev/ImageFiltering/src/imfilter.jl:27 [inlined]
 [12] imfilter at /private/tmp/dev/ImageFiltering/src/imfilter.jl:10 [inlined]
 [13] imfilter(::Array{Float64,2}, ::OffsetArrays.OffsetArray{Float64,2,Array{Float64,2}}, ::Fill{Int64,2}) at /private/tmp/dev/ImageFiltering/src/imfilter.jl:5
 [14] top-level scope at none:1
@goretkin
Copy link
Contributor Author

goretkin commented Sep 8, 2020

I am also getting a test failure at

@test length(tiles) == 1

  Expression: length(tiles) == 1
   Evaluated: 4 == 1

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