diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index 87b2d8d..573ef22 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -14,7 +14,7 @@ steps: cuda: "*" multigpu: "*" if: build.message !~ /\[skip tests\]/ - timeout_in_minutes: 30 + timeout_in_minutes: 45 matrix: setup: julia: @@ -37,10 +37,11 @@ steps: cuda: "*" multigpu: "*" if: build.message !~ /\[skip tests\]/ && !build.pull_request.draft - timeout_in_minutes: 30 + timeout_in_minutes: 45 matrix: setup: cuda: + - "13.0" - "12.9" - "12.8" - "12.6" @@ -50,11 +51,6 @@ steps: - "12.2" - "12.1" - "12.0" - - "11.8" - - "11.7" - - "11.6" - - "11.5" - - "11.4" commands: | echo -e "[extras]\nCUDA_Runtime_jll = \"76a88914-d11a-5bdc-97e0-2f5a05c973a2\"\nCUDA_Driver_jll = \"4ee394cb-3365-5eb0-8335-949819d2adfc\"" >>test/Project.toml echo -e "[CUDA_Runtime_jll]\nversion = \"{{matrix.cuda}}\"" >test/LocalPreferences.toml diff --git a/.github/workflows/Documenter.yml b/.github/workflows/Documenter.yml index 2955d68..40ead81 100644 --- a/.github/workflows/Documenter.yml +++ b/.github/workflows/Documenter.yml @@ -1,7 +1,7 @@ name: Documenter on: push: - branches: [master] + branches: [main, master] tags: [v*] pull_request: @@ -9,12 +9,17 @@ jobs: Documenter: permissions: contents: write + statuses: write name: Documentation runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 + - uses: julia-actions/setup-julia@v2 + with: + version: '1' + show-versioninfo: true + - uses: julia-actions/cache@v2 - uses: julia-actions/julia-buildpkg@v1 - uses: julia-actions/julia-docdeploy@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - DOCUMENTER_KEY: ${{ secrets.DOCUMENTER_KEY }} diff --git a/Project.toml b/Project.toml index 25456f5..515bc2b 100644 --- a/Project.toml +++ b/Project.toml @@ -1,6 +1,6 @@ name = "NCCL" uuid = "3fe64909-d7a1-4096-9b7d-7a0f12cf0f6b" -version = "0.1.1" +version = "0.1.2" [deps] CEnum = "fa961155-64e5-5f13-b03f-caf6b980ea82" @@ -10,4 +10,5 @@ NCCL_jll = "4d6d38e4-5b87-5e63-912a-873ff2d649b7" [compat] CEnum = "0.2, 0.3, 0.4, 0.5" CUDA = "5" +NCCL_jll = "2.28.3" julia = "1.10" diff --git a/docs/Manifest.toml b/docs/Manifest.toml deleted file mode 100644 index d4588f8..0000000 --- a/docs/Manifest.toml +++ /dev/null @@ -1,655 +0,0 @@ -# This file is machine-generated - editing it directly is not advised - -julia_version = "1.10.0" -manifest_format = "2.0" -project_hash = "831b73d63aaf456e94a12b6c19c53fdd65b198c9" - -[[deps.ANSIColoredPrinters]] -git-tree-sha1 = "574baf8110975760d391c710b6341da1afa48d8c" -uuid = "a4c015fc-c6ff-483c-b24f-f7ea428134e9" -version = "0.0.1" - -[[deps.AbstractFFTs]] -deps = ["LinearAlgebra"] -git-tree-sha1 = "d92ad398961a3ed262d8bf04a1a2b8340f915fef" -uuid = "621f4979-c628-5d54-868e-fcf4e3e8185c" -version = "1.5.0" - - [deps.AbstractFFTs.extensions] - AbstractFFTsChainRulesCoreExt = "ChainRulesCore" - AbstractFFTsTestExt = "Test" - - [deps.AbstractFFTs.weakdeps] - ChainRulesCore = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" - Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" - -[[deps.AbstractTrees]] -git-tree-sha1 = "faa260e4cb5aba097a73fab382dd4b5819d8ec8c" -uuid = "1520ce14-60c1-5f80-bbc7-55ef81b5835c" -version = "0.4.4" - -[[deps.Adapt]] -deps = ["LinearAlgebra", "Requires"] -git-tree-sha1 = "cde29ddf7e5726c9fb511f340244ea3481267608" -uuid = "79e6a3ab-5dfb-504d-930d-738a2a938a0e" -version = "3.7.2" -weakdeps = ["StaticArrays"] - - [deps.Adapt.extensions] - AdaptStaticArraysExt = "StaticArrays" - -[[deps.ArgTools]] -uuid = "0dad84c5-d112-42e6-8d28-ef12dabb789f" -version = "1.1.1" - -[[deps.Artifacts]] -uuid = "56f22d72-fd6d-98f1-02f0-08ddc0907c33" - -[[deps.Atomix]] -deps = ["UnsafeAtomics"] -git-tree-sha1 = "c06a868224ecba914baa6942988e2f2aade419be" -uuid = "a9b6321e-bd34-4604-b9c9-b65b8de01458" -version = "0.1.0" - -[[deps.BFloat16s]] -deps = ["LinearAlgebra", "Printf", "Random", "Test"] -git-tree-sha1 = "dbf84058d0a8cbbadee18d25cf606934b22d7c66" -uuid = "ab4f0b2a-ad5b-11e8-123f-65d77653426b" -version = "0.4.2" - -[[deps.Base64]] -uuid = "2a0f44e3-6c83-55bd-87e4-b1978d98bd5f" - -[[deps.CEnum]] -git-tree-sha1 = "389ad5c84de1ae7cf0e28e381131c98ea87d54fc" -uuid = "fa961155-64e5-5f13-b03f-caf6b980ea82" -version = "0.5.0" - -[[deps.CUDA]] -deps = ["AbstractFFTs", "Adapt", "BFloat16s", "CEnum", "CUDA_Driver_jll", "CUDA_Runtime_Discovery", "CUDA_Runtime_jll", "Crayons", "DataFrames", "ExprTools", "GPUArrays", "GPUCompiler", "KernelAbstractions", "LLVM", "LLVMLoopInfo", "LazyArtifacts", "Libdl", "LinearAlgebra", "Logging", "NVTX", "Preferences", "PrettyTables", "Printf", "Random", "Random123", "RandomNumbers", "Reexport", "Requires", "SparseArrays", "Statistics", "UnsafeAtomicsLLVM"] -git-tree-sha1 = "76582ae19006b1186e87dadd781747f76cead72c" -uuid = "052768ef-5323-5732-b1bb-66c8b64840ba" -version = "5.1.1" - - [deps.CUDA.extensions] - ChainRulesCoreExt = "ChainRulesCore" - SpecialFunctionsExt = "SpecialFunctions" - - [deps.CUDA.weakdeps] - ChainRulesCore = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" - SpecialFunctions = "276daf66-3868-5448-9aa4-cd146d93841b" - -[[deps.CUDA_Driver_jll]] -deps = ["Artifacts", "JLLWrappers", "LazyArtifacts", "Libdl", "Pkg"] -git-tree-sha1 = "1e42ef1bdb45487ff28de16182c0df4920181dc3" -uuid = "4ee394cb-3365-5eb0-8335-949819d2adfc" -version = "0.7.0+0" - -[[deps.CUDA_Runtime_Discovery]] -deps = ["Libdl"] -git-tree-sha1 = "bcc4a23cbbd99c8535a5318455dcf0f2546ec536" -uuid = "1af6417a-86b4-443c-805f-a4643ffb695f" -version = "0.2.2" - -[[deps.CUDA_Runtime_jll]] -deps = ["Artifacts", "CUDA_Driver_jll", "JLLWrappers", "LazyArtifacts", "Libdl", "TOML"] -git-tree-sha1 = "9704e50c9158cf8896c2776b8dbc5edd136caf80" -uuid = "76a88914-d11a-5bdc-97e0-2f5a05c973a2" -version = "0.10.1+0" - -[[deps.ColorTypes]] -deps = ["FixedPointNumbers", "Random"] -git-tree-sha1 = "eb7f0f8307f71fac7c606984ea5fb2817275d6e4" -uuid = "3da002f7-5984-5a60-b8a6-cbb66c0b333f" -version = "0.11.4" - -[[deps.Colors]] -deps = ["ColorTypes", "FixedPointNumbers", "Reexport"] -git-tree-sha1 = "fc08e5930ee9a4e03f84bfb5211cb54e7769758a" -uuid = "5ae59095-9a9b-59fe-a467-6f913c188581" -version = "0.12.10" - -[[deps.Compat]] -deps = ["UUIDs"] -git-tree-sha1 = "886826d76ea9e72b35fcd000e535588f7b60f21d" -uuid = "34da2185-b29b-5c13-b0c7-acf172513d20" -version = "4.10.1" -weakdeps = ["Dates", "LinearAlgebra"] - - [deps.Compat.extensions] - CompatLinearAlgebraExt = "LinearAlgebra" - -[[deps.CompilerSupportLibraries_jll]] -deps = ["Artifacts", "Libdl"] -uuid = "e66e0078-7015-5450-92f7-15fbd957f2ae" -version = "1.0.5+1" - -[[deps.Crayons]] -git-tree-sha1 = "249fe38abf76d48563e2f4556bebd215aa317e15" -uuid = "a8cc5b0e-0ffa-5ad4-8c14-923d3ee1735f" -version = "4.1.1" - -[[deps.DataAPI]] -git-tree-sha1 = "8da84edb865b0b5b0100c0666a9bc9a0b71c553c" -uuid = "9a962f9c-6df0-11e9-0e5d-c546b8b5ee8a" -version = "1.15.0" - -[[deps.DataFrames]] -deps = ["Compat", "DataAPI", "DataStructures", "Future", "InlineStrings", "InvertedIndices", "IteratorInterfaceExtensions", "LinearAlgebra", "Markdown", "Missings", "PooledArrays", "PrecompileTools", "PrettyTables", "Printf", "REPL", "Random", "Reexport", "SentinelArrays", "SortingAlgorithms", "Statistics", "TableTraits", "Tables", "Unicode"] -git-tree-sha1 = "04c738083f29f86e62c8afc341f0967d8717bdb8" -uuid = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0" -version = "1.6.1" - -[[deps.DataStructures]] -deps = ["Compat", "InteractiveUtils", "OrderedCollections"] -git-tree-sha1 = "3dbd312d370723b6bb43ba9d02fc36abade4518d" -uuid = "864edb3b-99cc-5e75-8d2d-829cb0a9cfe8" -version = "0.18.15" - -[[deps.DataValueInterfaces]] -git-tree-sha1 = "bfc1187b79289637fa0ef6d4436ebdfe6905cbd6" -uuid = "e2d170a0-9d28-54be-80f0-106bbe20a464" -version = "1.0.0" - -[[deps.Dates]] -deps = ["Printf"] -uuid = "ade2ca70-3891-5945-98fb-dc099432e06a" - -[[deps.DocStringExtensions]] -deps = ["LibGit2"] -git-tree-sha1 = "2fb1e02f2b635d0845df5d7c167fec4dd739b00d" -uuid = "ffbed154-4ef7-542d-bbb7-c09d3a79fcae" -version = "0.9.3" - -[[deps.Documenter]] -deps = ["ANSIColoredPrinters", "AbstractTrees", "Base64", "Dates", "DocStringExtensions", "Downloads", "Git", "IOCapture", "InteractiveUtils", "JSON", "LibGit2", "Logging", "Markdown", "MarkdownAST", "Pkg", "PrecompileTools", "REPL", "RegistryInstances", "SHA", "Test", "Unicode"] -git-tree-sha1 = "2613dbec8f4748273bbe30ba71fd5cb369966bac" -uuid = "e30172f5-a6a5-5a46-863b-614d45cd2de4" -version = "1.2.1" - -[[deps.Downloads]] -deps = ["ArgTools", "FileWatching", "LibCURL", "NetworkOptions"] -uuid = "f43a241f-c20a-4ad4-852c-f6b1247861c6" -version = "1.6.0" - -[[deps.Expat_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "4558ab818dcceaab612d1bb8c19cee87eda2b83c" -uuid = "2e619515-83b5-522b-bb60-26c02a35a201" -version = "2.5.0+0" - -[[deps.ExprTools]] -git-tree-sha1 = "27415f162e6028e81c72b82ef756bf321213b6ec" -uuid = "e2ba6199-217a-4e67-a87a-7c52f15ade04" -version = "0.1.10" - -[[deps.FileWatching]] -uuid = "7b1f6079-737a-58dc-b8bc-7a2ca5c1b5ee" - -[[deps.FixedPointNumbers]] -deps = ["Statistics"] -git-tree-sha1 = "335bfdceacc84c5cdf16aadc768aa5ddfc5383cc" -uuid = "53c48c17-4a7d-5ca2-90c5-79b7896eea93" -version = "0.8.4" - -[[deps.Future]] -deps = ["Random"] -uuid = "9fa8497b-333b-5362-9e8d-4d0656e87820" - -[[deps.GPUArrays]] -deps = ["Adapt", "GPUArraysCore", "LLVM", "LinearAlgebra", "Printf", "Random", "Reexport", "Serialization", "Statistics"] -git-tree-sha1 = "85d7fb51afb3def5dcb85ad31c3707795c8bccc1" -uuid = "0c68f7d7-f131-5f86-a1c3-88cf8149b2d7" -version = "9.1.0" - -[[deps.GPUArraysCore]] -deps = ["Adapt"] -git-tree-sha1 = "2d6ca471a6c7b536127afccfa7564b5b39227fe0" -uuid = "46192b85-c4d5-4398-a991-12ede77f4527" -version = "0.1.5" - -[[deps.GPUCompiler]] -deps = ["ExprTools", "InteractiveUtils", "LLVM", "Libdl", "Logging", "Scratch", "TimerOutputs", "UUIDs"] -git-tree-sha1 = "a846f297ce9d09ccba02ead0cae70690e072a119" -uuid = "61eb1bfa-7361-4325-ad38-22787b887f55" -version = "0.25.0" - -[[deps.Git]] -deps = ["Git_jll"] -git-tree-sha1 = "51764e6c2e84c37055e846c516e9015b4a291c7d" -uuid = "d7ba0133-e1db-5d97-8f8c-041e4b3a1eb2" -version = "1.3.0" - -[[deps.Git_jll]] -deps = ["Artifacts", "Expat_jll", "JLLWrappers", "LibCURL_jll", "Libdl", "Libiconv_jll", "OpenSSL_jll", "PCRE2_jll", "Zlib_jll"] -git-tree-sha1 = "bb8f7cc77ec1152414b2af6db533d9471cfbb2d1" -uuid = "f8c6e375-362e-5223-8a59-34ff63f689eb" -version = "2.42.0+0" - -[[deps.IOCapture]] -deps = ["Logging", "Random"] -git-tree-sha1 = "d75853a0bdbfb1ac815478bacd89cd27b550ace6" -uuid = "b5f81e59-6552-4d32-b1f0-c071b021bf89" -version = "0.2.3" - -[[deps.InlineStrings]] -deps = ["Parsers"] -git-tree-sha1 = "9cc2baf75c6d09f9da536ddf58eb2f29dedaf461" -uuid = "842dd82b-1e85-43dc-bf29-5d0ee9dffc48" -version = "1.4.0" - -[[deps.InteractiveUtils]] -deps = ["Markdown"] -uuid = "b77e0a4c-d291-57a0-90e8-8db25a27a240" - -[[deps.InvertedIndices]] -git-tree-sha1 = "0dc7b50b8d436461be01300fd8cd45aa0274b038" -uuid = "41ab1584-1d38-5bbf-9106-f11c6c58b48f" -version = "1.3.0" - -[[deps.IteratorInterfaceExtensions]] -git-tree-sha1 = "a3f24677c21f5bbe9d2a714f95dcd58337fb2856" -uuid = "82899510-4779-5014-852e-03e436cf321d" -version = "1.0.0" - -[[deps.JLLWrappers]] -deps = ["Artifacts", "Preferences"] -git-tree-sha1 = "7e5d6779a1e09a36db2a7b6cff50942a0a7d0fca" -uuid = "692b3bcd-3c85-4b1f-b108-f13ce0eb3210" -version = "1.5.0" - -[[deps.JSON]] -deps = ["Dates", "Mmap", "Parsers", "Unicode"] -git-tree-sha1 = "31e996f0a15c7b280ba9f76636b3ff9e2ae58c9a" -uuid = "682c06a0-de6a-54ab-a142-c8b1cf79cde6" -version = "0.21.4" - -[[deps.JuliaNVTXCallbacks_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "af433a10f3942e882d3c671aacb203e006a5808f" -uuid = "9c1d0b0a-7046-5b2e-a33f-ea22f176ac7e" -version = "0.2.1+0" - -[[deps.KernelAbstractions]] -deps = ["Adapt", "Atomix", "InteractiveUtils", "LinearAlgebra", "MacroTools", "PrecompileTools", "Requires", "SparseArrays", "StaticArrays", "UUIDs", "UnsafeAtomics", "UnsafeAtomicsLLVM"] -git-tree-sha1 = "653e0824fc9ab55b3beec67a6dbbe514a65fb954" -uuid = "63c18a36-062a-441e-b654-da1e3ab1ce7c" -version = "0.9.15" - - [deps.KernelAbstractions.extensions] - EnzymeExt = "EnzymeCore" - - [deps.KernelAbstractions.weakdeps] - EnzymeCore = "f151be2c-9106-41f4-ab19-57ee4f262869" - -[[deps.LLVM]] -deps = ["CEnum", "LLVMExtra_jll", "Libdl", "Preferences", "Printf", "Requires", "Unicode"] -git-tree-sha1 = "0678579657515e88b6632a3a482d39adcbb80445" -uuid = "929cbde3-209d-540e-8aea-75f648917ca0" -version = "6.4.1" -weakdeps = ["BFloat16s"] - - [deps.LLVM.extensions] - BFloat16sExt = "BFloat16s" - -[[deps.LLVMExtra_jll]] -deps = ["Artifacts", "JLLWrappers", "LazyArtifacts", "Libdl", "TOML"] -git-tree-sha1 = "98eaee04d96d973e79c25d49167668c5c8fb50e2" -uuid = "dad2f222-ce93-54a1-a47d-0025e8a3acab" -version = "0.0.27+1" - -[[deps.LLVMLoopInfo]] -git-tree-sha1 = "2e5c102cfc41f48ae4740c7eca7743cc7e7b75ea" -uuid = "8b046642-f1f6-4319-8d3c-209ddc03c586" -version = "1.0.0" - -[[deps.LaTeXStrings]] -git-tree-sha1 = "50901ebc375ed41dbf8058da26f9de442febbbec" -uuid = "b964fa9f-0449-5b57-a5c2-d3ea65f4040f" -version = "1.3.1" - -[[deps.LazilyInitializedFields]] -git-tree-sha1 = "8f7f3cabab0fd1800699663533b6d5cb3fc0e612" -uuid = "0e77f7df-68c5-4e49-93ce-4cd80f5598bf" -version = "1.2.2" - -[[deps.LazyArtifacts]] -deps = ["Artifacts", "Pkg"] -uuid = "4af54fe1-eca0-43a8-85a7-787d91b784e3" - -[[deps.LibCURL]] -deps = ["LibCURL_jll", "MozillaCACerts_jll"] -uuid = "b27032c2-a3e7-50c8-80cd-2d36dbcbfd21" -version = "0.6.4" - -[[deps.LibCURL_jll]] -deps = ["Artifacts", "LibSSH2_jll", "Libdl", "MbedTLS_jll", "Zlib_jll", "nghttp2_jll"] -uuid = "deac9b47-8bc7-5906-a0fe-35ac56dc84c0" -version = "8.4.0+0" - -[[deps.LibGit2]] -deps = ["Base64", "LibGit2_jll", "NetworkOptions", "Printf", "SHA"] -uuid = "76f85450-5226-5b5a-8eaa-529ad045b433" - -[[deps.LibGit2_jll]] -deps = ["Artifacts", "LibSSH2_jll", "Libdl", "MbedTLS_jll"] -uuid = "e37daf67-58a4-590a-8e99-b0245dd2ffc5" -version = "1.6.4+0" - -[[deps.LibSSH2_jll]] -deps = ["Artifacts", "Libdl", "MbedTLS_jll"] -uuid = "29816b5a-b9ab-546f-933c-edad1886dfa8" -version = "1.11.0+1" - -[[deps.Libdl]] -uuid = "8f399da3-3557-5675-b5ff-fb832c97cbdb" - -[[deps.Libiconv_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "f9557a255370125b405568f9767d6d195822a175" -uuid = "94ce4f54-9a6c-5748-9c1c-f9c7231a4531" -version = "1.17.0+0" - -[[deps.LinearAlgebra]] -deps = ["Libdl", "OpenBLAS_jll", "libblastrampoline_jll"] -uuid = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" - -[[deps.Logging]] -uuid = "56ddb016-857b-54e1-b83d-db4d58db5568" - -[[deps.MacroTools]] -deps = ["Markdown", "Random"] -git-tree-sha1 = "b211c553c199c111d998ecdaf7623d1b89b69f93" -uuid = "1914dd2f-81c6-5fcd-8719-6d5c9610ff09" -version = "0.5.12" - -[[deps.Markdown]] -deps = ["Base64"] -uuid = "d6f4376e-aef5-505a-96c1-9c027394607a" - -[[deps.MarkdownAST]] -deps = ["AbstractTrees", "Markdown"] -git-tree-sha1 = "465a70f0fc7d443a00dcdc3267a497397b8a3899" -uuid = "d0879d2d-cac2-40c8-9cee-1863dc0c7391" -version = "0.1.2" - -[[deps.MbedTLS_jll]] -deps = ["Artifacts", "Libdl"] -uuid = "c8ffd9c3-330d-5841-b78e-0817d7145fa1" -version = "2.28.2+1" - -[[deps.Missings]] -deps = ["DataAPI"] -git-tree-sha1 = "f66bdc5de519e8f8ae43bdc598782d35a25b1272" -uuid = "e1d29d7a-bbdc-5cf2-9ac0-f12de2c33e28" -version = "1.1.0" - -[[deps.Mmap]] -uuid = "a63ad114-7e13-5084-954f-fe012c677804" - -[[deps.MozillaCACerts_jll]] -uuid = "14a3606d-f60d-562e-9121-12d972cd8159" -version = "2023.1.10" - -[[deps.NCCL]] -deps = ["CEnum", "CUDA", "NCCL_jll"] -path = ".." -uuid = "3fe64909-d7a1-4096-9b7d-7a0f12cf0f6b" -version = "0.2.0" - -[[deps.NCCL_jll]] -deps = ["Artifacts", "CUDA_Runtime_jll", "CompilerSupportLibraries_jll", "JLLWrappers", "LazyArtifacts", "Libdl", "TOML"] -git-tree-sha1 = "9dcc505d4c7267cb4e1904b3c3f8049ef61d0b4a" -uuid = "4d6d38e4-5b87-5e63-912a-873ff2d649b7" -version = "2.19.4+0" - -[[deps.NVTX]] -deps = ["Colors", "JuliaNVTXCallbacks_jll", "Libdl", "NVTX_jll"] -git-tree-sha1 = "8bc9ce4233be3c63f8dcd78ccaf1b63a9c0baa34" -uuid = "5da4648a-3479-48b8-97b9-01cb529c0a1f" -version = "0.3.3" - -[[deps.NVTX_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "ce3269ed42816bf18d500c9f63418d4b0d9f5a3b" -uuid = "e98f9f5b-d649-5603-91fd-7774390e6439" -version = "3.1.0+2" - -[[deps.NetworkOptions]] -uuid = "ca575930-c2e3-43a9-ace4-1e988b2c1908" -version = "1.2.0" - -[[deps.OpenBLAS_jll]] -deps = ["Artifacts", "CompilerSupportLibraries_jll", "Libdl"] -uuid = "4536629a-c528-5b80-bd46-f80d51c5b363" -version = "0.3.23+2" - -[[deps.OpenSSL_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "cc6e1927ac521b659af340e0ca45828a3ffc748f" -uuid = "458c3c95-2e84-50aa-8efc-19380b2a3a95" -version = "3.0.12+0" - -[[deps.OrderedCollections]] -git-tree-sha1 = "dfdf5519f235516220579f949664f1bf44e741c5" -uuid = "bac558e1-5e72-5ebc-8fee-abe8a469f55d" -version = "1.6.3" - -[[deps.PCRE2_jll]] -deps = ["Artifacts", "Libdl"] -uuid = "efcefdf7-47ab-520b-bdef-62a2eaa19f15" -version = "10.42.0+1" - -[[deps.Parsers]] -deps = ["Dates", "PrecompileTools", "UUIDs"] -git-tree-sha1 = "8489905bcdbcfac64d1daa51ca07c0d8f0283821" -uuid = "69de0a69-1ddd-5017-9359-2bf0b02dc9f0" -version = "2.8.1" - -[[deps.Pkg]] -deps = ["Artifacts", "Dates", "Downloads", "FileWatching", "LibGit2", "Libdl", "Logging", "Markdown", "Printf", "REPL", "Random", "SHA", "Serialization", "TOML", "Tar", "UUIDs", "p7zip_jll"] -uuid = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f" -version = "1.10.0" - -[[deps.PooledArrays]] -deps = ["DataAPI", "Future"] -git-tree-sha1 = "36d8b4b899628fb92c2749eb488d884a926614d3" -uuid = "2dfb63ee-cc39-5dd5-95bd-886bf059d720" -version = "1.4.3" - -[[deps.PrecompileTools]] -deps = ["Preferences"] -git-tree-sha1 = "03b4c25b43cb84cee5c90aa9b5ea0a78fd848d2f" -uuid = "aea7be01-6a6a-4083-8856-8a6e6704d82a" -version = "1.2.0" - -[[deps.Preferences]] -deps = ["TOML"] -git-tree-sha1 = "00805cd429dcb4870060ff49ef443486c262e38e" -uuid = "21216c6a-2e73-6563-6e65-726566657250" -version = "1.4.1" - -[[deps.PrettyTables]] -deps = ["Crayons", "LaTeXStrings", "Markdown", "PrecompileTools", "Printf", "Reexport", "StringManipulation", "Tables"] -git-tree-sha1 = "88b895d13d53b5577fd53379d913b9ab9ac82660" -uuid = "08abe8d2-0d0c-5749-adfa-8a2ac140af0d" -version = "2.3.1" - -[[deps.Printf]] -deps = ["Unicode"] -uuid = "de0858da-6303-5e67-8744-51eddeeeb8d7" - -[[deps.REPL]] -deps = ["InteractiveUtils", "Markdown", "Sockets", "Unicode"] -uuid = "3fa0cd96-eef1-5676-8a61-b3b8758bbffb" - -[[deps.Random]] -deps = ["SHA"] -uuid = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c" - -[[deps.Random123]] -deps = ["Random", "RandomNumbers"] -git-tree-sha1 = "c860e84651f58ce240dd79e5d9e055d55234c35a" -uuid = "74087812-796a-5b5d-8853-05524746bad3" -version = "1.6.2" - -[[deps.RandomNumbers]] -deps = ["Random", "Requires"] -git-tree-sha1 = "043da614cc7e95c703498a491e2c21f58a2b8111" -uuid = "e6cf234a-135c-5ec9-84dd-332b85af5143" -version = "1.5.3" - -[[deps.Reexport]] -git-tree-sha1 = "45e428421666073eab6f2da5c9d310d99bb12f9b" -uuid = "189a3867-3050-52da-a836-e630ba90ab69" -version = "1.2.2" - -[[deps.RegistryInstances]] -deps = ["LazilyInitializedFields", "Pkg", "TOML", "Tar"] -git-tree-sha1 = "ffd19052caf598b8653b99404058fce14828be51" -uuid = "2792f1a3-b283-48e8-9a74-f99dce5104f3" -version = "0.1.0" - -[[deps.Requires]] -deps = ["UUIDs"] -git-tree-sha1 = "838a3a4188e2ded87a4f9f184b4b0d78a1e91cb7" -uuid = "ae029012-a4dd-5104-9daa-d747884805df" -version = "1.3.0" - -[[deps.SHA]] -uuid = "ea8e919c-243c-51af-8825-aaa63cd721ce" -version = "0.7.0" - -[[deps.Scratch]] -deps = ["Dates"] -git-tree-sha1 = "3bac05bc7e74a75fd9cba4295cde4045d9fe2386" -uuid = "6c6a2e73-6563-6170-7368-637461726353" -version = "1.2.1" - -[[deps.SentinelArrays]] -deps = ["Dates", "Random"] -git-tree-sha1 = "0e7508ff27ba32f26cd459474ca2ede1bc10991f" -uuid = "91c51154-3ec4-41a3-a24f-3f23e20d615c" -version = "1.4.1" - -[[deps.Serialization]] -uuid = "9e88b42a-f829-5b0c-bbe9-9e923198166b" - -[[deps.Sockets]] -uuid = "6462fe0b-24de-5631-8697-dd941f90decc" - -[[deps.SortingAlgorithms]] -deps = ["DataStructures"] -git-tree-sha1 = "5165dfb9fd131cf0c6957a3a7605dede376e7b63" -uuid = "a2af1166-a08f-5f64-846c-94a0d3cef48c" -version = "1.2.0" - -[[deps.SparseArrays]] -deps = ["Libdl", "LinearAlgebra", "Random", "Serialization", "SuiteSparse_jll"] -uuid = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" -version = "1.10.0" - -[[deps.StaticArrays]] -deps = ["LinearAlgebra", "PrecompileTools", "Random", "StaticArraysCore"] -git-tree-sha1 = "fba11dbe2562eecdfcac49a05246af09ee64d055" -uuid = "90137ffa-7385-5640-81b9-e52037218182" -version = "1.8.1" - - [deps.StaticArrays.extensions] - StaticArraysChainRulesCoreExt = "ChainRulesCore" - StaticArraysStatisticsExt = "Statistics" - - [deps.StaticArrays.weakdeps] - ChainRulesCore = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" - Statistics = "10745b16-79ce-11e8-11f9-7d13ad32a3b2" - -[[deps.StaticArraysCore]] -git-tree-sha1 = "36b3d696ce6366023a0ea192b4cd442268995a0d" -uuid = "1e83bf80-4336-4d27-bf5d-d5a4f845583c" -version = "1.4.2" - -[[deps.Statistics]] -deps = ["LinearAlgebra", "SparseArrays"] -uuid = "10745b16-79ce-11e8-11f9-7d13ad32a3b2" -version = "1.10.0" - -[[deps.StringManipulation]] -deps = ["PrecompileTools"] -git-tree-sha1 = "a04cabe79c5f01f4d723cc6704070ada0b9d46d5" -uuid = "892a3eda-7b42-436c-8928-eab12a02cf0e" -version = "0.3.4" - -[[deps.SuiteSparse_jll]] -deps = ["Artifacts", "Libdl", "libblastrampoline_jll"] -uuid = "bea87d4a-7f5b-5778-9afe-8cc45184846c" -version = "7.2.1+1" - -[[deps.TOML]] -deps = ["Dates"] -uuid = "fa267f1f-6049-4f14-aa54-33bafae1ed76" -version = "1.0.3" - -[[deps.TableTraits]] -deps = ["IteratorInterfaceExtensions"] -git-tree-sha1 = "c06b2f539df1c6efa794486abfb6ed2022561a39" -uuid = "3783bdb8-4a98-5b6b-af9a-565f29a5fe9c" -version = "1.0.1" - -[[deps.Tables]] -deps = ["DataAPI", "DataValueInterfaces", "IteratorInterfaceExtensions", "LinearAlgebra", "OrderedCollections", "TableTraits"] -git-tree-sha1 = "cb76cf677714c095e535e3501ac7954732aeea2d" -uuid = "bd369af6-aec1-5ad0-b16a-f7cc5008161c" -version = "1.11.1" - -[[deps.Tar]] -deps = ["ArgTools", "SHA"] -uuid = "a4e569a6-e804-4fa4-b0f3-eef7a1d5b13e" -version = "1.10.0" - -[[deps.Test]] -deps = ["InteractiveUtils", "Logging", "Random", "Serialization"] -uuid = "8dfed614-e22c-5e08-85e1-65c5234f0b40" - -[[deps.TimerOutputs]] -deps = ["ExprTools", "Printf"] -git-tree-sha1 = "f548a9e9c490030e545f72074a41edfd0e5bcdd7" -uuid = "a759f4b9-e2f1-59dc-863e-4aeb61b1ea8f" -version = "0.5.23" - -[[deps.UUIDs]] -deps = ["Random", "SHA"] -uuid = "cf7118a7-6976-5b1a-9a39-7adc72f591a4" - -[[deps.Unicode]] -uuid = "4ec0a83e-493e-50e2-b9ac-8f72acf5a8f5" - -[[deps.UnsafeAtomics]] -git-tree-sha1 = "6331ac3440856ea1988316b46045303bef658278" -uuid = "013be700-e6cd-48c3-b4a1-df204f14c38f" -version = "0.2.1" - -[[deps.UnsafeAtomicsLLVM]] -deps = ["LLVM", "UnsafeAtomics"] -git-tree-sha1 = "323e3d0acf5e78a56dfae7bd8928c989b4f3083e" -uuid = "d80eeb9a-aca5-4d75-85e5-170c8b632249" -version = "0.1.3" - -[[deps.Zlib_jll]] -deps = ["Libdl"] -uuid = "83775a58-1f1d-513f-b197-d71354ab007a" -version = "1.2.13+1" - -[[deps.libblastrampoline_jll]] -deps = ["Artifacts", "Libdl"] -uuid = "8e850b90-86db-534c-a0d3-1478176c7d93" -version = "5.8.0+1" - -[[deps.nghttp2_jll]] -deps = ["Artifacts", "Libdl"] -uuid = "8e850ede-7688-5339-a07c-302acd2aaf8d" -version = "1.52.0+1" - -[[deps.p7zip_jll]] -deps = ["Artifacts", "Libdl"] -uuid = "3f19e933-33d8-53b3-aaab-bd5110c3b7a0" -version = "17.4.0+2" diff --git a/docs/Project.toml b/docs/Project.toml index 4e8da11..7c0385e 100644 --- a/docs/Project.toml +++ b/docs/Project.toml @@ -2,3 +2,6 @@ CUDA = "052768ef-5323-5732-b1bb-66c8b64840ba" Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4" NCCL = "3fe64909-d7a1-4096-9b7d-7a0f12cf0f6b" + +[sources] +NCCL = { path = ".." } diff --git a/res/wrap/Manifest.toml b/res/wrap/Manifest.toml index 556b402..6b1f713 100644 --- a/res/wrap/Manifest.toml +++ b/res/wrap/Manifest.toml @@ -1,92 +1,65 @@ # This file is machine-generated - editing it directly is not advised -julia_version = "1.9.4" +julia_version = "1.11.6" manifest_format = "2.0" project_hash = "c24c6cc39efbdedbfd117abf2a3fb1c76d6d6317" [[deps.ArgTools]] uuid = "0dad84c5-d112-42e6-8d28-ef12dabb789f" -version = "1.1.1" +version = "1.1.2" [[deps.Artifacts]] uuid = "56f22d72-fd6d-98f1-02f0-08ddc0907c33" +version = "1.11.0" [[deps.Base64]] uuid = "2a0f44e3-6c83-55bd-87e4-b1978d98bd5f" +version = "1.11.0" [[deps.CEnum]] -git-tree-sha1 = "eb4cb44a499229b3b8426dcfb5dd85333951ff90" +git-tree-sha1 = "389ad5c84de1ae7cf0e28e381131c98ea87d54fc" uuid = "fa961155-64e5-5f13-b03f-caf6b980ea82" -version = "0.4.2" - -[[deps.CSTParser]] -deps = ["Tokenize"] -git-tree-sha1 = "3ddd48d200eb8ddf9cb3e0189fc059fd49b97c1f" -uuid = "00ebfdb7-1f24-5e51-bd34-a7502290713f" -version = "3.3.6" +version = "0.5.0" [[deps.CUDA_Driver_jll]] -deps = ["Artifacts", "JLLWrappers", "LazyArtifacts", "Libdl", "Pkg"] -git-tree-sha1 = "1e42ef1bdb45487ff28de16182c0df4920181dc3" +deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] +git-tree-sha1 = "e6a1d9f5518122c186fd27786b61d2053cfa1b0c" uuid = "4ee394cb-3365-5eb0-8335-949819d2adfc" -version = "0.7.0+0" +version = "13.0.1+0" [[deps.CUDA_Runtime_jll]] deps = ["Artifacts", "CUDA_Driver_jll", "JLLWrappers", "LazyArtifacts", "Libdl", "TOML"] -git-tree-sha1 = "9704e50c9158cf8896c2776b8dbc5edd136caf80" +git-tree-sha1 = "e24c6de116c0735c37e83b8bc05ed60d4d359693" uuid = "76a88914-d11a-5bdc-97e0-2f5a05c973a2" -version = "0.10.1+0" +version = "0.19.1+0" [[deps.Clang]] deps = ["CEnum", "Clang_jll", "Downloads", "Pkg", "TOML"] -git-tree-sha1 = "17e51c980e1797210f30155d18ea5a2f02b80833" +git-tree-sha1 = "6bf09af911d9df84656ddd0c02b5e449c18adba8" uuid = "40e3b903-d033-50b4-a0cc-940c62c95e31" -version = "0.17.7" +version = "0.19.0" [[deps.Clang_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "TOML", "Zlib_jll", "libLLVM_jll"] -git-tree-sha1 = "124bb00d4ceace456054f17c7cb01e5c8195c609" +deps = ["Artifacts", "JLLWrappers", "Libdl", "TOML", "Zlib_jll", "libLLVM_jll"] +git-tree-sha1 = "ebfc8e89823ec2c85ed9fedabe52db149da4c5ec" uuid = "0ee61d77-7f21-5576-8119-9fcc46b10100" -version = "14.0.6+4" +version = "16.0.6+5" [[deps.CommonMark]] -deps = ["Crayons", "JSON", "PrecompileTools", "URIs"] -git-tree-sha1 = "532c4185d3c9037c0237546d817858b23cf9e071" +deps = ["PrecompileTools"] +git-tree-sha1 = "351d6f4eaf273b753001b2de4dffb8279b100769" uuid = "a80b9123-70ca-4bc0-993e-6e3bcb318db6" -version = "0.8.12" - -[[deps.Compat]] -deps = ["UUIDs"] -git-tree-sha1 = "886826d76ea9e72b35fcd000e535588f7b60f21d" -uuid = "34da2185-b29b-5c13-b0c7-acf172513d20" -version = "4.10.1" - - [deps.Compat.extensions] - CompatLinearAlgebraExt = "LinearAlgebra" - - [deps.Compat.weakdeps] - Dates = "ade2ca70-3891-5945-98fb-dc099432e06a" - LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" +version = "0.9.1" [[deps.CompilerSupportLibraries_jll]] deps = ["Artifacts", "Libdl"] uuid = "e66e0078-7015-5450-92f7-15fbd957f2ae" -version = "1.0.5+0" - -[[deps.Crayons]] -git-tree-sha1 = "249fe38abf76d48563e2f4556bebd215aa317e15" -uuid = "a8cc5b0e-0ffa-5ad4-8c14-923d3ee1735f" -version = "4.1.1" - -[[deps.DataStructures]] -deps = ["Compat", "InteractiveUtils", "OrderedCollections"] -git-tree-sha1 = "3dbd312d370723b6bb43ba9d02fc36abade4518d" -uuid = "864edb3b-99cc-5e75-8d2d-829cb0a9cfe8" -version = "0.18.15" +version = "1.1.1+0" [[deps.Dates]] deps = ["Printf"] uuid = "ade2ca70-3891-5945-98fb-dc099432e06a" +version = "1.11.0" [[deps.Downloads]] deps = ["ArgTools", "FileWatching", "LibCURL", "NetworkOptions"] @@ -95,37 +68,34 @@ version = "1.6.0" [[deps.FileWatching]] uuid = "7b1f6079-737a-58dc-b8bc-7a2ca5c1b5ee" +version = "1.11.0" [[deps.Glob]] git-tree-sha1 = "97285bbd5230dd766e9ef6749b80fc617126d496" uuid = "c27321d9-0574-5035-807b-f59d2c89b15c" version = "1.3.1" -[[deps.InteractiveUtils]] -deps = ["Markdown"] -uuid = "b77e0a4c-d291-57a0-90e8-8db25a27a240" - [[deps.JLLWrappers]] deps = ["Artifacts", "Preferences"] -git-tree-sha1 = "7e5d6779a1e09a36db2a7b6cff50942a0a7d0fca" +git-tree-sha1 = "0533e564aae234aff59ab625543145446d8b6ec2" uuid = "692b3bcd-3c85-4b1f-b108-f13ce0eb3210" -version = "1.5.0" - -[[deps.JSON]] -deps = ["Dates", "Mmap", "Parsers", "Unicode"] -git-tree-sha1 = "31e996f0a15c7b280ba9f76636b3ff9e2ae58c9a" -uuid = "682c06a0-de6a-54ab-a142-c8b1cf79cde6" -version = "0.21.4" +version = "1.7.1" [[deps.JuliaFormatter]] -deps = ["CSTParser", "CommonMark", "DataStructures", "Glob", "Pkg", "PrecompileTools", "Tokenize"] -git-tree-sha1 = "8f5295e46f594ad2d8652f1098488a77460080cd" +deps = ["CommonMark", "Glob", "JuliaSyntax", "PrecompileTools", "TOML"] +git-tree-sha1 = "f512fefd5fdc7dd1ca05778f08f91e9e4c9fdc37" uuid = "98e50ef6-434e-11e9-1051-2b60c6c9e899" -version = "1.0.45" +version = "2.1.6" + +[[deps.JuliaSyntax]] +git-tree-sha1 = "937da4713526b96ac9a178e2035019d3b78ead4a" +uuid = "70703baa-626e-46a2-a12c-08ffd08c73b4" +version = "0.4.10" [[deps.LazyArtifacts]] deps = ["Artifacts", "Pkg"] uuid = "4af54fe1-eca0-43a8-85a7-787d91b784e3" +version = "1.11.0" [[deps.LibCURL]] deps = ["LibCURL_jll", "MozillaCACerts_jll"] @@ -135,11 +105,17 @@ version = "0.6.4" [[deps.LibCURL_jll]] deps = ["Artifacts", "LibSSH2_jll", "Libdl", "MbedTLS_jll", "Zlib_jll", "nghttp2_jll"] uuid = "deac9b47-8bc7-5906-a0fe-35ac56dc84c0" -version = "8.4.0+0" +version = "8.6.0+0" [[deps.LibGit2]] -deps = ["Base64", "NetworkOptions", "Printf", "SHA"] +deps = ["Base64", "LibGit2_jll", "NetworkOptions", "Printf", "SHA"] uuid = "76f85450-5226-5b5a-8eaa-529ad045b433" +version = "1.11.0" + +[[deps.LibGit2_jll]] +deps = ["Artifacts", "LibSSH2_jll", "Libdl", "MbedTLS_jll"] +uuid = "e37daf67-58a4-590a-8e99-b0245dd2ffc5" +version = "1.7.2+0" [[deps.LibSSH2_jll]] deps = ["Artifacts", "Libdl", "MbedTLS_jll"] @@ -148,86 +124,73 @@ version = "1.11.0+1" [[deps.Libdl]] uuid = "8f399da3-3557-5675-b5ff-fb832c97cbdb" +version = "1.11.0" [[deps.Logging]] uuid = "56ddb016-857b-54e1-b83d-db4d58db5568" +version = "1.11.0" [[deps.Markdown]] deps = ["Base64"] uuid = "d6f4376e-aef5-505a-96c1-9c027394607a" +version = "1.11.0" [[deps.MbedTLS_jll]] deps = ["Artifacts", "Libdl"] uuid = "c8ffd9c3-330d-5841-b78e-0817d7145fa1" -version = "2.28.2+0" - -[[deps.Mmap]] -uuid = "a63ad114-7e13-5084-954f-fe012c677804" +version = "2.28.6+0" [[deps.MozillaCACerts_jll]] uuid = "14a3606d-f60d-562e-9121-12d972cd8159" -version = "2022.10.11" +version = "2023.12.12" [[deps.NCCL_jll]] -deps = ["Artifacts", "CUDA_Runtime_jll", "CompilerSupportLibraries_jll", "JLLWrappers", "LazyArtifacts", "Libdl", "TOML"] -git-tree-sha1 = "9dcc505d4c7267cb4e1904b3c3f8049ef61d0b4a" +deps = ["Artifacts", "CUDA_Runtime_jll", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "TOML"] +git-tree-sha1 = "65dcb2da4acfa4d0db26d49ab14fc22192cf12f7" uuid = "4d6d38e4-5b87-5e63-912a-873ff2d649b7" -version = "2.19.4+0" +version = "2.28.3+0" [[deps.NetworkOptions]] uuid = "ca575930-c2e3-43a9-ace4-1e988b2c1908" version = "1.2.0" -[[deps.OrderedCollections]] -git-tree-sha1 = "dfdf5519f235516220579f949664f1bf44e741c5" -uuid = "bac558e1-5e72-5ebc-8fee-abe8a469f55d" -version = "1.6.3" - -[[deps.Parsers]] -deps = ["Dates", "PrecompileTools", "UUIDs"] -git-tree-sha1 = "a935806434c9d4c506ba941871b327b96d41f2bf" -uuid = "69de0a69-1ddd-5017-9359-2bf0b02dc9f0" -version = "2.8.0" - [[deps.Pkg]] -deps = ["Artifacts", "Dates", "Downloads", "FileWatching", "LibGit2", "Libdl", "Logging", "Markdown", "Printf", "REPL", "Random", "SHA", "Serialization", "TOML", "Tar", "UUIDs", "p7zip_jll"] +deps = ["Artifacts", "Dates", "Downloads", "FileWatching", "LibGit2", "Libdl", "Logging", "Markdown", "Printf", "Random", "SHA", "TOML", "Tar", "UUIDs", "p7zip_jll"] uuid = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f" -version = "1.9.2" +version = "1.11.0" + + [deps.Pkg.extensions] + REPLExt = "REPL" + + [deps.Pkg.weakdeps] + REPL = "3fa0cd96-eef1-5676-8a61-b3b8758bbffb" [[deps.PrecompileTools]] deps = ["Preferences"] -git-tree-sha1 = "03b4c25b43cb84cee5c90aa9b5ea0a78fd848d2f" +git-tree-sha1 = "5aa36f7049a63a1528fe8f7c3f2113413ffd4e1f" uuid = "aea7be01-6a6a-4083-8856-8a6e6704d82a" -version = "1.2.0" +version = "1.2.1" [[deps.Preferences]] deps = ["TOML"] -git-tree-sha1 = "00805cd429dcb4870060ff49ef443486c262e38e" +git-tree-sha1 = "0f27480397253da18fe2c12a4ba4eb9eb208bf3d" uuid = "21216c6a-2e73-6563-6e65-726566657250" -version = "1.4.1" +version = "1.5.0" [[deps.Printf]] deps = ["Unicode"] uuid = "de0858da-6303-5e67-8744-51eddeeeb8d7" - -[[deps.REPL]] -deps = ["InteractiveUtils", "Markdown", "Sockets", "Unicode"] -uuid = "3fa0cd96-eef1-5676-8a61-b3b8758bbffb" +version = "1.11.0" [[deps.Random]] -deps = ["SHA", "Serialization"] +deps = ["SHA"] uuid = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c" +version = "1.11.0" [[deps.SHA]] uuid = "ea8e919c-243c-51af-8825-aaa63cd721ce" version = "0.7.0" -[[deps.Serialization]] -uuid = "9e88b42a-f829-5b0c-bbe9-9e923198166b" - -[[deps.Sockets]] -uuid = "6462fe0b-24de-5631-8697-dd941f90decc" - [[deps.TOML]] deps = ["Dates"] uuid = "fa267f1f-6049-4f14-aa54-33bafae1ed76" @@ -238,39 +201,31 @@ deps = ["ArgTools", "SHA"] uuid = "a4e569a6-e804-4fa4-b0f3-eef7a1d5b13e" version = "1.10.0" -[[deps.Tokenize]] -git-tree-sha1 = "0454d9a9bad2400c7ccad19ca832a2ef5a8bc3a1" -uuid = "0796e94c-ce3b-5d07-9a54-7f471281c624" -version = "0.5.26" - -[[deps.URIs]] -git-tree-sha1 = "67db6cc7b3821e19ebe75791a9dd19c9b1188f2b" -uuid = "5c2747f8-b7ea-4ff2-ba2e-563bfd36b1d4" -version = "1.5.1" - [[deps.UUIDs]] deps = ["Random", "SHA"] uuid = "cf7118a7-6976-5b1a-9a39-7adc72f591a4" +version = "1.11.0" [[deps.Unicode]] uuid = "4ec0a83e-493e-50e2-b9ac-8f72acf5a8f5" +version = "1.11.0" [[deps.Zlib_jll]] deps = ["Libdl"] uuid = "83775a58-1f1d-513f-b197-d71354ab007a" -version = "1.2.13+0" +version = "1.2.13+1" [[deps.libLLVM_jll]] deps = ["Artifacts", "Libdl"] uuid = "8f36deef-c2a5-5394-99ed-8e07531fb29a" -version = "14.0.6+3" +version = "16.0.6+5" [[deps.nghttp2_jll]] deps = ["Artifacts", "Libdl"] uuid = "8e850ede-7688-5339-a07c-302acd2aaf8d" -version = "1.52.0+1" +version = "1.59.0+0" [[deps.p7zip_jll]] deps = ["Artifacts", "Libdl"] uuid = "3f19e933-33d8-53b3-aaab-bd5110c3b7a0" -version = "17.4.0+0" +version = "17.4.0+2" diff --git a/res/wrap/prologue.jl b/res/wrap/prologue.jl index 157752d..c14e13c 100644 --- a/res/wrap/prologue.jl +++ b/res/wrap/prologue.jl @@ -1,8 +1,7 @@ const NULL = C_NULL const INT_MIN = typemin(Cint) -import CUDA.APIUtils: @checked -import CUDA: CuPtr, CUstream +import CUDA: @checked, CuPtr, CUstream function check(f) res = f()::ncclResult_t diff --git a/src/libnccl.jl b/src/libnccl.jl index 16c36ba..c61216b 100644 --- a/src/libnccl.jl +++ b/src/libnccl.jl @@ -3,7 +3,7 @@ module LibNCCL using NCCL_jll export NCCL_jll -using CEnum +using CEnum: CEnum, @cenum const NULL = C_NULL const INT_MIN = typemin(Cint) @@ -13,12 +13,12 @@ import CUDA: @checked, CuPtr, CUstream function check(f) res = f()::ncclResult_t if res != ncclSuccess - throw(NCCLError(res)) + throw(NCCLError(err)) end return end -struct ncclConfig_v21700 +struct ncclConfig_v22800 size::Cint magic::Cuint version::Cuint @@ -28,14 +28,35 @@ struct ncclConfig_v21700 maxCTAs::Cint netName::Cstring splitShare::Cint + trafficClass::Cint + commName::Cstring + collnetEnable::Cint + CTAPolicy::Cint + shrinkShare::Cint + nvlsCTAs::Cint + nChannelsPerNetPeer::Cint + nvlinkCentricSched::Cint end -const ncclConfig_t = ncclConfig_v21700 +const ncclConfig_t = ncclConfig_v22800 + +struct ncclSimInfo_v22200 + size::Cint + magic::Cuint + version::Cuint + estimatedTime::Cfloat +end + +const ncclSimInfo_t = ncclSimInfo_v22200 mutable struct ncclComm end const ncclComm_t = Ptr{ncclComm} +mutable struct ncclWindow_vidmem end + +const ncclWindow_t = Ptr{ncclWindow_vidmem} + struct ncclUniqueId internal::NTuple{128,Cchar} end @@ -152,6 +173,36 @@ end config::Ptr{ncclConfig_t})::ncclResult_t end +@checked function ncclCommShrink(comm, excludeRanksList, excludeRanksCount, newcomm, config, + shrinkFlags) + @ccall libnccl.ncclCommShrink(comm::ncclComm_t, excludeRanksList::Ptr{Cint}, + excludeRanksCount::Cint, newcomm::Ptr{ncclComm_t}, + config::Ptr{ncclConfig_t}, + shrinkFlags::Cint)::ncclResult_t +end + +@checked function pncclCommShrink(comm, excludeRanksList, excludeRanksCount, newcomm, + config, shrinkFlags) + @ccall libnccl.pncclCommShrink(comm::ncclComm_t, excludeRanksList::Ptr{Cint}, + excludeRanksCount::Cint, newcomm::Ptr{ncclComm_t}, + config::Ptr{ncclConfig_t}, + shrinkFlags::Cint)::ncclResult_t +end + +@checked function ncclCommInitRankScalable(newcomm, nranks, myrank, nId, commIds, config) + @ccall libnccl.ncclCommInitRankScalable(newcomm::Ptr{ncclComm_t}, nranks::Cint, + myrank::Cint, nId::Cint, + commIds::Ptr{ncclUniqueId}, + config::Ptr{ncclConfig_t})::ncclResult_t +end + +@checked function pncclCommInitRankScalable(newcomm, nranks, myrank, nId, commIds, config) + @ccall libnccl.pncclCommInitRankScalable(newcomm::Ptr{ncclComm_t}, nranks::Cint, + myrank::Cint, nId::Cint, + commIds::Ptr{ncclUniqueId}, + config::Ptr{ncclConfig_t})::ncclResult_t +end + function ncclGetErrorString(result) @ccall libnccl.ncclGetErrorString(result::ncclResult_t)::Cstring end @@ -168,6 +219,16 @@ function pncclGetLastError(comm) @ccall libnccl.pncclGetLastError(comm::ncclComm_t)::Cstring end +# no prototype is found for this function at nccl.h:232:7, please use with caution +function ncclResetDebugInit() + @ccall libnccl.ncclResetDebugInit()::Cvoid +end + +# no prototype is found for this function at nccl.h:234:6, please use with caution +function pncclResetDebugInit() + @ccall libnccl.pncclResetDebugInit()::Cvoid +end + @checked function ncclCommGetAsyncError(comm, asyncError) @ccall libnccl.ncclCommGetAsyncError(comm::ncclComm_t, asyncError::Ptr{ncclResult_t})::ncclResult_t @@ -202,6 +263,46 @@ end @ccall libnccl.pncclCommUserRank(comm::ncclComm_t, rank::Ptr{Cint})::ncclResult_t end +@checked function ncclCommRegister(comm, buff, size, handle) + @ccall libnccl.ncclCommRegister(comm::ncclComm_t, buff::CuPtr{Cvoid}, size::Cint, + handle::Ptr{Ptr{Cvoid}})::ncclResult_t +end + +@checked function pncclCommRegister(comm, buff, size, handle) + @ccall libnccl.pncclCommRegister(comm::ncclComm_t, buff::CuPtr{Cvoid}, size::Cint, + handle::Ptr{Ptr{Cvoid}})::ncclResult_t +end + +@checked function ncclCommDeregister(comm, handle) + @ccall libnccl.ncclCommDeregister(comm::ncclComm_t, handle::CuPtr{Cvoid})::ncclResult_t +end + +@checked function pncclCommDeregister(comm, handle) + @ccall libnccl.pncclCommDeregister(comm::ncclComm_t, handle::CuPtr{Cvoid})::ncclResult_t +end + +@checked function ncclCommWindowRegister(comm, buff, size, win, winFlags) + @ccall libnccl.ncclCommWindowRegister(comm::ncclComm_t, buff::CuPtr{Cvoid}, size::Cint, + win::Ptr{ncclWindow_t}, + winFlags::Cint)::ncclResult_t +end + +@checked function pncclCommWindowRegister(comm, buff, size, win, winFlags) + @ccall libnccl.pncclCommWindowRegister(comm::ncclComm_t, buff::CuPtr{Cvoid}, size::Cint, + win::Ptr{ncclWindow_t}, + winFlags::Cint)::ncclResult_t +end + +@checked function ncclCommWindowDeregister(comm, win) + @ccall libnccl.ncclCommWindowDeregister(comm::ncclComm_t, + win::ncclWindow_t)::ncclResult_t +end + +@checked function pncclCommWindowDeregister(comm, win) + @ccall libnccl.pncclCommWindowDeregister(comm::ncclComm_t, + win::ncclWindow_t)::ncclResult_t +end + @cenum ncclRedOp_dummy_t::UInt32 begin ncclNumOps_dummy = 5 end @@ -231,7 +332,10 @@ end ncclFloat = 7 ncclFloat64 = 8 ncclDouble = 8 - ncclNumTypes = 9 + ncclBfloat16 = 9 + ncclFloat8e4m3 = 10 + ncclFloat8e5m2 = 11 + ncclNumTypes = 12 end @cenum ncclScalarResidence_t::UInt32 begin @@ -335,6 +439,42 @@ end comm::ncclComm_t, stream::CUstream)::ncclResult_t end +@checked function ncclAlltoAll(sendbuff, recvbuff, count, datatype, comm, stream) + @ccall libnccl.ncclAlltoAll(sendbuff::CuPtr{Cvoid}, recvbuff::CuPtr{Cvoid}, count::Cint, + datatype::ncclDataType_t, comm::ncclComm_t, + stream::CUstream)::ncclResult_t +end + +@checked function pncclAlltoAll(sendbuff, recvbuff, count, datatype, comm, stream) + @ccall libnccl.pncclAlltoAll(sendbuff::CuPtr{Cvoid}, recvbuff::CuPtr{Cvoid}, + count::Cint, datatype::ncclDataType_t, comm::ncclComm_t, + stream::CUstream)::ncclResult_t +end + +@checked function ncclGather(sendbuff, recvbuff, count, datatype, root, comm, stream) + @ccall libnccl.ncclGather(sendbuff::CuPtr{Cvoid}, recvbuff::CuPtr{Cvoid}, count::Cint, + datatype::ncclDataType_t, root::Cint, comm::ncclComm_t, + stream::CUstream)::ncclResult_t +end + +@checked function pncclGather(sendbuff, recvbuff, count, datatype, root, comm, stream) + @ccall libnccl.pncclGather(sendbuff::CuPtr{Cvoid}, recvbuff::CuPtr{Cvoid}, count::Cint, + datatype::ncclDataType_t, root::Cint, comm::ncclComm_t, + stream::CUstream)::ncclResult_t +end + +@checked function ncclScatter(sendbuff, recvbuff, count, datatype, root, comm, stream) + @ccall libnccl.ncclScatter(sendbuff::CuPtr{Cvoid}, recvbuff::CuPtr{Cvoid}, count::Cint, + datatype::ncclDataType_t, root::Cint, comm::ncclComm_t, + stream::CUstream)::ncclResult_t +end + +@checked function pncclScatter(sendbuff, recvbuff, count, datatype, root, comm, stream) + @ccall libnccl.pncclScatter(sendbuff::CuPtr{Cvoid}, recvbuff::CuPtr{Cvoid}, count::Cint, + datatype::ncclDataType_t, root::Cint, comm::ncclComm_t, + stream::CUstream)::ncclResult_t +end + @checked function ncclSend(sendbuff, count, datatype, peer, comm, stream) @ccall libnccl.ncclSend(sendbuff::CuPtr{Cvoid}, count::Cint, datatype::ncclDataType_t, peer::Cint, comm::ncclComm_t, stream::CUstream)::ncclResult_t @@ -355,53 +495,43 @@ end peer::Cint, comm::ncclComm_t, stream::CUstream)::ncclResult_t end -# no prototype is found for this function at nccl.h:416:15, please use with caution +# no prototype is found for this function at nccl.h:546:15, please use with caution @checked function ncclGroupStart() @ccall libnccl.ncclGroupStart()::ncclResult_t end -# no prototype is found for this function at nccl.h:417:14, please use with caution +# no prototype is found for this function at nccl.h:547:14, please use with caution @checked function pncclGroupStart() @ccall libnccl.pncclGroupStart()::ncclResult_t end -# no prototype is found for this function at nccl.h:426:15, please use with caution +# no prototype is found for this function at nccl.h:556:15, please use with caution @checked function ncclGroupEnd() @ccall libnccl.ncclGroupEnd()::ncclResult_t end -# no prototype is found for this function at nccl.h:427:14, please use with caution +# no prototype is found for this function at nccl.h:557:14, please use with caution @checked function pncclGroupEnd() @ccall libnccl.pncclGroupEnd()::ncclResult_t end -@checked function ncclCommRegister(comm, buff, size, handle) - @ccall libnccl.ncclCommRegister(comm::ncclComm_t, buff::CuPtr{Cvoid}, size::Cint, - handle::Ptr{Ptr{Cvoid}})::ncclResult_t +@checked function ncclGroupSimulateEnd(simInfo) + @ccall libnccl.ncclGroupSimulateEnd(simInfo::Ptr{ncclSimInfo_t})::ncclResult_t end -@checked function pncclCommRegister(comm, buff, size, handle) - @ccall libnccl.pncclCommRegister(comm::ncclComm_t, buff::CuPtr{Cvoid}, size::Cint, - handle::Ptr{Ptr{Cvoid}})::ncclResult_t -end - -@checked function ncclCommDeregister(comm, handle) - @ccall libnccl.ncclCommDeregister(comm::ncclComm_t, handle::CuPtr{Cvoid})::ncclResult_t -end - -@checked function pncclCommDeregister(comm, handle) - @ccall libnccl.pncclCommDeregister(comm::ncclComm_t, handle::CuPtr{Cvoid})::ncclResult_t +@checked function pncclGroupSimulateEnd(simInfo) + @ccall libnccl.pncclGroupSimulateEnd(simInfo::Ptr{ncclSimInfo_t})::ncclResult_t end const NCCL_MAJOR = 2 -const NCCL_MINOR = 19 +const NCCL_MINOR = 28 -const NCCL_PATCH = 4 +const NCCL_PATCH = 3 const NCCL_SUFFIX = "" -const NCCL_VERSION_CODE = 21904 +const NCCL_VERSION_CODE = 22803 const NCCL_COMM_NULL = NULL @@ -413,7 +543,28 @@ const NCCL_CONFIG_UNDEF_PTR = NULL const NCCL_SPLIT_NOCOLOR = -1 -# Skipping MacroDefinition: NCCL_CONFIG_INITIALIZER { sizeof ( ncclConfig_t ) , /* size */ 0xcafebeef , /* magic */ NCCL_VERSION ( NCCL_MAJOR , NCCL_MINOR , NCCL_PATCH ) , /* version */ NCCL_CONFIG_UNDEF_INT , /* blocking */ NCCL_CONFIG_UNDEF_INT , /* cgaClusterSize */ NCCL_CONFIG_UNDEF_INT , /* minCTAs */ NCCL_CONFIG_UNDEF_INT , /* maxCTAs */ NCCL_CONFIG_UNDEF_PTR , /* netName */ NCCL_CONFIG_UNDEF_INT /* splitShare */ \ +const NCCL_UNDEF_FLOAT = -(Float32(1.0)) + +const NCCL_WIN_DEFAULT = 0x00 + +const NCCL_WIN_COLL_SYMMETRIC = 0x01 + +const NCCL_WIN_REQUIRED_ALIGNMENT = 4096 + +const NCCL_CTA_POLICY_DEFAULT = 0x00 + +const NCCL_CTA_POLICY_EFFICIENCY = 0x01 + +const NCCL_CTA_POLICY_ZERO = 0x02 + +const NCCL_SHRINK_DEFAULT = 0x00 + +const NCCL_SHRINK_ABORT = 0x01 + +# Skipping MacroDefinition: NCCL_CONFIG_INITIALIZER { sizeof ( ncclConfig_t ) , /* size */ 0xcafebeef , /* magic */ NCCL_VERSION ( NCCL_MAJOR , NCCL_MINOR , NCCL_PATCH ) , /* version */ NCCL_CONFIG_UNDEF_INT , /* blocking */ NCCL_CONFIG_UNDEF_INT , /* cgaClusterSize */ NCCL_CONFIG_UNDEF_INT , /* minCTAs */ NCCL_CONFIG_UNDEF_INT , /* maxCTAs */ NCCL_CONFIG_UNDEF_PTR , /* netName */ NCCL_CONFIG_UNDEF_INT , /* splitShare */ NCCL_CONFIG_UNDEF_INT , /* trafficClass */ NCCL_CONFIG_UNDEF_PTR , /* commName */ NCCL_CONFIG_UNDEF_INT , /* collnetEnable */ NCCL_CONFIG_UNDEF_INT , /* CTAPolicy */ NCCL_CONFIG_UNDEF_INT , /* shrinkShare */ NCCL_CONFIG_UNDEF_INT , /* nvlsCTAs */ NCCL_CONFIG_UNDEF_INT , /* nChannelsPerNetPeer */ NCCL_CONFIG_UNDEF_INT , /* nvlinkCentricSched */ \ +#} + +# Skipping MacroDefinition: NCCL_SIM_INFO_INITIALIZER { sizeof ( ncclSimInfo_t ) , /* size */ 0x74685283 , /* magic */ NCCL_VERSION ( NCCL_MAJOR , NCCL_MINOR , NCCL_PATCH ) , /* version */ NCCL_UNDEF_FLOAT /* estimated time */ \ #} export NCCLError diff --git a/test/Project.toml b/test/Project.toml index 73f75fc..0b76d47 100644 --- a/test/Project.toml +++ b/test/Project.toml @@ -1,3 +1,4 @@ [deps] +NCCL_jll = "4d6d38e4-5b87-5e63-912a-873ff2d649b7" CUDA = "052768ef-5323-5732-b1bb-66c8b64840ba" Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" diff --git a/test/runtests.jl b/test/runtests.jl index df695c0..223313e 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -3,6 +3,11 @@ using Test using CUDA @info "CUDA information:\n" * sprint(io->CUDA.versioninfo(io)) +using NCCL_jll +@info "host_platform: $(NCCL_jll.host_platform)" +@info "is_available: $(NCCL_jll.is_available())" +@info "best_wrapper: $(NCCL_jll.best_wrapper)" + using NCCL @info "NCCL version: $(NCCL.version())"