diff --git a/Manifest-v1.12.toml b/Manifest-v1.12.toml index 8500218..89a6680 100644 --- a/Manifest-v1.12.toml +++ b/Manifest-v1.12.toml @@ -1,6 +1,6 @@ # This file is machine-generated - editing it directly is not advised -julia_version = "1.12.2" +julia_version = "1.12.5" manifest_format = "2.1" project_hash = "cd33f96d90dea0a8460dc11e6836b8f4287fd944" @@ -56,9 +56,9 @@ version = "1.11.0" [[deps.JSON]] deps = ["Dates", "Logging", "Parsers", "PrecompileTools", "StructUtils", "UUIDs", "Unicode"] -git-tree-sha1 = "5b6bb73f555bc753a6153deec3717b8904f5551c" +git-tree-sha1 = "b3ad4a0255688dcb895a52fafbaae3023b588a90" uuid = "682c06a0-de6a-54ab-a142-c8b1cf79cde6" -version = "1.3.0" +version = "1.4.0" [deps.JSON.extensions] JSONArrowExt = ["ArrowTypes"] @@ -108,9 +108,9 @@ version = "1.3.3" [[deps.Preferences]] deps = ["TOML"] -git-tree-sha1 = "0f27480397253da18fe2c12a4ba4eb9eb208bf3d" +git-tree-sha1 = "522f093a29b31a93e34eaea17ba055d850edea28" uuid = "21216c6a-2e73-6563-6e65-726566657250" -version = "1.5.0" +version = "1.5.1" [[deps.Printf]] deps = ["Unicode"] @@ -167,9 +167,9 @@ weakdeps = ["SparseArrays"] [[deps.StructUtils]] deps = ["Dates", "UUIDs"] -git-tree-sha1 = "79529b493a44927dd5b13dde1c7ce957c2d049e4" +git-tree-sha1 = "28145feabf717c5d65c1d5e09747ee7b1ff3ed13" uuid = "ec057cc2-7a8d-4b58-b3b3-92acb9f63b42" -version = "2.6.0" +version = "2.6.3" [deps.StructUtils.extensions] StructUtilsMeasurementsExt = ["Measurements"] diff --git a/Manifest-v1.14.toml b/Manifest-v1.14.toml index 0ad96ef..9495551 100644 --- a/Manifest-v1.14.toml +++ b/Manifest-v1.14.toml @@ -8,16 +8,25 @@ project_hash = "cd33f96d90dea0a8460dc11e6836b8f4287fd944" uuid = "56f22d72-fd6d-98f1-02f0-08ddc0907c33" version = "1.11.0" + [deps.Artifacts.syntax] + julia_version = "1.14.0-DEV.1721" + [[deps.Base64]] uuid = "2a0f44e3-6c83-55bd-87e4-b1978d98bd5f" version = "1.11.0" + [deps.Base64.syntax] + julia_version = "1.14.0-DEV.1721" + [[deps.BaseBenchmarks]] deps = ["BenchmarkTools", "Dates", "Distributed", "InteractiveUtils", "LinearAlgebra", "Printf", "REPL", "Random", "Serialization", "SparseArrays", "StableRNGs", "Statistics"] path = "." uuid = "d7f09723-0a21-57e2-b9ef-316b714b6879" version = "0.0.0" + [deps.BaseBenchmarks.syntax] + julia_version = "1.10.0" + [[deps.BenchmarkTools]] deps = ["Compat", "JSON", "Logging", "Printf", "Profile", "Statistics", "UUIDs"] git-tree-sha1 = "7fecfb1123b8d0232218e2da0c213004ff15358d" @@ -25,6 +34,9 @@ registries = "General" uuid = "6e4b80f9-dd63-53aa-95a3-0cdb28fa8baf" version = "1.6.3" + [deps.BenchmarkTools.syntax] + julia_version = "1.6.0" + [[deps.Compat]] deps = ["TOML", "UUIDs"] git-tree-sha1 = "9d8a54ce4b17aa5bdce0ea5c34bc5e7c340d16ad" @@ -36,70 +48,109 @@ weakdeps = ["Dates", "LinearAlgebra"] [deps.Compat.extensions] CompatLinearAlgebraExt = "LinearAlgebra" + [deps.Compat.syntax] + julia_version = "1.6.0" + [[deps.CompilerSupportLibraries_jll]] deps = ["Artifacts", "Libdl"] uuid = "e66e0078-7015-5450-92f7-15fbd957f2ae" version = "1.3.0+1" + [deps.CompilerSupportLibraries_jll.syntax] + julia_version = "1.6.0" + [[deps.Dates]] deps = ["Printf"] uuid = "ade2ca70-3891-5945-98fb-dc099432e06a" version = "1.11.0" + [deps.Dates.syntax] + julia_version = "1.14.0-DEV.1721" + [[deps.Distributed]] deps = ["Random", "Serialization", "Sockets"] uuid = "8ba89e20-285c-5b6f-9357-94700520ee1b" version = "1.11.0" + [deps.Distributed.syntax] + julia_version = "1.0.0" + [[deps.FileWatching]] uuid = "7b1f6079-737a-58dc-b8bc-7a2ca5c1b5ee" version = "1.11.0" + [deps.FileWatching.syntax] + julia_version = "1.14.0-DEV.1721" + [[deps.InteractiveUtils]] deps = ["Markdown"] uuid = "b77e0a4c-d291-57a0-90e8-8db25a27a240" version = "1.11.0" + [deps.InteractiveUtils.syntax] + julia_version = "1.14.0-DEV.1721" + [[deps.JSON]] deps = ["Dates", "Logging", "Parsers", "PrecompileTools", "StructUtils", "UUIDs", "Unicode"] -git-tree-sha1 = "5b6bb73f555bc753a6153deec3717b8904f5551c" +git-tree-sha1 = "b3ad4a0255688dcb895a52fafbaae3023b588a90" registries = "General" uuid = "682c06a0-de6a-54ab-a142-c8b1cf79cde6" -version = "1.3.0" +version = "1.4.0" [deps.JSON.extensions] JSONArrowExt = ["ArrowTypes"] + [deps.JSON.syntax] + julia_version = "1.9.0" + [deps.JSON.weakdeps] ArrowTypes = "31f734f8-188a-4ce0-8406-c8a06bd891cd" [[deps.JuliaSyntaxHighlighting]] deps = ["StyledStrings"] uuid = "ac6e5ff7-fb65-4e79-a425-ec3bc9c03011" -version = "1.12.0" +version = "1.13.0" + + [deps.JuliaSyntaxHighlighting.syntax] + julia_version = "1.12.0" [[deps.Libdl]] uuid = "8f399da3-3557-5675-b5ff-fb832c97cbdb" version = "1.11.0" + [deps.Libdl.syntax] + julia_version = "1.14.0-DEV.1721" + [[deps.LinearAlgebra]] deps = ["Libdl", "OpenBLAS_jll", "libblastrampoline_jll"] uuid = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" version = "1.13.0" + [deps.LinearAlgebra.syntax] + julia_version = "1.14.0-DEV.1721" + [[deps.Logging]] uuid = "56ddb016-857b-54e1-b83d-db4d58db5568" version = "1.11.0" + [deps.Logging.syntax] + julia_version = "1.14.0-DEV.1721" + [[deps.Markdown]] deps = ["Base64", "JuliaSyntaxHighlighting", "StyledStrings"] uuid = "d6f4376e-aef5-505a-96c1-9c027394607a" version = "1.11.0" + [deps.Markdown.syntax] + julia_version = "1.14.0-DEV.1721" + [[deps.OpenBLAS_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "Libdl"] uuid = "4536629a-c528-5b80-bd46-f80d51c5b363" -version = "0.3.29+0" +version = "0.3.30+0" + + [deps.OpenBLAS_jll.syntax] + julia_version = "1.11.0" [[deps.Parsers]] deps = ["Dates", "PrecompileTools", "UUIDs"] @@ -108,6 +159,9 @@ registries = "General" uuid = "69de0a69-1ddd-5017-9359-2bf0b02dc9f0" version = "2.8.3" + [deps.Parsers.syntax] + julia_version = "1.6.0" + [[deps.PrecompileTools]] deps = ["Preferences"] git-tree-sha1 = "07a921781cab75691315adc645096ed5e370cb77" @@ -115,50 +169,80 @@ registries = "General" uuid = "aea7be01-6a6a-4083-8856-8a6e6704d82a" version = "1.3.3" + [deps.PrecompileTools.syntax] + julia_version = "1.12.0" + [[deps.Preferences]] deps = ["TOML"] -git-tree-sha1 = "0f27480397253da18fe2c12a4ba4eb9eb208bf3d" +git-tree-sha1 = "522f093a29b31a93e34eaea17ba055d850edea28" registries = "General" uuid = "21216c6a-2e73-6563-6e65-726566657250" -version = "1.5.0" +version = "1.5.1" + + [deps.Preferences.syntax] + julia_version = "1.0.0" [[deps.Printf]] deps = ["Unicode"] uuid = "de0858da-6303-5e67-8744-51eddeeeb8d7" version = "1.11.0" + [deps.Printf.syntax] + julia_version = "1.14.0-DEV.1721" + [[deps.Profile]] deps = ["StyledStrings"] uuid = "9abbd945-dff8-562f-b5e8-e1ebf5ef1b79" version = "1.11.0" + [deps.Profile.syntax] + julia_version = "1.14.0-DEV.1721" + [[deps.REPL]] deps = ["Dates", "FileWatching", "InteractiveUtils", "JuliaSyntaxHighlighting", "Markdown", "Sockets", "StyledStrings", "Unicode"] uuid = "3fa0cd96-eef1-5676-8a61-b3b8758bbffb" version = "1.11.0" + [deps.REPL.syntax] + julia_version = "1.14.0-DEV.1721" + [[deps.Random]] deps = ["SHA"] uuid = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c" version = "1.11.0" + [deps.Random.syntax] + julia_version = "1.14.0-DEV.1721" + [[deps.SHA]] uuid = "ea8e919c-243c-51af-8825-aaa63cd721ce" version = "1.0.0" + [deps.SHA.syntax] + julia_version = "1.0.0" + [[deps.Serialization]] uuid = "9e88b42a-f829-5b0c-bbe9-9e923198166b" version = "1.11.0" + [deps.Serialization.syntax] + julia_version = "1.14.0-DEV.1721" + [[deps.Sockets]] uuid = "6462fe0b-24de-5631-8697-dd941f90decc" version = "1.11.0" + [deps.Sockets.syntax] + julia_version = "1.14.0-DEV.1721" + [[deps.SparseArrays]] deps = ["Libdl", "LinearAlgebra", "Random", "Serialization", "SuiteSparse_jll"] uuid = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" version = "1.13.0" + [deps.SparseArrays.syntax] + julia_version = "1.11.0" + [[deps.StableRNGs]] deps = ["Random"] git-tree-sha1 = "4f96c596b8c8258cc7d3b19797854d368f243ddc" @@ -166,6 +250,9 @@ registries = "General" uuid = "860ef19b-820b-49d6-a774-d7a799459cd3" version = "1.0.4" + [deps.StableRNGs.syntax] + julia_version = "1.0.0" + [[deps.Statistics]] deps = ["LinearAlgebra"] git-tree-sha1 = "ae3bb1eb3bba077cd276bc5cfc337cc65c3075c0" @@ -177,49 +264,73 @@ weakdeps = ["SparseArrays"] [deps.Statistics.extensions] SparseArraysExt = ["SparseArrays"] + [deps.Statistics.syntax] + julia_version = "1.9.4" + [[deps.StructUtils]] deps = ["Dates", "UUIDs"] -git-tree-sha1 = "79529b493a44927dd5b13dde1c7ce957c2d049e4" +git-tree-sha1 = "28145feabf717c5d65c1d5e09747ee7b1ff3ed13" registries = "General" uuid = "ec057cc2-7a8d-4b58-b3b3-92acb9f63b42" -version = "2.6.0" +version = "2.6.3" [deps.StructUtils.extensions] StructUtilsMeasurementsExt = ["Measurements"] StructUtilsTablesExt = ["Tables"] + [deps.StructUtils.syntax] + julia_version = "1.9.0" + [deps.StructUtils.weakdeps] Measurements = "eff96d63-e80a-5855-80a2-b1b0885c5ab7" Tables = "bd369af6-aec1-5ad0-b16a-f7cc5008161c" [[deps.StyledStrings]] uuid = "f489334b-da3d-4c2e-b8f0-e476e12c162b" -version = "1.11.0" +version = "1.13.0" + + [deps.StyledStrings.syntax] + julia_version = "1.11.0" [[deps.SuiteSparse_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "Libdl", "libblastrampoline_jll"] uuid = "bea87d4a-7f5b-5778-9afe-8cc45184846c" version = "7.10.1+0" + [deps.SuiteSparse_jll.syntax] + julia_version = "1.13.0" + [[deps.TOML]] deps = ["Dates"] uuid = "fa267f1f-6049-4f14-aa54-33bafae1ed76" version = "1.0.3" + [deps.TOML.syntax] + julia_version = "1.6.0" + [[deps.UUIDs]] deps = ["Random", "SHA"] uuid = "cf7118a7-6976-5b1a-9a39-7adc72f591a4" version = "1.11.0" + [deps.UUIDs.syntax] + julia_version = "1.14.0-DEV.1721" + [[deps.Unicode]] uuid = "4ec0a83e-493e-50e2-b9ac-8f72acf5a8f5" version = "1.11.0" + [deps.Unicode.syntax] + julia_version = "1.14.0-DEV.1721" + [[deps.libblastrampoline_jll]] deps = ["Artifacts", "Libdl"] uuid = "8e850b90-86db-534c-a0d3-1478176c7d93" version = "5.15.0+0" + [deps.libblastrampoline_jll.syntax] + julia_version = "1.13.0" + [registries.General] url = "https://github.com/JuliaRegistries/General.git" uuid = "23338594-aafe-5451-b93e-139f81909106" diff --git a/src/inference/InferenceBenchmarks.jl b/src/inference/InferenceBenchmarks.jl index 0b56e35..2548272 100644 --- a/src/inference/InferenceBenchmarks.jl +++ b/src/inference/InferenceBenchmarks.jl @@ -46,6 +46,14 @@ using Base: get_world_counter using InteractiveUtils: gen_call_with_extracted_types_and_kwargs using BenchmarkTools: @benchmarkable, BenchmarkGroup, addgroup! +@static if VERSION ≥ v"1.14.0-DEV.1691" + const InfCacheType = CC.InferenceCache + _empty_inf_cache() = CC.InferenceCache() +else + const InfCacheType = Vector{InferenceResult} + _empty_inf_cache() = InferenceResult[] +end + struct InferenceBenchmarkerCache dict::IdDict{MethodInstance,CodeInstance} InferenceBenchmarkerCache() = new(IdDict{MethodInstance,CodeInstance}()) @@ -57,7 +65,7 @@ struct InferenceBenchmarker <: AbstractInterpreter optimize::Bool compress::Bool discard_trees::Bool - inf_cache::Vector{InferenceResult} + inf_cache::InfCacheType code_cache::InferenceBenchmarkerCache function InferenceBenchmarker( world::UInt = get_world_counter(); @@ -66,7 +74,7 @@ struct InferenceBenchmarker <: AbstractInterpreter optimize::Bool = true, compress::Bool = true, discard_trees::Bool = true, - inf_cache::Vector{InferenceResult} = InferenceResult[], + inf_cache::InfCacheType = _empty_inf_cache(), code_cache::InferenceBenchmarkerCache = InferenceBenchmarkerCache()) return new( world,