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

gradient buffer not declared in mnist test #153

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

bendat78
Copy link

the gradientbuffer is commented out and then never used in training. Throws a compilation error when testing.

the gradientbuffer is commented out and then never used in training. Throws a compilation error when testing.
@chriselrod
Copy link
Contributor

Throws a compilation error when testing.

What version are you using?

julia> @time SimpleChains.train_batched!(
           p,
           lenetloss,
           xtrain4,
           SimpleChains.ADAM(3e-4),
           10
         )
  5.798421 seconds (2.23 M allocations: 142.881 MiB, 1.38% gc time, 36.31% compilation time)
44426-element StrideArray{Float32, 1, (1,), Tuple{Int64}, Tuple{Nothing}, Tuple{Static.StaticInt{1}}, Vector{Float32}}:
 -0.08823633
  0.10486636
  0.2803934
 -0.18992418
 -0.28120536
 -0.15369925
  0.09791076
 -0.024629174
  0.36833355
 -0.1904188
 -0.077544756
  0.24522759
 -0.22895455
 -0.18702294
  
 -0.3233441
 -0.4580964
 -0.12954155
  0.11518178
  0.008558591
  0.00065564807
 -0.015164471
 -0.005364319
 -0.02529709
  0.038416866
 -0.020364538
  0.017151155
 -0.024268592
  0.019850327

julia> if VERSION >= v"1.10"
           @test_opt SimpleChains.train_batched!(
             p,
             lenetloss,
             xtrain4,
             SimpleChains.ADAM(3e-4),
             10
           )
         end
Test Passed

(@simplechainsm) pkg> st -m SimpleChains
Status `~/.julia/environments/simplechainsm/Manifest.toml`
  [de6bee2f] SimpleChains v0.4.6

You can check that tests pass on the main branch.

@bendat78
Copy link
Author

So maybe more complicated than I thought ;) I am using an AMD CPU, could that be the cause?

Output for the patched version of simplechains:

(@v1.9) pkg> dev SimpleChains
Cloning git-repo https://github.com/PumasAI/SimpleChains.jl
Resolving package versions...
Updating ~/.julia/environments/v1.9/Project.toml
[de6bee2f] ~ SimpleChains v0.4.6 https://github.com/PumasAI/SimpleChains.jl#main ⇒ v0.4.6 ~/.julia/dev/SimpleChains
Updating ~/.julia/environments/v1.9/Manifest.toml
[de6bee2f] ~ SimpleChains v0.4.6 https://github.com/PumasAI/SimpleChains.jl#main ⇒ v0.4.6 ~/.julia/dev/SimpleChains

julia> import SimpleChains

(@v1.9) pkg> test SimpleChains
Testing SimpleChains
Status /tmp/jl_7cJ00C/Project.toml
[4c88cf16] Aqua v0.7.0
[082447d4] ChainRules v1.53.0
[f6369f11] ForwardDiff v0.10.36
[c3a54625] JET v0.8.12
[eb30cadb] MLDatasets v0.7.12
[de6bee2f] SimpleChains v0.4.6 ~/.julia/dev/SimpleChains
[90137ffa] StaticArrays v1.6.2
[33b4df10] VectorizedRNG v0.2.24
[e88e6eb3] Zygote v0.6.63
[b77e0a4c] InteractiveUtils @stdlib/InteractiveUtils
[9a3f8284] Random @stdlib/Random
[8dfed614] Test @stdlib/Test
Status /tmp/jl_7cJ00C/Manifest.toml
[621f4979] AbstractFFTs v1.5.0
[79e6a3ab] Adapt v3.6.2
[4c88cf16] Aqua v0.7.0
[dce04be8] ArgCheck v2.3.0
[4fba245c] ArrayInterface v7.4.11
[30b0a656] ArrayInterfaceCore v0.1.29
[a9b6321e] Atomix v0.1.0
[a963bdd2] AtomsBase v0.3.4
[ab4f0b2a] BFloat16s v0.4.2
[198e06fe] BangBang v0.3.39
[9718e550] Baselet v0.1.1
[d1d4a3ce] BitFlags v0.1.7
[62783981] BitTwiddlingConvenienceFunctions v0.1.5
[e1450e63] BufferedStreams v1.2.1
[fa961155] CEnum v0.4.2
[2a0fbf3d] CPUSummary v0.2.3
[336ed68f] CSV v0.10.11
[082447d4] ChainRules v1.53.0
[d360d2e6] ChainRulesCore v1.16.0
[46823bd8] Chemfiles v0.10.41
[fb6a15b2] CloseOpenIntervals v0.1.12
[da1fd8a2] CodeTracking v1.3.4
[944b1d66] CodecZlib v0.7.2
[35d6a980] ColorSchemes v3.23.0
[3da002f7] ColorTypes v0.11.4
⌅ [c3611d14] ColorVectorSpace v0.9.10
[5ae59095] Colors v0.12.10
[bbf7d656] CommonSubexpressions v0.3.0
[34da2185] Compat v4.9.0
[a33af91c] CompositionsBase v0.1.2
[f0e56b4a] ConcurrentUtilities v2.2.1
[187b0558] ConstructionBase v1.5.3
[6add18c4] ContextVariablesX v0.1.3
[adafc99b] CpuId v0.3.1
[a8cc5b0e] Crayons v4.1.1
[9a962f9c] DataAPI v1.15.0
[124859b0] DataDeps v0.7.11
[a93c6f00] DataFrames v1.6.1
[864edb3b] DataStructures v0.18.15
[e2d170a0] DataValueInterfaces v1.0.0
[244e2a9f] DefineSingletons v0.1.2
[8bb1440f] DelimitedFiles v1.9.1
[163ba53b] DiffResults v1.1.0
[b552c78f] DiffRules v1.15.1
[ffbed154] DocStringExtensions v0.9.3
[460bff9d] ExceptionUnwrapping v0.1.9
[cc61a311] FLoops v0.2.1
[b9860ae5] FLoopsBase v0.1.1
[5789e2e9] FileIO v1.16.1
[48062228] FilePathsBase v0.9.20
[1a297f60] FillArrays v1.6.1
[53c48c17] FixedPointNumbers v0.8.4
[f6369f11] ForwardDiff v0.10.36
[0c68f7d7] GPUArrays v8.8.1
[46192b85] GPUArraysCore v0.1.5
[92fee26a] GZip v0.6.1
[c27321d9] Glob v1.3.1
[a2bd30eb] Graphics v1.1.2
[f67ccb44] HDF5 v0.16.16
[cd3eb016] HTTP v1.9.14
[3e5b6fbb] HostCPUFeatures v0.1.16
[7869d1d1] IRTools v0.4.10
[615f187c] IfElse v0.1.1
⌃ [c817782e] ImageBase v0.1.5
⌅ [a09fc81d] ImageCore v0.9.4
[4e3cecfd] ImageShow v0.3.8
[22cec73e] InitialValues v0.3.1
[842dd82b] InlineStrings v1.4.0
[7d512f48] InternedStrings v0.7.0
[41ab1584] InvertedIndices v1.3.0
[92d709cd] IrrationalConstants v0.2.2
[82899510] IteratorInterfaceExtensions v1.0.0
[c3a54625] JET v0.8.12
[033835bb] JLD2 v0.4.33
[692b3bcd] JLLWrappers v1.5.0
[0f8b85d8] JSON3 v1.13.2
[aa1ae85d] JuliaInterpreter v0.9.25
[b14d175d] JuliaVariables v0.2.4
[63c18a36] KernelAbstractions v0.9.8
[929cbde3] LLVM v6.1.0
[b964fa9f] LaTeXStrings v1.3.0
[10f19ff3] LayoutPointers v0.1.14
[8cdb02fc] LazyModules v0.3.1
[2ab3a3ac] LogExpFunctions v0.3.26
[e6f89c97] LoggingExtras v1.0.1
[bdcacae8] LoopVectorization v0.12.165
[6f1432cf] LoweredCodeUtils v2.3.0
[23992714] MAT v0.10.5
[eb30cadb] MLDatasets v0.7.12
[d8e11817] MLStyle v0.4.17
[f1d291b0] MLUtils v0.4.3
[3da0fdf6] MPIPreferences v0.1.9
[1914dd2f] MacroTools v0.5.11
[d125e4d3] ManualMemory v0.1.8
[dbb5928d] MappedArrays v0.4.2
[739be429] MbedTLS v1.1.7
[128add7d] MicroCollections v0.1.4
[e1d29d7a] Missings v1.1.0
[e94cdb99] MosaicViews v0.3.4
[872c559c] NNlib v0.9.4
[15e1cf62] NPZ v0.4.3
[77ba4419] NaNMath v1.0.2
[71a1bf82] NameResolution v0.1.5
[6fe1bfb0] OffsetArrays v1.12.10
[4d8831e6] OpenSSL v1.4.1
[bac558e1] OrderedCollections v1.6.2
[5432bcbf] PaddedViews v0.5.12
[69de0a69] Parsers v2.7.2
[7b2266bf] PeriodicTable v1.1.4
[fbb45041] Pickle v0.3.3
[f517fe37] Polyester v0.7.5
[1d0040c9] PolyesterWeave v0.2.1
[2dfb63ee] PooledArrays v1.4.2
[aea7be01] PrecompileTools v1.2.0
[21216c6a] Preferences v1.4.0
[8162dcfd] PrettyPrint v0.2.0
[08abe8d2] PrettyTables v2.2.7
[c1ae055f] RealDot v0.1.0
[189a3867] Reexport v1.2.2
[ae029012] Requires v1.3.0
[295af30f] Revise v3.5.3
[94e857df] SIMDTypes v0.1.0
[476501e8] SLEEFPirates v0.6.39
[91c51154] SentinelArrays v1.4.0
[efcf1570] Setfield v1.1.1
[605ecd9f] ShowCases v0.1.0
[777ac1f9] SimpleBufferStream v1.1.0
[de6bee2f] SimpleChains v0.4.6 ~/.julia/dev/SimpleChains
[699a6c99] SimpleTraits v0.9.4
[66db9d55] SnoopPrecompile v1.0.3
[a2af1166] SortingAlgorithms v1.1.1
[276daf66] SpecialFunctions v2.3.1
[171d559e] SplittablesBase v0.1.15
[cae243ae] StackViews v0.1.1
[aedffcd0] Static v0.8.8
[0d7ed370] StaticArrayInterface v1.4.1
[90137ffa] StaticArrays v1.6.2
[1e83bf80] StaticArraysCore v1.4.2
[82ae8749] StatsAPI v1.6.0
⌃ [2913bbd2] StatsBase v0.33.21
[7792a7ef] StrideArraysCore v0.4.17
⌅ [5e0ebb24] Strided v1.2.3
[69024149] StringEncodings v0.3.7
[892a3eda] StringManipulation v0.3.0
[09ab397b] StructArrays v0.6.15
[856f2bd8] StructTypes v1.10.0
[3783bdb8] TableTraits v1.0.1
[bd369af6] Tables v1.10.1
[62fd8b95] TensorCore v0.1.1
[8290d209] ThreadingUtilities v0.5.2
[3bb67fe8] TranscodingStreams v0.9.13
[28d57a85] Transducers v0.4.78
[9d95972d] TupleTools v1.3.0
[5c2747f8] URIs v1.5.0
[3a884ed6] UnPack v1.0.2
[1986cc42] Unitful v1.17.0
[a7773ee8] UnitfulAtomic v1.0.0
[013be700] UnsafeAtomics v0.2.1
[d80eeb9a] UnsafeAtomicsLLVM v0.1.3
[3d5dd08c] VectorizationBase v0.21.64
[33b4df10] VectorizedRNG v0.2.24
[ea10d353] WeakRefStrings v1.4.2
[76eceee3] WorkerUtilities v1.6.1
[a5390f91] ZipFile v0.10.1
[e88e6eb3] Zygote v0.6.63
[700de1a5] ZygoteRules v0.2.3
[78a364fa] Chemfiles_jll v0.10.4+0
[0234f1f7] HDF5_jll v1.14.1+0
[dad2f222] LLVMExtra_jll v0.0.23+0
[1d63c593] LLVMOpenMP_jll v15.0.4+0
[94ce4f54] Libiconv_jll v1.16.1+2
[7cb0a576] MPICH_jll v4.1.2+0
[f1f71cc9] MPItrampoline_jll v5.3.1+0
[9237b28f] MicrosoftMPI_jll v10.1.3+4
[fe0851c0] OpenMPI_jll v4.1.5+0
[458c3c95] OpenSSL_jll v3.0.10+0
[efe28fd5] OpenSpecFun_jll v0.5.5+0
[477f73a3] libaec_jll v1.0.6+1
[0dad84c5] ArgTools v1.1.1 @stdlib/ArgTools
[56f22d72] Artifacts @stdlib/Artifacts
[2a0f44e3] Base64 @stdlib/Base64
[ade2ca70] Dates @stdlib/Dates
[8ba89e20] Distributed @stdlib/Distributed
[f43a241f] Downloads v1.6.0 @stdlib/Downloads
[7b1f6079] FileWatching @stdlib/FileWatching
[9fa8497b] Future @stdlib/Future
[b77e0a4c] InteractiveUtils @stdlib/InteractiveUtils
[4af54fe1] LazyArtifacts @stdlib/LazyArtifacts
[b27032c2] LibCURL v0.6.3 @stdlib/LibCURL
[76f85450] LibGit2 @stdlib/LibGit2
[8f399da3] Libdl @stdlib/Libdl
[37e2e46d] LinearAlgebra @stdlib/LinearAlgebra
[56ddb016] Logging @stdlib/Logging
[d6f4376e] Markdown @stdlib/Markdown
[a63ad114] Mmap @stdlib/Mmap
[ca575930] NetworkOptions v1.2.0 @stdlib/NetworkOptions
[44cfe95a] Pkg v1.9.2 @stdlib/Pkg
[de0858da] Printf @stdlib/Printf
[3fa0cd96] REPL @stdlib/REPL
[9a3f8284] Random @stdlib/Random
[ea8e919c] SHA v0.7.0 @stdlib/SHA
[9e88b42a] Serialization @stdlib/Serialization
[6462fe0b] Sockets @stdlib/Sockets
[2f01184e] SparseArrays @stdlib/SparseArrays
[10745b16] Statistics v1.9.0 @stdlib/Statistics
[4607b0f0] SuiteSparse @stdlib/SuiteSparse
[fa267f1f] TOML v1.0.3 @stdlib/TOML
[a4e569a6] Tar v1.10.0 @stdlib/Tar
[8dfed614] Test @stdlib/Test
[cf7118a7] UUIDs @stdlib/UUIDs
[4ec0a83e] Unicode @stdlib/Unicode
[e66e0078] CompilerSupportLibraries_jll v1.0.5+0 @stdlib/CompilerSupportLibraries_jll
[deac9b47] LibCURL_jll v7.84.0+0 @stdlib/LibCURL_jll
[29816b5a] LibSSH2_jll v1.10.2+0 @stdlib/LibSSH2_jll
[c8ffd9c3] MbedTLS_jll v2.28.2+0 @stdlib/MbedTLS_jll
[14a3606d] MozillaCACerts_jll v2022.10.11 @stdlib/MozillaCACerts_jll
[4536629a] OpenBLAS_jll v0.3.21+4 @stdlib/OpenBLAS_jll
[05823500] OpenLibm_jll v0.8.1+0 @stdlib/OpenLibm_jll
[bea87d4a] SuiteSparse_jll v5.10.1+6 @stdlib/SuiteSparse_jll
[83775a58] Zlib_jll v1.2.13+0 @stdlib/Zlib_jll
[8e850b90] libblastrampoline_jll v5.8.0+0 @stdlib/libblastrampoline_jll
[8e850ede] nghttp2_jll v1.48.0+0 @stdlib/nghttp2_jll
[3f19e933] p7zip_jll v17.4.0+0 @stdlib/p7zip_jll
Info Packages marked with ⌃ and ⌅ have new versions available, but those with ⌅ are restricted by compatibility constraints from upgrading.
Precompiling project...
1 dependency successfully precompiled in 5 seconds. 209 already precompiled.
Testing Running tests...
Julia Version 1.9.3
Commit bed2cd540a* (2023-08-24 14:43 UTC)
Build Info:

Note: This is an unofficial build, please report bugs to the project
responsible for this build and not to the Julia project unless you can
reproduce the issue using official builds available at https://julialang.org/downloads

Platform Info:
OS: Linux (x86_64-linux-gnu)
Ubuntu 23.04
uname: Linux 6.2.0-27-generic #28-Ubuntu SMP PREEMPT_DYNAMIC Wed Jul 12 22:39:51 UTC 2023 x86_64 x86_64
CPU: AMD Ryzen 5 2600 Six-Core Processor:
speed user nice sys idle irq
#1-12 3569 MHz 2077034 s 798 s 235261 s 6600043 s 0 s
Memory: 31.254104614257812 GB (14824.6796875 MB free)
Uptime: 304934.21 sec
Load Avg: 2.72 2.02 2.15
WORD_SIZE: 64
LIBM: libopenlibm
LLVM: libLLVM-14.0.6 (ORCJIT, znver1)
Threads: 1 on 12 virtual cores
Environment:
JULIA_LOAD_PATH = @:/tmp/jl_7cJ00C
MANDATORY_PATH = /usr/share/gconf/ubuntu.mandatory.path
WINDOWPATH = 2
HOME = /home/nano2
QTWEBENGINE_DICTIONARIES_PATH = /usr/share/hunspell-bdic/
TERM = xterm-256color
DEFAULTS_PATH = /usr/share/gconf/ubuntu.default.path
PATH = /home/nano2/miniconda3/bin:/home/nano2/.cargo/bin:/home/nano2/.nix-profile/bin:/home/nano2/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/opt/rocm/bin:/opt/rocm/profiler/bin:/opt/rocm/opencl/bin/x86_64:/opt/rocm/bin:/opt/rocm/profiler/bin:/opt/rocm/opencl/bin/x86_64:/opt/rocm/bin:/opt/rocm/rocprofiler/bin:/opt/rocm/opencl/bin:/opt/rocm/bin:/opt/rocm/profiler/bin:/opt/rocm/opencl/bin
g ≈ gfdd = false
isapprox(g, gfdd, rtol = 0.1) = false
isapprox(g, gfdd, rtol = 0.01) = false
isapprox(g, gfdd, rtol = 0.001) = false
isapprox(g, gfdd, rtol = 0.0001) = false
isapprox(g, gfdd, rtol = 1.0e-5) = false
isapprox(g, gfdd, rtol = 1.0e-6) = false
isapprox(g, gfdd, rtol = 1.0e-7) = false
isapprox(g, gfdd, rtol = 1.0e-8) = false
1.914290 seconds (3.11 M allocations: 192.330 MiB, 6.90% gc time, 99.58% compilation time)
94.679926 seconds (2.01 M allocations: 123.445 MiB, 0.11% gc time, 1.99% compilation time)
94.386267 seconds (532.03 k allocations: 32.502 MiB, 0.04% gc time, 0.55% compilation time)
18.883270 seconds (11 allocations: 480 bytes)
0.042337 seconds (1 allocation: 288 bytes)
Test Summary: | Pass Total Time
SimpleChains.jl | 358 358 8m56.4s
Test Summary: |Time
Method ambiguity | None 0.0s
Test Summary: | Pass Total Time
Unbound type parameters | 1 1 0.6s
Test Summary: | Pass Total Time
Undefined exports | 1 1 0.0s
Test Summary: | Pass Total Time
Compare Project.toml and test/Project.toml | 1 1 0.1s
Test Summary: | Pass Total Time
Stale dependencies | 1 1 3.5s
Test Summary: | Pass Total Time
Compat bounds | 1 1 0.3s
Test Summary: |Time
Project.toml formatting | None 0.0s
Test Summary: | Pass Total Time
Piracy | 1 1 0.3s
Testing SimpleChains tests passed

@bendat78
Copy link
Author

this is the output after I remove my patched version of simplechains and add the official package back:

(@v1.9) pkg> rm SimpleChains
Updating ~/.julia/environments/v1.9/Project.toml
[de6bee2f] - SimpleChains v0.4.6 ~/.julia/dev/SimpleChains
Updating ~/.julia/environments/v1.9/Manifest.toml
[bbf7d656] - CommonSubexpressions v0.3.0
[163ba53b] - DiffResults v1.1.0
[b552c78f] - DiffRules v1.15.1
[f6369f11] - ForwardDiff v0.10.36
[f517fe37] - Polyester v0.7.5
[de6bee2f] - SimpleChains v0.4.6 ~/.julia/dev/SimpleChains
[7792a7ef] - StrideArraysCore v0.4.17
[33b4df10] - VectorizedRNG v0.2.24

(@v1.9) pkg> add SimpleChains
Resolving package versions...
Updating ~/.julia/environments/v1.9/Project.toml
[de6bee2f] + SimpleChains v0.4.6
Updating ~/.julia/environments/v1.9/Manifest.toml
[bbf7d656] + CommonSubexpressions v0.3.0
[163ba53b] + DiffResults v1.1.0
[b552c78f] + DiffRules v1.15.1
[f6369f11] + ForwardDiff v0.10.36
[f517fe37] + Polyester v0.7.5
[de6bee2f] + SimpleChains v0.4.6
[7792a7ef] + StrideArraysCore v0.4.17
[33b4df10] + VectorizedRNG v0.2.24

(@v1.9) pkg> test SimpleChains
Testing SimpleChains
Status /tmp/jl_7VgCKQ/Project.toml
[4c88cf16] Aqua v0.7.0
[082447d4] ChainRules v1.53.0
[f6369f11] ForwardDiff v0.10.36
[c3a54625] JET v0.8.12
[eb30cadb] MLDatasets v0.7.12
[de6bee2f] SimpleChains v0.4.6
[90137ffa] StaticArrays v1.6.2
[33b4df10] VectorizedRNG v0.2.24
[e88e6eb3] Zygote v0.6.63
[b77e0a4c] InteractiveUtils @stdlib/InteractiveUtils
[9a3f8284] Random @stdlib/Random
[8dfed614] Test @stdlib/Test
Status /tmp/jl_7VgCKQ/Manifest.toml
[621f4979] AbstractFFTs v1.5.0
[79e6a3ab] Adapt v3.6.2
[4c88cf16] Aqua v0.7.0
[dce04be8] ArgCheck v2.3.0
[4fba245c] ArrayInterface v7.4.11
[30b0a656] ArrayInterfaceCore v0.1.29
[a9b6321e] Atomix v0.1.0
[a963bdd2] AtomsBase v0.3.4
[ab4f0b2a] BFloat16s v0.4.2
[198e06fe] BangBang v0.3.39
[9718e550] Baselet v0.1.1
[d1d4a3ce] BitFlags v0.1.7
[62783981] BitTwiddlingConvenienceFunctions v0.1.5
[e1450e63] BufferedStreams v1.2.1
[fa961155] CEnum v0.4.2
[2a0fbf3d] CPUSummary v0.2.3
[336ed68f] CSV v0.10.11
[082447d4] ChainRules v1.53.0
[d360d2e6] ChainRulesCore v1.16.0
[46823bd8] Chemfiles v0.10.41
[fb6a15b2] CloseOpenIntervals v0.1.12
[da1fd8a2] CodeTracking v1.3.4
[944b1d66] CodecZlib v0.7.2
[35d6a980] ColorSchemes v3.23.0
[3da002f7] ColorTypes v0.11.4
⌅ [c3611d14] ColorVectorSpace v0.9.10
[5ae59095] Colors v0.12.10
[bbf7d656] CommonSubexpressions v0.3.0
[34da2185] Compat v4.9.0
[a33af91c] CompositionsBase v0.1.2
[f0e56b4a] ConcurrentUtilities v2.2.1
[187b0558] ConstructionBase v1.5.3
[6add18c4] ContextVariablesX v0.1.3
[adafc99b] CpuId v0.3.1
[a8cc5b0e] Crayons v4.1.1
[9a962f9c] DataAPI v1.15.0
[124859b0] DataDeps v0.7.11
[a93c6f00] DataFrames v1.6.1
[864edb3b] DataStructures v0.18.15
[e2d170a0] DataValueInterfaces v1.0.0
[244e2a9f] DefineSingletons v0.1.2
[8bb1440f] DelimitedFiles v1.9.1
[163ba53b] DiffResults v1.1.0
[b552c78f] DiffRules v1.15.1
[ffbed154] DocStringExtensions v0.9.3
[460bff9d] ExceptionUnwrapping v0.1.9
[cc61a311] FLoops v0.2.1
[b9860ae5] FLoopsBase v0.1.1
[5789e2e9] FileIO v1.16.1
[48062228] FilePathsBase v0.9.20
[1a297f60] FillArrays v1.6.1
[53c48c17] FixedPointNumbers v0.8.4
[f6369f11] ForwardDiff v0.10.36
[0c68f7d7] GPUArrays v8.8.1
[46192b85] GPUArraysCore v0.1.5
[92fee26a] GZip v0.6.1
[c27321d9] Glob v1.3.1
[a2bd30eb] Graphics v1.1.2
[f67ccb44] HDF5 v0.16.16
[cd3eb016] HTTP v1.9.14
[3e5b6fbb] HostCPUFeatures v0.1.16
[7869d1d1] IRTools v0.4.10
[615f187c] IfElse v0.1.1
⌃ [c817782e] ImageBase v0.1.5
⌅ [a09fc81d] ImageCore v0.9.4
[4e3cecfd] ImageShow v0.3.8
[22cec73e] InitialValues v0.3.1
[842dd82b] InlineStrings v1.4.0
[7d512f48] InternedStrings v0.7.0
[41ab1584] InvertedIndices v1.3.0
[92d709cd] IrrationalConstants v0.2.2
[82899510] IteratorInterfaceExtensions v1.0.0
[c3a54625] JET v0.8.12
[033835bb] JLD2 v0.4.33
[692b3bcd] JLLWrappers v1.5.0
[0f8b85d8] JSON3 v1.13.2
[aa1ae85d] JuliaInterpreter v0.9.25
[b14d175d] JuliaVariables v0.2.4
[63c18a36] KernelAbstractions v0.9.8
[929cbde3] LLVM v6.1.0
[b964fa9f] LaTeXStrings v1.3.0
[10f19ff3] LayoutPointers v0.1.14
[8cdb02fc] LazyModules v0.3.1
[2ab3a3ac] LogExpFunctions v0.3.26
[e6f89c97] LoggingExtras v1.0.1
[bdcacae8] LoopVectorization v0.12.165
[6f1432cf] LoweredCodeUtils v2.3.0
[23992714] MAT v0.10.5
[eb30cadb] MLDatasets v0.7.12
[d8e11817] MLStyle v0.4.17
[f1d291b0] MLUtils v0.4.3
[3da0fdf6] MPIPreferences v0.1.9
[1914dd2f] MacroTools v0.5.11
[d125e4d3] ManualMemory v0.1.8
[dbb5928d] MappedArrays v0.4.2
[739be429] MbedTLS v1.1.7
[128add7d] MicroCollections v0.1.4
[e1d29d7a] Missings v1.1.0
[e94cdb99] MosaicViews v0.3.4
[872c559c] NNlib v0.9.4
[15e1cf62] NPZ v0.4.3
[77ba4419] NaNMath v1.0.2
[71a1bf82] NameResolution v0.1.5
[6fe1bfb0] OffsetArrays v1.12.10
[4d8831e6] OpenSSL v1.4.1
[bac558e1] OrderedCollections v1.6.2
[5432bcbf] PaddedViews v0.5.12
[69de0a69] Parsers v2.7.2
[7b2266bf] PeriodicTable v1.1.4
[fbb45041] Pickle v0.3.3
[f517fe37] Polyester v0.7.5
[1d0040c9] PolyesterWeave v0.2.1
[2dfb63ee] PooledArrays v1.4.2
[aea7be01] PrecompileTools v1.2.0
[21216c6a] Preferences v1.4.0
[8162dcfd] PrettyPrint v0.2.0
[08abe8d2] PrettyTables v2.2.7
[c1ae055f] RealDot v0.1.0
[189a3867] Reexport v1.2.2
[ae029012] Requires v1.3.0
[295af30f] Revise v3.5.3
[94e857df] SIMDTypes v0.1.0
[476501e8] SLEEFPirates v0.6.39
[91c51154] SentinelArrays v1.4.0
[efcf1570] Setfield v1.1.1
[605ecd9f] ShowCases v0.1.0
[777ac1f9] SimpleBufferStream v1.1.0
[de6bee2f] SimpleChains v0.4.6
[699a6c99] SimpleTraits v0.9.4
[66db9d55] SnoopPrecompile v1.0.3
[a2af1166] SortingAlgorithms v1.1.1
[276daf66] SpecialFunctions v2.3.1
[171d559e] SplittablesBase v0.1.15
[cae243ae] StackViews v0.1.1
[aedffcd0] Static v0.8.8
[0d7ed370] StaticArrayInterface v1.4.1
[90137ffa] StaticArrays v1.6.2
[1e83bf80] StaticArraysCore v1.4.2
[82ae8749] StatsAPI v1.6.0
⌃ [2913bbd2] StatsBase v0.33.21
[7792a7ef] StrideArraysCore v0.4.17
⌅ [5e0ebb24] Strided v1.2.3
[69024149] StringEncodings v0.3.7
[892a3eda] StringManipulation v0.3.0
[09ab397b] StructArrays v0.6.15
[856f2bd8] StructTypes v1.10.0
[3783bdb8] TableTraits v1.0.1
[bd369af6] Tables v1.10.1
[62fd8b95] TensorCore v0.1.1
[8290d209] ThreadingUtilities v0.5.2
[3bb67fe8] TranscodingStreams v0.9.13
[28d57a85] Transducers v0.4.78
[9d95972d] TupleTools v1.3.0
[5c2747f8] URIs v1.5.0
[3a884ed6] UnPack v1.0.2
[1986cc42] Unitful v1.17.0
[a7773ee8] UnitfulAtomic v1.0.0
[013be700] UnsafeAtomics v0.2.1
[d80eeb9a] UnsafeAtomicsLLVM v0.1.3
[3d5dd08c] VectorizationBase v0.21.64
[33b4df10] VectorizedRNG v0.2.24
[ea10d353] WeakRefStrings v1.4.2
[76eceee3] WorkerUtilities v1.6.1
[a5390f91] ZipFile v0.10.1
[e88e6eb3] Zygote v0.6.63
[700de1a5] ZygoteRules v0.2.3
[78a364fa] Chemfiles_jll v0.10.4+0
[0234f1f7] HDF5_jll v1.14.1+0
[dad2f222] LLVMExtra_jll v0.0.23+0
[1d63c593] LLVMOpenMP_jll v15.0.4+0
[94ce4f54] Libiconv_jll v1.16.1+2
[7cb0a576] MPICH_jll v4.1.2+0
[f1f71cc9] MPItrampoline_jll v5.3.1+0
[9237b28f] MicrosoftMPI_jll v10.1.3+4
[fe0851c0] OpenMPI_jll v4.1.5+0
[458c3c95] OpenSSL_jll v3.0.10+0
[efe28fd5] OpenSpecFun_jll v0.5.5+0
[477f73a3] libaec_jll v1.0.6+1
[0dad84c5] ArgTools v1.1.1 @stdlib/ArgTools
[56f22d72] Artifacts @stdlib/Artifacts
[2a0f44e3] Base64 @stdlib/Base64
[ade2ca70] Dates @stdlib/Dates
[8ba89e20] Distributed @stdlib/Distributed
[f43a241f] Downloads v1.6.0 @stdlib/Downloads
[7b1f6079] FileWatching @stdlib/FileWatching
[9fa8497b] Future @stdlib/Future
[b77e0a4c] InteractiveUtils @stdlib/InteractiveUtils
[4af54fe1] LazyArtifacts @stdlib/LazyArtifacts
[b27032c2] LibCURL v0.6.3 @stdlib/LibCURL
[76f85450] LibGit2 @stdlib/LibGit2
[8f399da3] Libdl @stdlib/Libdl
[37e2e46d] LinearAlgebra @stdlib/LinearAlgebra
[56ddb016] Logging @stdlib/Logging
[d6f4376e] Markdown @stdlib/Markdown
[a63ad114] Mmap @stdlib/Mmap
[ca575930] NetworkOptions v1.2.0 @stdlib/NetworkOptions
[44cfe95a] Pkg v1.9.2 @stdlib/Pkg
[de0858da] Printf @stdlib/Printf
[3fa0cd96] REPL @stdlib/REPL
[9a3f8284] Random @stdlib/Random
[ea8e919c] SHA v0.7.0 @stdlib/SHA
[9e88b42a] Serialization @stdlib/Serialization
[6462fe0b] Sockets @stdlib/Sockets
[2f01184e] SparseArrays @stdlib/SparseArrays
[10745b16] Statistics v1.9.0 @stdlib/Statistics
[4607b0f0] SuiteSparse @stdlib/SuiteSparse
[fa267f1f] TOML v1.0.3 @stdlib/TOML
[a4e569a6] Tar v1.10.0 @stdlib/Tar
[8dfed614] Test @stdlib/Test
[cf7118a7] UUIDs @stdlib/UUIDs
[4ec0a83e] Unicode @stdlib/Unicode
[e66e0078] CompilerSupportLibraries_jll v1.0.5+0 @stdlib/CompilerSupportLibraries_jll
[deac9b47] LibCURL_jll v7.84.0+0 @stdlib/LibCURL_jll
[29816b5a] LibSSH2_jll v1.10.2+0 @stdlib/LibSSH2_jll
[c8ffd9c3] MbedTLS_jll v2.28.2+0 @stdlib/MbedTLS_jll
[14a3606d] MozillaCACerts_jll v2022.10.11 @stdlib/MozillaCACerts_jll
[4536629a] OpenBLAS_jll v0.3.21+4 @stdlib/OpenBLAS_jll
[05823500] OpenLibm_jll v0.8.1+0 @stdlib/OpenLibm_jll
[bea87d4a] SuiteSparse_jll v5.10.1+6 @stdlib/SuiteSparse_jll
[83775a58] Zlib_jll v1.2.13+0 @stdlib/Zlib_jll
[8e850b90] libblastrampoline_jll v5.8.0+0 @stdlib/libblastrampoline_jll
[8e850ede] nghttp2_jll v1.48.0+0 @stdlib/nghttp2_jll
[3f19e933] p7zip_jll v17.4.0+0 @stdlib/p7zip_jll
Info Packages marked with ⌃ and ⌅ have new versions available, but those with ⌅ are restricted by compatibility constraints from upgrading.
Testing Running tests...
Julia Version 1.9.3
Commit bed2cd540a* (2023-08-24 14:43 UTC)
Build Info:

Note: This is an unofficial build, please report bugs to the project
responsible for this build and not to the Julia project unless you can
reproduce the issue using official builds available at https://julialang.org/downloads

Platform Info:
OS: Linux (x86_64-linux-gnu)
Ubuntu 23.04
uname: Linux 6.2.0-27-generic #28-Ubuntu SMP PREEMPT_DYNAMIC Wed Jul 12 22:39:51 UTC 2023 x86_64 x86_64
CPU: AMD Ryzen 5 2600 Six-Core Processor:
speed user nice sys idle irq
#1-12 2673 MHz 2107779 s 845 s 236744 s 1665491 s 0 s
Memory: 31.254104614257812 GB (13306.4921875 MB free)
Uptime: 338707.24 sec
Load Avg: 2.19 1.79 1.87
WORD_SIZE: 64
LIBM: libopenlibm
LLVM: libLLVM-14.0.6 (ORCJIT, znver1)
Threads: 1 on 12 virtual cores
Environment:
JULIA_LOAD_PATH = @:/tmp/jl_7VgCKQ
MANDATORY_PATH = /usr/share/gconf/ubuntu.mandatory.path
WINDOWPATH = 2
HOME = /home/nano2
QTWEBENGINE_DICTIONARIES_PATH = /usr/share/hunspell-bdic/
TERM = xterm-256color
DEFAULTS_PATH = /usr/share/gconf/ubuntu.default.path
PATH = /home/nano2/miniconda3/bin:/home/nano2/.cargo/bin:/home/nano2/.nix-profile/bin:/home/nano2/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/opt/rocm/bin:/opt/rocm/profiler/bin:/opt/rocm/opencl/bin/x86_64:/opt/rocm/bin:/opt/rocm/profiler/bin:/opt/rocm/opencl/bin/x86_64:/opt/rocm/bin:/opt/rocm/rocprofiler/bin:/opt/rocm/opencl/bin:/opt/rocm/bin:/opt/rocm/profiler/bin:/opt/rocm/opencl/bin
g ≈ gfdd = false
isapprox(g, gfdd, rtol = 0.1) = false
isapprox(g, gfdd, rtol = 0.01) = false
isapprox(g, gfdd, rtol = 0.001) = false
isapprox(g, gfdd, rtol = 0.0001) = false
isapprox(g, gfdd, rtol = 1.0e-5) = false
isapprox(g, gfdd, rtol = 1.0e-6) = false
isapprox(g, gfdd, rtol = 1.0e-7) = false
isapprox(g, gfdd, rtol = 1.0e-8) = false
1.931451 seconds (3.11 M allocations: 192.304 MiB, 6.91% gc time, 99.55% compilation time)

[333055] signal (11.1): Speicherzugriffsfehler
in expression starting at /home/nano2/.julia/packages/SimpleChains/u5b1E/test/mnist.jl:3
macro expansion at /home/nano2/.julia/packages/VectorizationBase/0dXyA/src/llvm_intrin/binary_ops.jl:119 [inlined]
vadd_fast at /home/nano2/.julia/packages/VectorizationBase/0dXyA/src/llvm_intrin/binary_ops.jl:119 [inlined]
fmap at /home/nano2/.julia/packages/VectorizationBase/0dXyA/src/vecunroll/fmap.jl:15 [inlined]
vadd_fast at /home/nano2/.julia/packages/VectorizationBase/0dXyA/src/vecunroll/fmap.jl:111 [inlined]
add_fast at /home/nano2/.julia/packages/VectorizationBase/0dXyA/src/base_defs.jl:91 [inlined]
macro expansion at /home/nano2/.julia/packages/LoopVectorization/xHfLl/src/reconstruct_loopset.jl:1107 [inlined]
turbo! at /home/nano2/.julia/packages/LoopVectorization/xHfLl/src/reconstruct_loopset.jl:1107 [inlined]
shuffle_update! at /home/nano2/.julia/packages/SimpleChains/u5b1E/src/optimize.jl:296
train_batched_core! at /home/nano2/.julia/packages/SimpleChains/u5b1E/src/optimize.jl:597
train_batched_core! at /home/nano2/.julia/packages/SimpleChains/u5b1E/src/optimize.jl:637 [inlined]
with_heap_memory at /home/nano2/.julia/packages/SimpleChains/u5b1E/src/memory.jl:39
with_memory at /home/nano2/.julia/packages/SimpleChains/u5b1E/src/memory.jl:50 [inlined]
#train_batched!#35 at /home/nano2/.julia/packages/SimpleChains/u5b1E/src/optimize.jl:720
train_batched! at /home/nano2/.julia/packages/SimpleChains/u5b1E/src/optimize.jl:665 [inlined]
#train_batched!#36 at /home/nano2/.julia/packages/SimpleChains/u5b1E/src/optimize.jl:745 [inlined]
train_batched! at /home/nano2/.julia/packages/SimpleChains/u5b1E/src/optimize.jl:736
unknown function (ip: 0x7f7ddd107d9d)
macro expansion at ./timing.jl:273 [inlined]
macro expansion at /home/nano2/.julia/packages/SimpleChains/u5b1E/test/mnist.jl:56 [inlined]
macro expansion at /home/nano2/rust/julia/usr/share/julia/stdlib/v1.9/Test/src/Test.jl:1498 [inlined]
top-level scope at /home/nano2/.julia/packages/SimpleChains/u5b1E/test/mnist.jl:4
jl_toplevel_eval_flex at /home/nano2/rust/julia/src/toplevel.c:903
jl_toplevel_eval_flex at /home/nano2/rust/julia/src/toplevel.c:856
ijl_toplevel_eval_in at /home/nano2/rust/julia/src/toplevel.c:971
eval at ./boot.jl:370 [inlined]
include_string at ./loading.jl:1903
_include at ./loading.jl:1963
include at ./client.jl:478
unknown function (ip: 0x7f7e552fb062)
macro expansion at /home/nano2/.julia/packages/SimpleChains/u5b1E/test/runtests.jl:500 [inlined]
macro expansion at /home/nano2/rust/julia/usr/share/julia/stdlib/v1.9/Test/src/Test.jl:1498 [inlined]
macro expansion at /home/nano2/.julia/packages/SimpleChains/u5b1E/test/runtests.jl:500 [inlined]
macro expansion at /home/nano2/rust/julia/usr/share/julia/stdlib/v1.9/Test/src/Test.jl:1498 [inlined]
top-level scope at /home/nano2/.julia/packages/SimpleChains/u5b1E/test/runtests.jl:21
jl_toplevel_eval_flex at /home/nano2/rust/julia/src/toplevel.c:903
jl_toplevel_eval_flex at /home/nano2/rust/julia/src/toplevel.c:856
ijl_toplevel_eval_in at /home/nano2/rust/julia/src/toplevel.c:971
eval at ./boot.jl:370 [inlined]
include_string at ./loading.jl:1903
_include at ./loading.jl:1963
include at ./client.jl:478
unknown function (ip: 0x7f7e552fb062)
jl_apply at /home/nano2/rust/julia/src/julia.h:1880 [inlined]
do_call at /home/nano2/rust/julia/src/interpreter.c:126
eval_value at /home/nano2/rust/julia/src/interpreter.c:226
eval_stmt_value at /home/nano2/rust/julia/src/interpreter.c:177 [inlined]
eval_body at /home/nano2/rust/julia/src/interpreter.c:606
jl_interpret_toplevel_thunk at /home/nano2/rust/julia/src/interpreter.c:762
jl_toplevel_eval_flex at /home/nano2/rust/julia/src/toplevel.c:912
jl_toplevel_eval_flex at /home/nano2/rust/julia/src/toplevel.c:856
ijl_toplevel_eval_in at /home/nano2/rust/julia/src/toplevel.c:971
eval at ./boot.jl:370 [inlined]
exec_options at ./client.jl:280
_start at ./client.jl:522
jfptr__start_52305 at /home/nano2/rust/julia/usr/lib/julia/sys.so (unknown line)
jl_apply at /home/nano2/rust/julia/src/julia.h:1880 [inlined]
true_main at /home/nano2/rust/julia/src/jlapi.c:573
jl_repl_entrypoint at /home/nano2/rust/julia/src/jlapi.c:717
main at /home/nano2/rust/julia/cli/loader_exe.c:59
unknown function (ip: 0x7f7e61223a8f)
__libc_start_main at /lib/x86_64-linux-gnu/libc.so.6 (unknown line)
_start at /home/nano2/rust/julia/usr/bin/julia (unknown line)
Allocations: 326457642 (Pool: 326286657; Big: 170985); GC: 443
ERROR: Package SimpleChains errored during testing (received signal: 11)

@bendat78
Copy link
Author

The earliest version where it works is 4.2

(@v1.9) pkg> add [email protected]
Resolving package versions...
Updating ~/.julia/environments/v1.9/Project.toml
⌃ [de6bee2f] ↓ SimpleChains v0.4.6 ⇒ v0.4.2
Updating ~/.julia/environments/v1.9/Manifest.toml
⌅ [4fba245c] ↓ ArrayInterface v7.4.11 ⇒ v6.0.25
[015c0d05] + ArrayInterfaceOffsetArrays v0.1.7
[b0d46f97] + ArrayInterfaceStaticArrays v0.1.5
[dd5226c6] + ArrayInterfaceStaticArraysCore v0.1.4
⌅ [2a0fbf3d] ↓ CPUSummary v0.2.3 ⇒ v0.1.30
⌃ [fb6a15b2] ↓ CloseOpenIntervals v0.1.12 ⇒ v0.1.11
⌃ [10f19ff3] ↓ LayoutPointers v0.1.14 ⇒ v0.1.13
⌃ [bdcacae8] ↓ LoopVectorization v0.12.165 ⇒ v0.12.150
⌃ [f517fe37] ↓ Polyester v0.7.5 ⇒ v0.7.2
⌃ [de6bee2f] ↓ SimpleChains v0.4.6 ⇒ v0.4.2
[0d7ed370] - StaticArrayInterface v1.4.1
⌃ [7792a7ef] ↓ StrideArraysCore v0.4.17 ⇒ v0.4.7
⌃ [06e1c1a7] ↓ TiledIteration v0.5.0 ⇒ v0.4.2
⌃ [3d5dd08c] ↓ VectorizationBase v0.21.64 ⇒ v0.21.58
Info Packages marked with ⌃ and ⌅ have new versions available, but those with ⌅ are restricted by compatibility constraints from upgrading. To see why use status --outdated -m
Precompiling project...
✓ CPUSummary
✓ ArrayInterface
✓ PolyesterWeave
✓ CloseOpenIntervals
✓ LayoutPointers
✓ StrideArraysCore
✓ VectorizationBase
✓ Polyester
✓ SLEEFPirates
✓ LoopVectorization
✓ VectorizedRNG
✓ LoopVectorization → SpecialFunctionsExt
✓ LoopVectorization → ForwardDiffExt
✓ SimpleChains
24 dependencies successfully precompiled in 94 seconds. 269 already precompiled.
14 dependencies precompiled but different versions are currently loaded. Restart julia to access the new versions

julia> exit()
nano2@nano2-B450M-S2H:~$ julia
_
_ _ ()_ | Documentation: https://docs.julialang.org
() | () () |
_ _ | | __ _ | Type "?" for help, "]?" for Pkg help.
| | | | | | |/ ` | |
| | |
| | | | (
| | | Version 1.9.3 (2023-08-24)
/ |_'|||_'_| |
|__/ |

(@v1.9) pkg> test SimpleChains
Testing SimpleChains
Status /tmp/jl_ojwN5D/Project.toml
[4c88cf16] Aqua v0.7.0
[082447d4] ChainRules v1.53.0
[f6369f11] ForwardDiff v0.10.36
[eb30cadb] MLDatasets v0.7.12
⌃ [de6bee2f] SimpleChains v0.4.2
[90137ffa] StaticArrays v1.6.2
[33b4df10] VectorizedRNG v0.2.24
[e88e6eb3] Zygote v0.6.63
[b77e0a4c] InteractiveUtils @stdlib/InteractiveUtils
[9a3f8284] Random @stdlib/Random
[8dfed614] Test @stdlib/Test
Status /tmp/jl_ojwN5D/Manifest.toml
[621f4979] AbstractFFTs v1.5.0
[79e6a3ab] Adapt v3.6.2
[4c88cf16] Aqua v0.7.0
[dce04be8] ArgCheck v2.3.0
⌅ [4fba245c] ArrayInterface v6.0.25
[30b0a656] ArrayInterfaceCore v0.1.29
[015c0d05] ArrayInterfaceOffsetArrays v0.1.7
[b0d46f97] ArrayInterfaceStaticArrays v0.1.5
[dd5226c6] ArrayInterfaceStaticArraysCore v0.1.4
[a9b6321e] Atomix v0.1.0
[a963bdd2] AtomsBase v0.3.4
[ab4f0b2a] BFloat16s v0.4.2
[198e06fe] BangBang v0.3.39
[9718e550] Baselet v0.1.1
[d1d4a3ce] BitFlags v0.1.7
[62783981] BitTwiddlingConvenienceFunctions v0.1.5
[e1450e63] BufferedStreams v1.2.1
[fa961155] CEnum v0.4.2
⌅ [2a0fbf3d] CPUSummary v0.1.30
[336ed68f] CSV v0.10.11
[082447d4] ChainRules v1.53.0
[d360d2e6] ChainRulesCore v1.16.0
[46823bd8] Chemfiles v0.10.41
⌃ [fb6a15b2] CloseOpenIntervals v0.1.11
[944b1d66] CodecZlib v0.7.2
[35d6a980] ColorSchemes v3.23.0
[3da002f7] ColorTypes v0.11.4
⌅ [c3611d14] ColorVectorSpace v0.9.10
[5ae59095] Colors v0.12.10
[bbf7d656] CommonSubexpressions v0.3.0
[34da2185] Compat v4.9.0
[a33af91c] CompositionsBase v0.1.2
[f0e56b4a] ConcurrentUtilities v2.2.1
[187b0558] ConstructionBase v1.5.3
[6add18c4] ContextVariablesX v0.1.3
[adafc99b] CpuId v0.3.1
[a8cc5b0e] Crayons v4.1.1
[9a962f9c] DataAPI v1.15.0
[124859b0] DataDeps v0.7.11
[a93c6f00] DataFrames v1.6.1
[864edb3b] DataStructures v0.18.15
[e2d170a0] DataValueInterfaces v1.0.0
[244e2a9f] DefineSingletons v0.1.2
[8bb1440f] DelimitedFiles v1.9.1
[163ba53b] DiffResults v1.1.0
[b552c78f] DiffRules v1.15.1
[ffbed154] DocStringExtensions v0.9.3
[460bff9d] ExceptionUnwrapping v0.1.9
[cc61a311] FLoops v0.2.1
[b9860ae5] FLoopsBase v0.1.1
[5789e2e9] FileIO v1.16.1
[48062228] FilePathsBase v0.9.20
[1a297f60] FillArrays v1.6.1
[53c48c17] FixedPointNumbers v0.8.4
[f6369f11] ForwardDiff v0.10.36
[0c68f7d7] GPUArrays v8.8.1
[46192b85] GPUArraysCore v0.1.5
[92fee26a] GZip v0.6.1
[c27321d9] Glob v1.3.1
[a2bd30eb] Graphics v1.1.2
[f67ccb44] HDF5 v0.16.16
[cd3eb016] HTTP v1.9.14
[3e5b6fbb] HostCPUFeatures v0.1.16
[7869d1d1] IRTools v0.4.10
[615f187c] IfElse v0.1.1
⌃ [c817782e] ImageBase v0.1.5
⌅ [a09fc81d] ImageCore v0.9.4
[4e3cecfd] ImageShow v0.3.8
[22cec73e] InitialValues v0.3.1
[842dd82b] InlineStrings v1.4.0
[7d512f48] InternedStrings v0.7.0
[41ab1584] InvertedIndices v1.3.0
[92d709cd] IrrationalConstants v0.2.2
[82899510] IteratorInterfaceExtensions v1.0.0
[033835bb] JLD2 v0.4.33
[692b3bcd] JLLWrappers v1.5.0
[0f8b85d8] JSON3 v1.13.2
[b14d175d] JuliaVariables v0.2.4
[63c18a36] KernelAbstractions v0.9.8
[929cbde3] LLVM v6.1.0
[b964fa9f] LaTeXStrings v1.3.0
⌃ [10f19ff3] LayoutPointers v0.1.13
[8cdb02fc] LazyModules v0.3.1
[2ab3a3ac] LogExpFunctions v0.3.26
[e6f89c97] LoggingExtras v1.0.1
⌃ [bdcacae8] LoopVectorization v0.12.150
[23992714] MAT v0.10.5
[eb30cadb] MLDatasets v0.7.12
[d8e11817] MLStyle v0.4.17
[f1d291b0] MLUtils v0.4.3
[3da0fdf6] MPIPreferences v0.1.9
[1914dd2f] MacroTools v0.5.11
[d125e4d3] ManualMemory v0.1.8
[dbb5928d] MappedArrays v0.4.2
[739be429] MbedTLS v1.1.7
[128add7d] MicroCollections v0.1.4
[e1d29d7a] Missings v1.1.0
[e94cdb99] MosaicViews v0.3.4
[872c559c] NNlib v0.9.4
[15e1cf62] NPZ v0.4.3
[77ba4419] NaNMath v1.0.2
[71a1bf82] NameResolution v0.1.5
[6fe1bfb0] OffsetArrays v1.12.10
[4d8831e6] OpenSSL v1.4.1
[bac558e1] OrderedCollections v1.6.2
[5432bcbf] PaddedViews v0.5.12
[69de0a69] Parsers v2.7.2
[7b2266bf] PeriodicTable v1.1.4
[fbb45041] Pickle v0.3.3
⌃ [f517fe37] Polyester v0.7.2
[1d0040c9] PolyesterWeave v0.2.1
[2dfb63ee] PooledArrays v1.4.2
[aea7be01] PrecompileTools v1.2.0
[21216c6a] Preferences v1.4.0
[8162dcfd] PrettyPrint v0.2.0
[08abe8d2] PrettyTables v2.2.7
[c1ae055f] RealDot v0.1.0
[189a3867] Reexport v1.2.2
[ae029012] Requires v1.3.0
[94e857df] SIMDTypes v0.1.0
[476501e8] SLEEFPirates v0.6.39
[91c51154] SentinelArrays v1.4.0
[efcf1570] Setfield v1.1.1
[605ecd9f] ShowCases v0.1.0
[777ac1f9] SimpleBufferStream v1.1.0
⌃ [de6bee2f] SimpleChains v0.4.2
[699a6c99] SimpleTraits v0.9.4
[66db9d55] SnoopPrecompile v1.0.3
[a2af1166] SortingAlgorithms v1.1.1
[276daf66] SpecialFunctions v2.3.1
[171d559e] SplittablesBase v0.1.15
[cae243ae] StackViews v0.1.1
[aedffcd0] Static v0.8.8
[90137ffa] StaticArrays v1.6.2
[1e83bf80] StaticArraysCore v1.4.2
[82ae8749] StatsAPI v1.6.0
⌃ [2913bbd2] StatsBase v0.33.21
⌃ [7792a7ef] StrideArraysCore v0.4.7
⌅ [5e0ebb24] Strided v1.2.3
[69024149] StringEncodings v0.3.7
[892a3eda] StringManipulation v0.3.0
[09ab397b] StructArrays v0.6.15
[856f2bd8] StructTypes v1.10.0
[3783bdb8] TableTraits v1.0.1
[bd369af6] Tables v1.10.1
[62fd8b95] TensorCore v0.1.1
[8290d209] ThreadingUtilities v0.5.2
[3bb67fe8] TranscodingStreams v0.9.13
[28d57a85] Transducers v0.4.78
[9d95972d] TupleTools v1.3.0
[5c2747f8] URIs v1.5.0
[3a884ed6] UnPack v1.0.2
[1986cc42] Unitful v1.17.0
[a7773ee8] UnitfulAtomic v1.0.0
[013be700] UnsafeAtomics v0.2.1
[d80eeb9a] UnsafeAtomicsLLVM v0.1.3
⌃ [3d5dd08c] VectorizationBase v0.21.58
[33b4df10] VectorizedRNG v0.2.24
[ea10d353] WeakRefStrings v1.4.2
[76eceee3] WorkerUtilities v1.6.1
[a5390f91] ZipFile v0.10.1
[e88e6eb3] Zygote v0.6.63
[700de1a5] ZygoteRules v0.2.3
[78a364fa] Chemfiles_jll v0.10.4+0
[0234f1f7] HDF5_jll v1.14.1+0
[dad2f222] LLVMExtra_jll v0.0.23+0
[1d63c593] LLVMOpenMP_jll v15.0.4+0
[94ce4f54] Libiconv_jll v1.16.1+2
[7cb0a576] MPICH_jll v4.1.2+0
[f1f71cc9] MPItrampoline_jll v5.3.1+0
[9237b28f] MicrosoftMPI_jll v10.1.3+4
[fe0851c0] OpenMPI_jll v4.1.5+0
[458c3c95] OpenSSL_jll v3.0.10+0
[efe28fd5] OpenSpecFun_jll v0.5.5+0
[477f73a3] libaec_jll v1.0.6+1
[0dad84c5] ArgTools v1.1.1 @stdlib/ArgTools
[56f22d72] Artifacts @stdlib/Artifacts
[2a0f44e3] Base64 @stdlib/Base64
[ade2ca70] Dates @stdlib/Dates
[8ba89e20] Distributed @stdlib/Distributed
[f43a241f] Downloads v1.6.0 @stdlib/Downloads
[7b1f6079] FileWatching @stdlib/FileWatching
[9fa8497b] Future @stdlib/Future
[b77e0a4c] InteractiveUtils @stdlib/InteractiveUtils
[4af54fe1] LazyArtifacts @stdlib/LazyArtifacts
[b27032c2] LibCURL v0.6.3 @stdlib/LibCURL
[76f85450] LibGit2 @stdlib/LibGit2
[8f399da3] Libdl @stdlib/Libdl
[37e2e46d] LinearAlgebra @stdlib/LinearAlgebra
[56ddb016] Logging @stdlib/Logging
[d6f4376e] Markdown @stdlib/Markdown
[a63ad114] Mmap @stdlib/Mmap
[ca575930] NetworkOptions v1.2.0 @stdlib/NetworkOptions
[44cfe95a] Pkg v1.9.2 @stdlib/Pkg
[de0858da] Printf @stdlib/Printf
[3fa0cd96] REPL @stdlib/REPL
[9a3f8284] Random @stdlib/Random
[ea8e919c] SHA v0.7.0 @stdlib/SHA
[9e88b42a] Serialization @stdlib/Serialization
[6462fe0b] Sockets @stdlib/Sockets
[2f01184e] SparseArrays @stdlib/SparseArrays
[10745b16] Statistics v1.9.0 @stdlib/Statistics
[4607b0f0] SuiteSparse @stdlib/SuiteSparse
[fa267f1f] TOML v1.0.3 @stdlib/TOML
[a4e569a6] Tar v1.10.0 @stdlib/Tar
[8dfed614] Test @stdlib/Test
[cf7118a7] UUIDs @stdlib/UUIDs
[4ec0a83e] Unicode @stdlib/Unicode
[e66e0078] CompilerSupportLibraries_jll v1.0.5+0 @stdlib/CompilerSupportLibraries_jll
[deac9b47] LibCURL_jll v7.84.0+0 @stdlib/LibCURL_jll
[29816b5a] LibSSH2_jll v1.10.2+0 @stdlib/LibSSH2_jll
[c8ffd9c3] MbedTLS_jll v2.28.2+0 @stdlib/MbedTLS_jll
[14a3606d] MozillaCACerts_jll v2022.10.11 @stdlib/MozillaCACerts_jll
[4536629a] OpenBLAS_jll v0.3.21+4 @stdlib/OpenBLAS_jll
[05823500] OpenLibm_jll v0.8.1+0 @stdlib/OpenLibm_jll
[bea87d4a] SuiteSparse_jll v5.10.1+6 @stdlib/SuiteSparse_jll
[83775a58] Zlib_jll v1.2.13+0 @stdlib/Zlib_jll
[8e850b90] libblastrampoline_jll v5.8.0+0 @stdlib/libblastrampoline_jll
[8e850ede] nghttp2_jll v1.48.0+0 @stdlib/nghttp2_jll
[3f19e933] p7zip_jll v17.4.0+0 @stdlib/p7zip_jll
Info Packages marked with ⌃ and ⌅ have new versions available, but those with ⌅ are restricted by compatibility constraints from upgrading.
Testing Running tests...
Julia Version 1.9.3
Commit bed2cd540a* (2023-08-24 14:43 UTC)
Build Info:

Note: This is an unofficial build, please report bugs to the project
responsible for this build and not to the Julia project unless you can
reproduce the issue using official builds available at https://julialang.org/downloads

Platform Info:
OS: Linux (x86_64-linux-gnu)
Ubuntu 23.04
uname: Linux 6.2.0-27-generic #28-Ubuntu SMP PREEMPT_DYNAMIC Wed Jul 12 22:39:51 UTC 2023 x86_64 x86_64
CPU: AMD Ryzen 5 2600 Six-Core Processor:
speed user nice sys idle irq
#1-12 3568 MHz 2116987 s 845 s 237102 s 1711553 s 0 s
Memory: 31.254104614257812 GB (14033.23828125 MB free)
Uptime: 339172.32 sec
Load Avg: 2.08 2.11 2.01
WORD_SIZE: 64
LIBM: libopenlibm
LLVM: libLLVM-14.0.6 (ORCJIT, znver1)
Threads: 1 on 12 virtual cores
Environment:
JULIA_LOAD_PATH = @:/tmp/jl_ojwN5D
MANDATORY_PATH = /usr/share/gconf/ubuntu.mandatory.path
WINDOWPATH = 2
HOME = /home/nano2
QTWEBENGINE_DICTIONARIES_PATH = /usr/share/hunspell-bdic/
TERM = xterm-256color
DEFAULTS_PATH = /usr/share/gconf/ubuntu.default.path
PATH = /home/nano2/miniconda3/bin:/home/nano2/.cargo/bin:/home/nano2/.nix-profile/bin:/home/nano2/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/opt/rocm/bin:/opt/rocm/profiler/bin:/opt/rocm/opencl/bin/x86_64:/opt/rocm/bin:/opt/rocm/profiler/bin:/opt/rocm/opencl/bin/x86_64:/opt/rocm/bin:/opt/rocm/rocprofiler/bin:/opt/rocm/opencl/bin:/opt/rocm/bin:/opt/rocm/profiler/bin:/opt/rocm/opencl/bin
g ≈ gfdd = false
isapprox(g, gfdd, rtol = 0.1) = false
isapprox(g, gfdd, rtol = 0.01) = false
isapprox(g, gfdd, rtol = 0.001) = false
isapprox(g, gfdd, rtol = 0.0001) = false
isapprox(g, gfdd, rtol = 1.0e-5) = false
isapprox(g, gfdd, rtol = 1.0e-6) = false
isapprox(g, gfdd, rtol = 1.0e-7) = false
isapprox(g, gfdd, rtol = 1.0e-8) = false
┌ Warning: #= /home/nano2/.julia/packages/SimpleChains/s87SI/src/conv.jl:145 =#:
LoopVectorization.check_args on your inputs failed; running fallback @inbounds @fastmath loop instead.
│ Use warn_check_args=false, e.g. @turbo warn_check_args=false ..., to disable this warning.
└ @ SimpleChains ~/.julia/packages/LoopVectorization/XbdFG/src/condense_loopset.jl:1148
┌ Warning: #= /home/nano2/.julia/packages/SimpleChains/s87SI/src/maxpool.jl:90 =#:
LoopVectorization.check_args on your inputs failed; running fallback @inbounds @fastmath loop instead.
│ Use warn_check_args=false, e.g. @turbo warn_check_args=false ..., to disable this warning.
└ @ SimpleChains ~/.julia/packages/LoopVectorization/XbdFG/src/condense_loopset.jl:1148
2.971428 seconds (6.52 M allocations: 368.437 MiB, 7.40% gc time, 99.73% compilation time)
101.356765 seconds (1.10 M allocations: 67.983 MiB, 0.03% gc time, 0.97% compilation time)
100.870572 seconds (229.38 k allocations: 12.992 MiB, 0.03% gc time, 0.25% compilation time)
22.213415 seconds (2.24 M allocations: 141.942 MiB, 0.51% gc time, 9.86% compilation time)
Test Summary: | Pass Total Time
SimpleChains.jl | 339 339 8m35.3s
Test Summary: |Time
Method ambiguity | None 0.0s
Test Summary: | Pass Total Time
Unbound type parameters | 1 1 0.6s
Test Summary: | Pass Total Time
Undefined exports | 1 1 0.0s
Test Summary: | Pass Total Time
Compare Project.toml and test/Project.toml | 1 1 0.1s
Test Summary: | Pass Total Time
Stale dependencies | 1 1 3.4s
Test Summary: | Pass Total Time
Compat bounds | 1 1 0.3s
Test Summary: |Time
Project.toml formatting | None 0.0s
Test Summary: | Pass Total Time
Piracy | 1 1 0.3s
Testing SimpleChains tests passed

@bendat78
Copy link
Author

I just tested on the official build of julia 1.9.3 as well as SimpleChains 0.4.6 and noticed that the tests fail if I only use one thread. But starting julia with -t auto -p auto the tests pass.

@chriselrod
Copy link
Contributor

I just tested on the official build of julia 1.9.3 as well as SimpleChains 0.4.6 and noticed that the tests fail if I only use one thread. But starting julia with -t auto -p auto the tests pass.

I can confirm this is true for me, too. I'll look into it.

@chriselrod
Copy link
Contributor

This might be a LoopVectorization issue. It works without crashing or error when I start Julia with --check-bounds=yes and swap the comments in src/SimpleChains.jl

# using LoopVectorization: matmul_params, @turbo
using LoopVectorization: matmul_params
macro turbo(ex)
  esc(ex)
end
macro turbo(ex0, ex1)
  esc(ex1)
end
macro turbo(ex0, ex1, ex2)
  esc(ex2)
end

@bendat78
Copy link
Author

bendat78 commented Aug 30, 2023

That works, but is also highly undesirable speedwise. They explicitly write that they dont do any memory or bounds checking in LoopVectorisation.jl. Since it also works when I manually preallocate the gradient buffer, maybe there is an error in the memory allocation in SimpleChains.jl before @turbo is used?

with @turbo (2 threads)
1.981636 seconds (3.11 M allocations: 192.309 MiB, 7.06% gc time, 99.57% compilation time)
52.226818 seconds (2.01 M allocations: 123.648 MiB, 0.25% gc time, 3.93% compilation time)
49.663815 seconds (532.06 k allocations: 32.564 MiB, 0.07% gc time, 1.18% compilation time)
19.238580 seconds (11 allocations: 480 bytes)
0.044074 seconds (1 allocation: 288 bytes)
without @turbo (2 threads)
1.220050 seconds (2.32 M allocations: 140.314 MiB, 6.84% gc time, 99.29% compilation time)
333.388583 seconds (1.46 M allocations: 95.202 MiB, 0.02% gc time, 0.44% compilation time)
373.143320 seconds (440.44 k allocations: 29.006 MiB, 0.01% gc time, 0.13% compilation time)
148.560113 seconds (11 allocations: 480 bytes)
0.193813 seconds (1 allocation: 288 bytes)

@bendat78
Copy link
Author

bendat78 commented Aug 31, 2023

This comment was before your fix:

bisecting leaves me at this commit of SimpleChains.jl:
[bbd81fa] Use Threads.nthreads, not CPUSummary.num_threads

I suspected StrideArraysCore but changing to version 0.4.17 didnt help
Changing VectorizationBase to 0.21.64 didnt help
Changing LoopVectorization to 0.12.165 also didnt help

All of these seem to work fine with more than one thread

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 this pull request may close these issues.

2 participants