From 6cd957fd5e1734151f0becfd4aa1acf925aed04f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mos=C3=A8=20Giordano?= Date: Fri, 17 Jul 2026 23:20:11 +0100 Subject: [PATCH 01/14] Add gc_safe option to @mpicall and @mpichk macros Extend `@mpicall` and `@mpichk` to accept an optional leading `gc_safe=(true|false)` argument, like the `@ccall` macro, while keeping the functional `ccall(...)` syntax: @mpicall gc_safe=true ccall((:MPI_Fn, libmpi), ...) @mpichk gc_safe=true ccall((:MPI_Fn, libmpi), ...) [min_version] When `gc_safe=true`, the garbage collector is allowed to run concurrently with the foreign call, which is useful for MPI functions which may block. This is implemented by injecting the same `Expr(:cconv, (convention, effects, gc_safe), nreq)` marker produced by the lowering of `@ccall gc_safe=true` (`ccall_macro_lower` in `base/c.jl`) into the calling-convention slot of the `ccall` expression, using the `stdcall` convention for Microsoft MPI as before. The option is only supported by Julia v1.12+ and silently ignored on older versions. Co-Authored-By: Claude Fable 5 --- src/api/api.jl | 64 ++++++++++++++++++++++++++++++++++++--- test/test_mpicall.jl | 72 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 131 insertions(+), 5 deletions(-) create mode 100644 test/test_mpicall.jl diff --git a/src/api/api.jl b/src/api/api.jl index 5b731c3b6..e91c7672c 100644 --- a/src/api/api.jl +++ b/src/api/api.jl @@ -89,7 +89,19 @@ end const use_stdcall = startswith(basename(libmpi), "msmpi") -macro mpicall(expr) +# Parse an optional leading `gc_safe=(true|false)` argument (as in `@ccall`). +# Returns (gc_safe::Bool, remaining_args). +function parse_gc_safe(args) + if !isempty(args) && Meta.isexpr(args[1], :(=), 2) && args[1].args[1] === :gc_safe + val = args[1].args[2] + val === true || val === false || + throw(ArgumentError("`gc_safe` must be literally `true` or `false`")) + return val, args[2:end] + end + return false, args +end + +function mpicall_lower(expr, gc_safe::Bool) @assert expr isa Expr && expr.head == :call && expr.args[1] == :ccall # On unix systems we call the global symbols to allow for LD_PRELOAD interception @@ -103,10 +115,37 @@ macro mpicall(expr) # this only affects 32-bit Windows # unfortunately we need to use ccall to call Get_library_version # so check using library name instead - if use_stdcall + if gc_safe && VERSION >= v"1.12" + # same lowering as Base's `@ccall gc_safe=true` (`ccall_macro_lower` in + # `base/c.jl`); the `gc_safe` flag is only supported by Julia 1.12+ + convention = use_stdcall ? :stdcall : :ccall + insert!(expr.args, 3, Expr(:cconv, (convention, UInt16(0), true), 0)) + elseif use_stdcall insert!(expr.args, 3, :stdcall) end - return esc(expr) + return expr +end + +""" + @mpicall [gc_safe=false] ccall((:MPI_Fn, libmpi), rettype, (argtypes...), args...) + +Wrapper around `ccall` for calling MPI library functions, handling the +platform-specific calling convention (`stdcall` for Microsoft MPI on 32-bit +Windows) and symbol lookup. + +Setting `gc_safe=true` allows the garbage collector to run concurrently with +the call, which is useful for MPI functions which may block. It is ignored on +Julia versions older than v1.12, which don't support this option. + +!!! warning + `gc_safe=true` can lead to undefined behavior if the MPI function calls + back into the Julia runtime, see the documentation of `@ccall`. +""" +macro mpicall(args...) + gc_safe, args = parse_gc_safe(args) + length(args) == 1 || + throw(ArgumentError("@mpicall takes a `ccall(...)` expression and an optional leading `gc_safe=(true|false)` argument")) + esc(mpicall_lower(args[1], gc_safe)) end """ @@ -122,7 +161,22 @@ function Base.show(io::IO, err::FeatureLevelError) print(io, "FeatureLevelError($(err.function_name)): Minimum MPI version is $(err.min_version)") end -macro mpichk(expr, min_version=nothing) +""" + @mpichk [gc_safe=false] ccall((:MPI_Fn, libmpi), Cint, (argtypes...), args...) [min_version] + +Like [`@mpicall`](@ref), but checks the returned error code and throws an +[`MPIError`](@ref) if the call was not successful. + +If the minimal MPI version `min_version` required for `MPI_Fn` to be available +is provided and the function is not found in the MPI library, a +[`FeatureLevelError`](@ref) is thrown instead of performing the call. +""" +macro mpichk(args...) + gc_safe, args = parse_gc_safe(args) + 1 <= length(args) <= 2 || + throw(ArgumentError("@mpichk takes a `ccall(...)` expression, an optional leading `gc_safe=(true|false)` argument, and an optional trailing minimum MPI version")) + expr = args[1] + min_version = length(args) == 2 ? args[2] : nothing if !isnothing(min_version) && expr.args[2].head == :tuple fn = expr.args[2].args[1].value if isnothing(dlsym(libmpi_handle, fn; throw_error=false)) @@ -132,7 +186,7 @@ macro mpichk(expr, min_version=nothing) end end - expr = macroexpand(@__MODULE__, :(@mpicall($expr))) + expr = mpicall_lower(expr, gc_safe) # MPI_SUCCESS is defined to be 0 :((errcode = $(esc(expr))) == 0 || throw(MPIError(errcode))) end diff --git a/test/test_mpicall.jl b/test/test_mpicall.jl new file mode 100644 index 000000000..e62e71e91 --- /dev/null +++ b/test/test_mpicall.jl @@ -0,0 +1,72 @@ +include("common.jl") + +using MPI.API: @mpicall, @mpichk, libmpi + +MPI.Init() + +module MPIcallTestExpansion +using MPI.API: @mpicall, @mpichk, libmpi + +expansion(expr) = macroexpand(@__MODULE__, expr) + +plain = expansion(:(@mpicall ccall((:MPI_Get_version, libmpi), Cint, (Ptr{Cint}, Ptr{Cint}), version, subversion))) +gc_safe_false = expansion(:(@mpicall gc_safe=false ccall((:MPI_Get_version, libmpi), Cint, (Ptr{Cint}, Ptr{Cint}), version, subversion))) +gc_safe_true = expansion(:(@mpicall gc_safe=true ccall((:MPI_Get_version, libmpi), Cint, (Ptr{Cint}, Ptr{Cint}), version, subversion))) +end + +@testset "@mpicall expansion" begin + # `gc_safe=false` is identical to the plain form + @test MPIcallTestExpansion.gc_safe_false == MPIcallTestExpansion.plain + if VERSION >= v"1.12" + # the calling convention slot carries the `gc_safe` flag, matching the + # lowering of `@ccall gc_safe=true` + convention = MPI.API.use_stdcall ? :stdcall : :ccall + @test MPIcallTestExpansion.gc_safe_true.args[3] == + Expr(:cconv, (convention, UInt16(0), true), 0) + @test deleteat!(copy(MPIcallTestExpansion.gc_safe_true.args), 3) == + MPIcallTestExpansion.plain.args + else + # `gc_safe=true` is a no-op on older Julia versions + @test MPIcallTestExpansion.gc_safe_true == MPIcallTestExpansion.plain + end + + # invalid arguments; depending on the Julia version `macroexpand` may wrap + # the error in one or more `LoadError`s + function expansion_error(expr) + try + macroexpand(@__MODULE__, expr) + return nothing + catch e + while e isa LoadError + e = e.error + end + return e + end + end + @test expansion_error(:(@mpicall foo=true ccall((:MPI_Initialized, libmpi), Cint, (Ptr{Cint},), flag))) isa ArgumentError + @test expansion_error(:(@mpicall gc_safe=1 ccall((:MPI_Initialized, libmpi), Cint, (Ptr{Cint},), flag))) isa ArgumentError + @test expansion_error(:(@mpicall ccall((:MPI_Initialized, libmpi), Cint, (Ptr{Cint},), flag) extra)) isa ArgumentError + @test expansion_error(:(@mpichk gc_safe=true)) isa ArgumentError +end + +@testset "@mpicall/@mpichk gc_safe runtime" begin + version = Ref{Cint}() + subversion = Ref{Cint}() + @mpicall ccall((:MPI_Get_version, libmpi), Cint, (Ptr{Cint}, Ptr{Cint}), version, subversion) + expected = (version[], subversion[]) + + version[] = subversion[] = -1 + @mpicall gc_safe=true ccall((:MPI_Get_version, libmpi), Cint, (Ptr{Cint}, Ptr{Cint}), version, subversion) + @test (version[], subversion[]) == expected + + version[] = subversion[] = -1 + @mpichk gc_safe=true ccall((:MPI_Get_version, libmpi), Cint, (Ptr{Cint}, Ptr{Cint}), version, subversion) + @test (version[], subversion[]) == expected + + version[] = subversion[] = -1 + @mpichk gc_safe=true ccall((:MPI_Get_version, libmpi), Cint, (Ptr{Cint}, Ptr{Cint}), version, subversion) v"1.0.0" + @test (version[], subversion[]) == expected +end + +MPI.Finalize() +@test MPI.Finalized() From 379c831d3919c2d62a2daf406d186d5ac82c66f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mos=C3=A8=20Giordano?= Date: Fri, 17 Jul 2026 23:20:31 +0100 Subject: [PATCH 02/14] Add `MPI` to test environment --- test/Project.toml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/test/Project.toml b/test/Project.toml index 83093544d..129861aca 100644 --- a/test/Project.toml +++ b/test/Project.toml @@ -1,5 +1,6 @@ [deps] DoubleFloats = "497a8b3b-efae-58df-a0af-a86822472b78" +MPI = "da04e1cc-30fd-572f-bb4f-1f8673147195" MPIPreferences = "3da0fdf6-3ccc-4f1b-acd9-58baa6c99267" Pkg = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f" Random = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c" @@ -10,6 +11,9 @@ Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" AMDGPU = "21141c5a-9bdb-4563-92ae-f87d6854732e" CUDA = "052768ef-5323-5732-b1bb-66c8b64840ba" +[sources] +MPI = {path = ".."} + [compat] AMDGPU = "0.6, 0.7, 0.8, 0.9, 1, 2" CUDA = "3, 4, 5" From 7d1ed2d6e6949c305b6bc982c07c2c7a0c6dbee1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mos=C3=A8=20Giordano?= Date: Fri, 17 Jul 2026 23:20:55 +0100 Subject: [PATCH 03/14] Ignore versioned manifests --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 6a8723b5e..982d19566 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ *.cov *.mem Manifest.toml +Manifest-v*.toml LocalPreferences.toml From 3488d31eab535ebdebc7a54180c1a77d06942f0e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mos=C3=A8=20Giordano?= Date: Fri, 17 Jul 2026 23:38:58 +0100 Subject: [PATCH 04/14] Update bindings generator to Clang.jl v0.19 In Clang.jl v0.19 the `callback_documentation` option is invoked with the docstring extracted from the C comments as second argument, instead of the expression node alone. Also, compute the path of the generator file shown in the warning header of the generated file with `relpath`, instead of a regex replacement which only worked when the repository checkout was named `MPI.jl`. Co-Authored-By: Claude Fable 5 --- gen/Project.toml | 4 ++-- gen/src/MPIgenerator.jl | 6 ++++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/gen/Project.toml b/gen/Project.toml index f1157b354..a7dd4bfd8 100644 --- a/gen/Project.toml +++ b/gen/Project.toml @@ -8,6 +8,6 @@ MPIPreferences = "3da0fdf6-3ccc-4f1b-acd9-58baa6c99267" OpenMPI_jll = "fe0851c0-eecd-5654-98d4-656369965a5c" [compat] -Clang = "0.17.1" +Clang = "0.19" MPIPreferences = "0.1.3" -julia = "1.6" +julia = "1.12" diff --git a/gen/src/MPIgenerator.jl b/gen/src/MPIgenerator.jl index 40504e09f..a126f6105 100644 --- a/gen/src/MPIgenerator.jl +++ b/gen/src/MPIgenerator.jl @@ -18,7 +18,9 @@ module MPIgenerator mkpath(out) options = load_options(joinpath(@__DIR__, "generator.toml")) # wrapper generator options - options["general"]["callback_documentation"] = node -> [string('$', "(_doc_external(:", node.id, "))")] + # NOTE: in Clang.jl v0.19+ the callback takes also the docstring extracted from the + # C comments as second argument, which we ignore + options["general"]["callback_documentation"] = (node, doc) -> [string('$', "(_doc_external(:", node.id, "))")] include_dir = normpath(artifact_dir, "include") @@ -59,7 +61,7 @@ module MPIgenerator :MPI_Neighbor_alltoall => v"3.0", ) - src, fn = joinpath(out, "api.jl"), replace(@__FILE__, r".*MPI.jl" => "MPI.jl") + src, fn = joinpath(out, "api.jl"), joinpath("MPI.jl", relpath(@__FILE__, normpath(@__DIR__, "..", ".."))) lines = String["# WARNING: this signature file for $(MPIPreferences.binary) has been auto-generated, please edit $fn instead !\n"] for line in readlines(src) if (m = match(r"^ccall.*:([\w_]+)", lstrip(line))) ≢ nothing From 7f020e2aa2d4a02ad51926f88d1968ef29a71f92 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mos=C3=A8=20Giordano?= Date: Fri, 17 Jul 2026 23:48:10 +0100 Subject: [PATCH 05/14] gen: automatically add `gc_safe=true` to GC-safe MPI functions Add a tuple of functions to be called with the `gc_safe=true` option, to let the garbage collector run concurrently with the (potentially blocking) MPI call, and use it in the post-processing of the generated bindings. Start with `MPI_Wait` and `MPI_Allreduce`, more functions can be added in the future if necessary. Co-Authored-By: Claude Fable 5 --- gen/src/MPIgenerator.jl | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/gen/src/MPIgenerator.jl b/gen/src/MPIgenerator.jl index a126f6105..53284e87b 100644 --- a/gen/src/MPIgenerator.jl +++ b/gen/src/MPIgenerator.jl @@ -50,6 +50,13 @@ module MPIgenerator :MPI_Wtick, ) + # these methods are called with `gc_safe=true`, to allow the garbage + # collector to run concurrently with the (potentially blocking) MPI call + gc_safe = ( + :MPI_Wait, + :MPI_Allreduce, + ) + versioned = Dict( :MPI_Dist_graph_create_adjacent => v"2.2", :MPI_Dist_graph_neighbors_count => v"2.2", @@ -66,7 +73,8 @@ module MPIgenerator for line in readlines(src) if (m = match(r"^ccall.*:([\w_]+)", lstrip(line))) ≢ nothing sym = first(m.captures) |> Symbol - repl = sym ∈ mpicall ? "@mpicall ccall" : "@mpichk ccall" + repl = (sym ∈ mpicall ? "@mpicall" : "@mpichk") * + (sym ∈ gc_safe ? " gc_safe=true" : "") * " ccall" line = replace(line, "Ptr{Cvoid}" => "MPIPtr", "ccall" => repl) if (ver = get(versioned, sym, nothing)) ≢ nothing line *= " $(repr(ver))" From ebfa38a7539d4c5bca31cfaea2f019782bfbceee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mos=C3=A8=20Giordano?= Date: Fri, 17 Jul 2026 23:50:19 +0100 Subject: [PATCH 06/14] Regenerate MPI bindings with Clang.jl v0.19 and MPICH 5.0.1 Summary of the changes: * all 556 previously wrapped functions have identical definitions, the large diff is mostly due to the different order in which the declarations are emitted; * 49 new functions coming from the MPICH 5.0.1 headers are added (e.g. the `MPI_Abi_*` family); * `MPI_Wait` and `MPI_Allreduce` are now called with the `gc_safe=true` option, to let the garbage collector run concurrently with these potentially blocking calls (only on Julia v1.12+, the option is ignored on older versions). Co-Authored-By: Claude Fable 5 --- src/api/generated_api.jl | 2347 ++++++++++++++++++++++---------------- 1 file changed, 1394 insertions(+), 953 deletions(-) diff --git a/src/api/generated_api.jl b/src/api/generated_api.jl index dad737167..b8ebce3bc 100644 --- a/src/api/generated_api.jl +++ b/src/api/generated_api.jl @@ -1,93 +1,219 @@ # WARNING: this signature file for MPICH_jll has been auto-generated, please edit MPI.jl/gen/src/MPIgenerator.jl instead ! """ - MPI_Wait(request, status) + MPI_Abi_get_fortran_booleans(logical_size, logical_true, logical_false, is_set) -$(_doc_external(:MPI_Wait)) +$(_doc_external(:MPI_Abi_get_fortran_booleans)) """ -function MPI_Wait(request, status) - @mpichk ccall((:MPI_Wait, libmpi), Cint, (Ptr{MPI_Request}, Ptr{MPI_Status}), request, status) +function MPI_Abi_get_fortran_booleans(logical_size, logical_true, logical_false, is_set) + @mpichk ccall((:MPI_Abi_get_fortran_booleans, libmpi), Cint, (Cint, MPIPtr, MPIPtr, Ptr{Cint}), logical_size, logical_true, logical_false, is_set) end """ - MPI_Test(request, flag, status) + MPI_Abi_get_fortran_info(info) -$(_doc_external(:MPI_Test)) +$(_doc_external(:MPI_Abi_get_fortran_info)) """ -function MPI_Test(request, flag, status) - @mpichk ccall((:MPI_Test, libmpi), Cint, (Ptr{MPI_Request}, Ptr{Cint}, Ptr{MPI_Status}), request, flag, status) +function MPI_Abi_get_fortran_info(info) + @mpichk ccall((:MPI_Abi_get_fortran_info, libmpi), Cint, (Ptr{MPI_Info},), info) end """ - MPI_Status_c2f(c_status, f_status) + MPI_Abi_get_info(info) -$(_doc_external(:MPI_Status_c2f)) +$(_doc_external(:MPI_Abi_get_info)) """ -function MPI_Status_c2f(c_status, f_status) - @mpichk ccall((:MPI_Status_c2f, libmpi), Cint, (Ptr{MPI_Status}, Ptr{MPI_Fint}), c_status, f_status) +function MPI_Abi_get_info(info) + @mpichk ccall((:MPI_Abi_get_info, libmpi), Cint, (Ptr{MPI_Info},), info) end """ - MPI_Status_f2c(f_status, c_status) + MPI_Abi_get_version(abi_major, abi_minor) -$(_doc_external(:MPI_Status_f2c)) +$(_doc_external(:MPI_Abi_get_version)) """ -function MPI_Status_f2c(f_status, c_status) - @mpichk ccall((:MPI_Status_f2c, libmpi), Cint, (Ptr{MPI_Fint}, Ptr{MPI_Status}), f_status, c_status) +function MPI_Abi_get_version(abi_major, abi_minor) + @mpichk ccall((:MPI_Abi_get_version, libmpi), Cint, (Ptr{Cint}, Ptr{Cint}), abi_major, abi_minor) end """ - MPI_Type_create_f90_integer(r, newtype) + MPI_Abi_set_fortran_booleans(logical_size, logical_true, logical_false) -$(_doc_external(:MPI_Type_create_f90_integer)) +$(_doc_external(:MPI_Abi_set_fortran_booleans)) """ -function MPI_Type_create_f90_integer(r, newtype) - @mpichk ccall((:MPI_Type_create_f90_integer, libmpi), Cint, (Cint, Ptr{MPI_Datatype}), r, newtype) +function MPI_Abi_set_fortran_booleans(logical_size, logical_true, logical_false) + @mpichk ccall((:MPI_Abi_set_fortran_booleans, libmpi), Cint, (Cint, MPIPtr, MPIPtr), logical_size, logical_true, logical_false) end """ - MPI_Type_create_f90_real(p, r, newtype) + MPI_Abi_set_fortran_info(info) -$(_doc_external(:MPI_Type_create_f90_real)) +$(_doc_external(:MPI_Abi_set_fortran_info)) """ -function MPI_Type_create_f90_real(p, r, newtype) - @mpichk ccall((:MPI_Type_create_f90_real, libmpi), Cint, (Cint, Cint, Ptr{MPI_Datatype}), p, r, newtype) +function MPI_Abi_set_fortran_info(info) + @mpichk ccall((:MPI_Abi_set_fortran_info, libmpi), Cint, (MPI_Info,), info) end """ - MPI_Type_create_f90_complex(p, r, newtype) + MPI_Comm_toint(comm) -$(_doc_external(:MPI_Type_create_f90_complex)) +$(_doc_external(:MPI_Comm_toint)) """ -function MPI_Type_create_f90_complex(p, r, newtype) - @mpichk ccall((:MPI_Type_create_f90_complex, libmpi), Cint, (Cint, Cint, Ptr{MPI_Datatype}), p, r, newtype) +function MPI_Comm_toint(comm) + @mpichk ccall((:MPI_Comm_toint, libmpi), Cint, (MPI_Comm,), comm) end """ - MPI_Attr_delete(comm, keyval) + MPI_Comm_fromint(comm) -$(_doc_external(:MPI_Attr_delete)) +$(_doc_external(:MPI_Comm_fromint)) """ -function MPI_Attr_delete(comm, keyval) - @mpichk ccall((:MPI_Attr_delete, libmpi), Cint, (MPI_Comm, Cint), comm, keyval) +function MPI_Comm_fromint(comm) + @mpichk ccall((:MPI_Comm_fromint, libmpi), MPI_Comm, (Cint,), comm) end """ - MPI_Attr_get(comm, keyval, attribute_val, flag) + MPI_Errhandler_toint(errhandler) -$(_doc_external(:MPI_Attr_get)) +$(_doc_external(:MPI_Errhandler_toint)) """ -function MPI_Attr_get(comm, keyval, attribute_val, flag) - @mpichk ccall((:MPI_Attr_get, libmpi), Cint, (MPI_Comm, Cint, MPIPtr, Ptr{Cint}), comm, keyval, attribute_val, flag) +function MPI_Errhandler_toint(errhandler) + @mpichk ccall((:MPI_Errhandler_toint, libmpi), Cint, (MPI_Errhandler,), errhandler) end """ - MPI_Attr_put(comm, keyval, attribute_val) + MPI_Errhandler_fromint(errhandler) -$(_doc_external(:MPI_Attr_put)) +$(_doc_external(:MPI_Errhandler_fromint)) """ -function MPI_Attr_put(comm, keyval, attribute_val) - @mpichk ccall((:MPI_Attr_put, libmpi), Cint, (MPI_Comm, Cint, MPIPtr), comm, keyval, attribute_val) +function MPI_Errhandler_fromint(errhandler) + @mpichk ccall((:MPI_Errhandler_fromint, libmpi), MPI_Errhandler, (Cint,), errhandler) +end + +""" + MPI_Group_toint(group) + +$(_doc_external(:MPI_Group_toint)) +""" +function MPI_Group_toint(group) + @mpichk ccall((:MPI_Group_toint, libmpi), Cint, (MPI_Group,), group) +end + +""" + MPI_Group_fromint(group) + +$(_doc_external(:MPI_Group_fromint)) +""" +function MPI_Group_fromint(group) + @mpichk ccall((:MPI_Group_fromint, libmpi), MPI_Group, (Cint,), group) +end + +""" + MPI_Info_toint(info) + +$(_doc_external(:MPI_Info_toint)) +""" +function MPI_Info_toint(info) + @mpichk ccall((:MPI_Info_toint, libmpi), Cint, (MPI_Info,), info) +end + +""" + MPI_Info_fromint(info) + +$(_doc_external(:MPI_Info_fromint)) +""" +function MPI_Info_fromint(info) + @mpichk ccall((:MPI_Info_fromint, libmpi), MPI_Info, (Cint,), info) +end + +""" + MPI_Message_toint(message) + +$(_doc_external(:MPI_Message_toint)) +""" +function MPI_Message_toint(message) + @mpichk ccall((:MPI_Message_toint, libmpi), Cint, (MPI_Message,), message) +end + +""" + MPI_Message_fromint(message) + +$(_doc_external(:MPI_Message_fromint)) +""" +function MPI_Message_fromint(message) + @mpichk ccall((:MPI_Message_fromint, libmpi), MPI_Message, (Cint,), message) +end + +""" + MPI_Op_toint(op) + +$(_doc_external(:MPI_Op_toint)) +""" +function MPI_Op_toint(op) + @mpichk ccall((:MPI_Op_toint, libmpi), Cint, (MPI_Op,), op) +end + +""" + MPI_Op_fromint(op) + +$(_doc_external(:MPI_Op_fromint)) +""" +function MPI_Op_fromint(op) + @mpichk ccall((:MPI_Op_fromint, libmpi), MPI_Op, (Cint,), op) +end + +""" + MPI_Request_toint(request) + +$(_doc_external(:MPI_Request_toint)) +""" +function MPI_Request_toint(request) + @mpichk ccall((:MPI_Request_toint, libmpi), Cint, (MPI_Request,), request) +end + +""" + MPI_Request_fromint(request) + +$(_doc_external(:MPI_Request_fromint)) +""" +function MPI_Request_fromint(request) + @mpichk ccall((:MPI_Request_fromint, libmpi), MPI_Request, (Cint,), request) +end + +""" + MPI_Type_toint(datatype) + +$(_doc_external(:MPI_Type_toint)) +""" +function MPI_Type_toint(datatype) + @mpichk ccall((:MPI_Type_toint, libmpi), Cint, (MPI_Datatype,), datatype) +end + +""" + MPI_Type_fromint(datatype) + +$(_doc_external(:MPI_Type_fromint)) +""" +function MPI_Type_fromint(datatype) + @mpichk ccall((:MPI_Type_fromint, libmpi), MPI_Datatype, (Cint,), datatype) +end + +""" + MPI_Win_toint(win) + +$(_doc_external(:MPI_Win_toint)) +""" +function MPI_Win_toint(win) + @mpichk ccall((:MPI_Win_toint, libmpi), Cint, (MPI_Win,), win) +end + +""" + MPI_Win_fromint(win) + +$(_doc_external(:MPI_Win_fromint)) +""" +function MPI_Win_fromint(win) + @mpichk ccall((:MPI_Win_fromint, libmpi), MPI_Win, (Cint,), win) end """ @@ -99,6 +225,15 @@ function MPI_Comm_create_keyval(comm_copy_attr_fn, comm_delete_attr_fn, comm_key @mpichk ccall((:MPI_Comm_create_keyval, libmpi), Cint, (Ptr{MPI_Comm_copy_attr_function}, Ptr{MPI_Comm_delete_attr_function}, Ptr{Cint}, MPIPtr), comm_copy_attr_fn, comm_delete_attr_fn, comm_keyval, extra_state) end +""" + MPI_Keyval_create(copy_fn, delete_fn, keyval, extra_state) + +$(_doc_external(:MPI_Keyval_create)) +""" +function MPI_Keyval_create(copy_fn, delete_fn, keyval, extra_state) + @mpichk ccall((:MPI_Keyval_create, libmpi), Cint, (Ptr{MPI_Copy_function}, Ptr{MPI_Delete_function}, Ptr{Cint}, MPIPtr), copy_fn, delete_fn, keyval, extra_state) +end + """ MPI_Comm_delete_attr(comm, comm_keyval) @@ -108,6 +243,15 @@ function MPI_Comm_delete_attr(comm, comm_keyval) @mpichk ccall((:MPI_Comm_delete_attr, libmpi), Cint, (MPI_Comm, Cint), comm, comm_keyval) end +""" + MPI_Attr_delete(comm, keyval) + +$(_doc_external(:MPI_Attr_delete)) +""" +function MPI_Attr_delete(comm, keyval) + @mpichk ccall((:MPI_Attr_delete, libmpi), Cint, (MPI_Comm, Cint), comm, keyval) +end + """ MPI_Comm_free_keyval(comm_keyval) @@ -117,6 +261,15 @@ function MPI_Comm_free_keyval(comm_keyval) @mpichk ccall((:MPI_Comm_free_keyval, libmpi), Cint, (Ptr{Cint},), comm_keyval) end +""" + MPI_Keyval_free(keyval) + +$(_doc_external(:MPI_Keyval_free)) +""" +function MPI_Keyval_free(keyval) + @mpichk ccall((:MPI_Keyval_free, libmpi), Cint, (Ptr{Cint},), keyval) +end + """ MPI_Comm_get_attr(comm, comm_keyval, attribute_val, flag) @@ -127,30 +280,30 @@ function MPI_Comm_get_attr(comm, comm_keyval, attribute_val, flag) end """ - MPI_Comm_set_attr(comm, comm_keyval, attribute_val) + MPI_Attr_get(comm, keyval, attribute_val, flag) -$(_doc_external(:MPI_Comm_set_attr)) +$(_doc_external(:MPI_Attr_get)) """ -function MPI_Comm_set_attr(comm, comm_keyval, attribute_val) - @mpichk ccall((:MPI_Comm_set_attr, libmpi), Cint, (MPI_Comm, Cint, MPIPtr), comm, comm_keyval, attribute_val) +function MPI_Attr_get(comm, keyval, attribute_val, flag) + @mpichk ccall((:MPI_Attr_get, libmpi), Cint, (MPI_Comm, Cint, MPIPtr, Ptr{Cint}), comm, keyval, attribute_val, flag) end """ - MPI_Keyval_create(copy_fn, delete_fn, keyval, extra_state) + MPI_Comm_set_attr(comm, comm_keyval, attribute_val) -$(_doc_external(:MPI_Keyval_create)) +$(_doc_external(:MPI_Comm_set_attr)) """ -function MPI_Keyval_create(copy_fn, delete_fn, keyval, extra_state) - @mpichk ccall((:MPI_Keyval_create, libmpi), Cint, (Ptr{MPI_Copy_function}, Ptr{MPI_Delete_function}, Ptr{Cint}, MPIPtr), copy_fn, delete_fn, keyval, extra_state) +function MPI_Comm_set_attr(comm, comm_keyval, attribute_val) + @mpichk ccall((:MPI_Comm_set_attr, libmpi), Cint, (MPI_Comm, Cint, MPIPtr), comm, comm_keyval, attribute_val) end """ - MPI_Keyval_free(keyval) + MPI_Attr_put(comm, keyval, attribute_val) -$(_doc_external(:MPI_Keyval_free)) +$(_doc_external(:MPI_Attr_put)) """ -function MPI_Keyval_free(keyval) - @mpichk ccall((:MPI_Keyval_free, libmpi), Cint, (Ptr{Cint},), keyval) +function MPI_Attr_put(comm, keyval, attribute_val) + @mpichk ccall((:MPI_Attr_put, libmpi), Cint, (MPI_Comm, Cint, MPIPtr), comm, keyval, attribute_val) end """ @@ -285,7 +438,7 @@ end $(_doc_external(:MPI_Allreduce)) """ function MPI_Allreduce(sendbuf, recvbuf, count, datatype, op, comm) - @mpichk ccall((:MPI_Allreduce, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, count, datatype, op, comm) + @mpichk gc_safe=true ccall((:MPI_Allreduce, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, count, datatype, op, comm) end """ @@ -1062,6 +1215,15 @@ function MPI_Get_address(location, address) @mpichk ccall((:MPI_Get_address, libmpi), Cint, (MPIPtr, Ptr{MPI_Aint}), location, address) end +""" + MPI_Address(location, address) + +$(_doc_external(:MPI_Address)) +""" +function MPI_Address(location, address) + @mpichk ccall((:MPI_Address, libmpi), Cint, (MPIPtr, Ptr{MPI_Aint}), location, address) +end + """ MPI_Get_count(status, datatype, count) @@ -1170,6 +1332,33 @@ function MPI_Type_create_darray(size, rank, ndims, array_of_gsizes, array_of_dis @mpichk ccall((:MPI_Type_create_darray, libmpi), Cint, (Cint, Cint, Cint, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}, Cint, MPI_Datatype, Ptr{MPI_Datatype}), size, rank, ndims, array_of_gsizes, array_of_distribs, array_of_dargs, array_of_psizes, order, oldtype, newtype) end +""" + MPI_Type_create_f90_complex(p, r, newtype) + +$(_doc_external(:MPI_Type_create_f90_complex)) +""" +function MPI_Type_create_f90_complex(p, r, newtype) + @mpichk ccall((:MPI_Type_create_f90_complex, libmpi), Cint, (Cint, Cint, Ptr{MPI_Datatype}), p, r, newtype) +end + +""" + MPI_Type_create_f90_integer(r, newtype) + +$(_doc_external(:MPI_Type_create_f90_integer)) +""" +function MPI_Type_create_f90_integer(r, newtype) + @mpichk ccall((:MPI_Type_create_f90_integer, libmpi), Cint, (Cint, Ptr{MPI_Datatype}), r, newtype) +end + +""" + MPI_Type_create_f90_real(p, r, newtype) + +$(_doc_external(:MPI_Type_create_f90_real)) +""" +function MPI_Type_create_f90_real(p, r, newtype) + @mpichk ccall((:MPI_Type_create_f90_real, libmpi), Cint, (Cint, Cint, Ptr{MPI_Datatype}), p, r, newtype) +end + """ MPI_Type_create_hindexed(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) @@ -1179,6 +1368,15 @@ function MPI_Type_create_hindexed(count, array_of_blocklengths, array_of_displac @mpichk ccall((:MPI_Type_create_hindexed, libmpi), Cint, (Cint, Ptr{Cint}, Ptr{MPI_Aint}, MPI_Datatype, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, oldtype, newtype) end +""" + MPI_Type_hindexed(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) + +$(_doc_external(:MPI_Type_hindexed)) +""" +function MPI_Type_hindexed(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) + @mpichk ccall((:MPI_Type_hindexed, libmpi), Cint, (Cint, Ptr{Cint}, Ptr{MPI_Aint}, MPI_Datatype, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, oldtype, newtype) +end + """ MPI_Type_create_hindexed_block(count, blocklength, array_of_displacements, oldtype, newtype) @@ -1197,6 +1395,15 @@ function MPI_Type_create_hvector(count, blocklength, stride, oldtype, newtype) @mpichk ccall((:MPI_Type_create_hvector, libmpi), Cint, (Cint, Cint, MPI_Aint, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, stride, oldtype, newtype) end +""" + MPI_Type_hvector(count, blocklength, stride, oldtype, newtype) + +$(_doc_external(:MPI_Type_hvector)) +""" +function MPI_Type_hvector(count, blocklength, stride, oldtype, newtype) + @mpichk ccall((:MPI_Type_hvector, libmpi), Cint, (Cint, Cint, MPI_Aint, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, stride, oldtype, newtype) +end + """ MPI_Type_create_indexed_block(count, blocklength, array_of_displacements, oldtype, newtype) @@ -1224,6 +1431,15 @@ function MPI_Type_create_struct(count, array_of_blocklengths, array_of_displacem @mpichk ccall((:MPI_Type_create_struct, libmpi), Cint, (Cint, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) end +""" + MPI_Type_struct(count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) + +$(_doc_external(:MPI_Type_struct)) +""" +function MPI_Type_struct(count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) + @mpichk ccall((:MPI_Type_struct, libmpi), Cint, (Cint, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) +end + """ MPI_Type_create_subarray(ndims, array_of_sizes, array_of_subsizes, array_of_starts, order, oldtype, newtype) @@ -1314,6 +1530,15 @@ function MPI_Type_get_true_extent_x(datatype, true_lb, true_extent) @mpichk ccall((:MPI_Type_get_true_extent_x, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Count}, Ptr{MPI_Count}), datatype, true_lb, true_extent) end +""" + MPI_Type_get_value_index(value_type, index_type, pair_type) + +$(_doc_external(:MPI_Type_get_value_index)) +""" +function MPI_Type_get_value_index(value_type, index_type, pair_type) + @mpichk ccall((:MPI_Type_get_value_index, libmpi), Cint, (MPI_Datatype, MPI_Datatype, Ptr{MPI_Datatype}), value_type, index_type, pair_type) +end + """ MPI_Type_indexed(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) @@ -1386,15 +1611,6 @@ function MPI_Unpack_external(datarep, inbuf, insize, position, outbuf, outcount, @mpichk ccall((:MPI_Unpack_external, libmpi), Cint, (Ptr{Cchar}, MPIPtr, MPI_Aint, Ptr{MPI_Aint}, MPIPtr, Cint, MPI_Datatype), datarep, inbuf, insize, position, outbuf, outcount, datatype) end -""" - MPI_Address(location, address) - -$(_doc_external(:MPI_Address)) -""" -function MPI_Address(location, address) - @mpichk ccall((:MPI_Address, libmpi), Cint, (MPIPtr, Ptr{MPI_Aint}), location, address) -end - """ MPI_Type_extent(datatype, extent) @@ -1423,52 +1639,25 @@ function MPI_Type_ub(datatype, displacement) end """ - MPI_Type_hindexed(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) + MPI_Add_error_class(errorclass) -$(_doc_external(:MPI_Type_hindexed)) +$(_doc_external(:MPI_Add_error_class)) """ -function MPI_Type_hindexed(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) - @mpichk ccall((:MPI_Type_hindexed, libmpi), Cint, (Cint, Ptr{Cint}, Ptr{MPI_Aint}, MPI_Datatype, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, oldtype, newtype) +function MPI_Add_error_class(errorclass) + @mpichk ccall((:MPI_Add_error_class, libmpi), Cint, (Ptr{Cint},), errorclass) end """ - MPI_Type_hvector(count, blocklength, stride, oldtype, newtype) + MPI_Add_error_code(errorclass, errorcode) -$(_doc_external(:MPI_Type_hvector)) +$(_doc_external(:MPI_Add_error_code)) """ -function MPI_Type_hvector(count, blocklength, stride, oldtype, newtype) - @mpichk ccall((:MPI_Type_hvector, libmpi), Cint, (Cint, Cint, MPI_Aint, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, stride, oldtype, newtype) +function MPI_Add_error_code(errorclass, errorcode) + @mpichk ccall((:MPI_Add_error_code, libmpi), Cint, (Cint, Ptr{Cint}), errorclass, errorcode) end """ - MPI_Type_struct(count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) - -$(_doc_external(:MPI_Type_struct)) -""" -function MPI_Type_struct(count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) - @mpichk ccall((:MPI_Type_struct, libmpi), Cint, (Cint, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) -end - -""" - MPI_Add_error_class(errorclass) - -$(_doc_external(:MPI_Add_error_class)) -""" -function MPI_Add_error_class(errorclass) - @mpichk ccall((:MPI_Add_error_class, libmpi), Cint, (Ptr{Cint},), errorclass) -end - -""" - MPI_Add_error_code(errorclass, errorcode) - -$(_doc_external(:MPI_Add_error_code)) -""" -function MPI_Add_error_code(errorclass, errorcode) - @mpichk ccall((:MPI_Add_error_code, libmpi), Cint, (Cint, Ptr{Cint}), errorclass, errorcode) -end - -""" - MPI_Add_error_string(errorcode, string) + MPI_Add_error_string(errorcode, string) $(_doc_external(:MPI_Add_error_string)) """ @@ -1494,6 +1683,15 @@ function MPI_Comm_create_errhandler(comm_errhandler_fn, errhandler) @mpichk ccall((:MPI_Comm_create_errhandler, libmpi), Cint, (Ptr{MPI_Comm_errhandler_function}, Ptr{MPI_Errhandler}), comm_errhandler_fn, errhandler) end +""" + MPI_Errhandler_create(comm_errhandler_fn, errhandler) + +$(_doc_external(:MPI_Errhandler_create)) +""" +function MPI_Errhandler_create(comm_errhandler_fn, errhandler) + @mpichk ccall((:MPI_Errhandler_create, libmpi), Cint, (Ptr{MPI_Comm_errhandler_function}, Ptr{MPI_Errhandler}), comm_errhandler_fn, errhandler) +end + """ MPI_Comm_get_errhandler(comm, errhandler) @@ -1503,6 +1701,15 @@ function MPI_Comm_get_errhandler(comm, errhandler) @mpichk ccall((:MPI_Comm_get_errhandler, libmpi), Cint, (MPI_Comm, Ptr{MPI_Errhandler}), comm, errhandler) end +""" + MPI_Errhandler_get(comm, errhandler) + +$(_doc_external(:MPI_Errhandler_get)) +""" +function MPI_Errhandler_get(comm, errhandler) + @mpichk ccall((:MPI_Errhandler_get, libmpi), Cint, (MPI_Comm, Ptr{MPI_Errhandler}), comm, errhandler) +end + """ MPI_Comm_set_errhandler(comm, errhandler) @@ -1512,6 +1719,15 @@ function MPI_Comm_set_errhandler(comm, errhandler) @mpichk ccall((:MPI_Comm_set_errhandler, libmpi), Cint, (MPI_Comm, MPI_Errhandler), comm, errhandler) end +""" + MPI_Errhandler_set(comm, errhandler) + +$(_doc_external(:MPI_Errhandler_set)) +""" +function MPI_Errhandler_set(comm, errhandler) + @mpichk ccall((:MPI_Errhandler_set, libmpi), Cint, (MPI_Comm, MPI_Errhandler), comm, errhandler) +end + """ MPI_Errhandler_free(errhandler) @@ -1575,6 +1791,33 @@ function MPI_File_set_errhandler(file, errhandler) @mpichk ccall((:MPI_File_set_errhandler, libmpi), Cint, (MPI_File, MPI_Errhandler), file, errhandler) end +""" + MPI_Remove_error_class(errorclass) + +$(_doc_external(:MPI_Remove_error_class)) +""" +function MPI_Remove_error_class(errorclass) + @mpichk ccall((:MPI_Remove_error_class, libmpi), Cint, (Cint,), errorclass) +end + +""" + MPI_Remove_error_code(errorcode) + +$(_doc_external(:MPI_Remove_error_code)) +""" +function MPI_Remove_error_code(errorcode) + @mpichk ccall((:MPI_Remove_error_code, libmpi), Cint, (Cint,), errorcode) +end + +""" + MPI_Remove_error_string(errorcode) + +$(_doc_external(:MPI_Remove_error_string)) +""" +function MPI_Remove_error_string(errorcode) + @mpichk ccall((:MPI_Remove_error_string, libmpi), Cint, (Cint,), errorcode) +end + """ MPI_Win_call_errhandler(win, errorcode) @@ -1612,30 +1855,21 @@ function MPI_Win_set_errhandler(win, errhandler) end """ - MPI_Errhandler_create(comm_errhandler_fn, errhandler) - -$(_doc_external(:MPI_Errhandler_create)) -""" -function MPI_Errhandler_create(comm_errhandler_fn, errhandler) - @mpichk ccall((:MPI_Errhandler_create, libmpi), Cint, (Ptr{MPI_Comm_errhandler_function}, Ptr{MPI_Errhandler}), comm_errhandler_fn, errhandler) -end - -""" - MPI_Errhandler_get(comm, errhandler) + MPI_Status_c2f(c_status, f_status) -$(_doc_external(:MPI_Errhandler_get)) +$(_doc_external(:MPI_Status_c2f)) """ -function MPI_Errhandler_get(comm, errhandler) - @mpichk ccall((:MPI_Errhandler_get, libmpi), Cint, (MPI_Comm, Ptr{MPI_Errhandler}), comm, errhandler) +function MPI_Status_c2f(c_status, f_status) + @mpichk ccall((:MPI_Status_c2f, libmpi), Cint, (Ptr{MPI_Status}, Ptr{MPI_Fint}), c_status, f_status) end """ - MPI_Errhandler_set(comm, errhandler) + MPI_Status_f2c(f_status, c_status) -$(_doc_external(:MPI_Errhandler_set)) +$(_doc_external(:MPI_Status_f2c)) """ -function MPI_Errhandler_set(comm, errhandler) - @mpichk ccall((:MPI_Errhandler_set, libmpi), Cint, (MPI_Comm, MPI_Errhandler), comm, errhandler) +function MPI_Status_f2c(f_status, c_status) + @mpichk ccall((:MPI_Status_f2c, libmpi), Cint, (Ptr{MPI_Fint}, Ptr{MPI_Status}), f_status, c_status) end """ @@ -2088,6 +2322,60 @@ function MPI_Buffer_detach(buffer_addr, size) @mpichk ccall((:MPI_Buffer_detach, libmpi), Cint, (MPIPtr, Ptr{Cint}), buffer_addr, size) end +""" + MPI_Buffer_flush() + +$(_doc_external(:MPI_Buffer_flush)) +""" +function MPI_Buffer_flush() + @mpichk ccall((:MPI_Buffer_flush, libmpi), Cint, ()) +end + +""" + MPI_Buffer_iflush(request) + +$(_doc_external(:MPI_Buffer_iflush)) +""" +function MPI_Buffer_iflush(request) + @mpichk ccall((:MPI_Buffer_iflush, libmpi), Cint, (Ptr{MPI_Request},), request) +end + +""" + MPI_Comm_attach_buffer(comm, buffer, size) + +$(_doc_external(:MPI_Comm_attach_buffer)) +""" +function MPI_Comm_attach_buffer(comm, buffer, size) + @mpichk ccall((:MPI_Comm_attach_buffer, libmpi), Cint, (MPI_Comm, MPIPtr, Cint), comm, buffer, size) +end + +""" + MPI_Comm_detach_buffer(comm, buffer_addr, size) + +$(_doc_external(:MPI_Comm_detach_buffer)) +""" +function MPI_Comm_detach_buffer(comm, buffer_addr, size) + @mpichk ccall((:MPI_Comm_detach_buffer, libmpi), Cint, (MPI_Comm, MPIPtr, Ptr{Cint}), comm, buffer_addr, size) +end + +""" + MPI_Comm_flush_buffer(comm) + +$(_doc_external(:MPI_Comm_flush_buffer)) +""" +function MPI_Comm_flush_buffer(comm) + @mpichk ccall((:MPI_Comm_flush_buffer, libmpi), Cint, (MPI_Comm,), comm) +end + +""" + MPI_Comm_iflush_buffer(comm, request) + +$(_doc_external(:MPI_Comm_iflush_buffer)) +""" +function MPI_Comm_iflush_buffer(comm, request) + @mpichk ccall((:MPI_Comm_iflush_buffer, libmpi), Cint, (MPI_Comm, Ptr{MPI_Request}), comm, request) +end + """ MPI_Ibsend(buf, count, datatype, dest, tag, comm, request) @@ -2340,6 +2628,33 @@ function MPI_Request_get_status(request, flag, status) @mpichk ccall((:MPI_Request_get_status, libmpi), Cint, (MPI_Request, Ptr{Cint}, Ptr{MPI_Status}), request, flag, status) end +""" + MPI_Request_get_status_all(count, array_of_requests, flag, array_of_statuses) + +$(_doc_external(:MPI_Request_get_status_all)) +""" +function MPI_Request_get_status_all(count, array_of_requests, flag, array_of_statuses) + @mpichk ccall((:MPI_Request_get_status_all, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{Cint}, Ptr{MPI_Status}), count, array_of_requests, flag, array_of_statuses) +end + +""" + MPI_Request_get_status_any(count, array_of_requests, indx, flag, status) + +$(_doc_external(:MPI_Request_get_status_any)) +""" +function MPI_Request_get_status_any(count, array_of_requests, indx, flag, status) + @mpichk ccall((:MPI_Request_get_status_any, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Status}), count, array_of_requests, indx, flag, status) +end + +""" + MPI_Request_get_status_some(incount, array_of_requests, outcount, array_of_indices, array_of_statuses) + +$(_doc_external(:MPI_Request_get_status_some)) +""" +function MPI_Request_get_status_some(incount, array_of_requests, outcount, array_of_indices, array_of_statuses) + @mpichk ccall((:MPI_Request_get_status_some, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Status}), incount, array_of_requests, outcount, array_of_indices, array_of_statuses) +end + """ MPI_Start(request) @@ -2358,6 +2673,60 @@ function MPI_Startall(count, array_of_requests) @mpichk ccall((:MPI_Startall, libmpi), Cint, (Cint, Ptr{MPI_Request}), count, array_of_requests) end +""" + MPI_Status_get_error(status, error) + +$(_doc_external(:MPI_Status_get_error)) +""" +function MPI_Status_get_error(status, error) + @mpichk ccall((:MPI_Status_get_error, libmpi), Cint, (Ptr{MPI_Status}, Ptr{Cint}), status, error) +end + +""" + MPI_Status_get_source(status, source) + +$(_doc_external(:MPI_Status_get_source)) +""" +function MPI_Status_get_source(status, source) + @mpichk ccall((:MPI_Status_get_source, libmpi), Cint, (Ptr{MPI_Status}, Ptr{Cint}), status, source) +end + +""" + MPI_Status_get_tag(status, tag) + +$(_doc_external(:MPI_Status_get_tag)) +""" +function MPI_Status_get_tag(status, tag) + @mpichk ccall((:MPI_Status_get_tag, libmpi), Cint, (Ptr{MPI_Status}, Ptr{Cint}), status, tag) +end + +""" + MPI_Status_set_error(status, error) + +$(_doc_external(:MPI_Status_set_error)) +""" +function MPI_Status_set_error(status, error) + @mpichk ccall((:MPI_Status_set_error, libmpi), Cint, (Ptr{MPI_Status}, Cint), status, error) +end + +""" + MPI_Status_set_source(status, source) + +$(_doc_external(:MPI_Status_set_source)) +""" +function MPI_Status_set_source(status, source) + @mpichk ccall((:MPI_Status_set_source, libmpi), Cint, (Ptr{MPI_Status}, Cint), status, source) +end + +""" + MPI_Status_set_tag(status, tag) + +$(_doc_external(:MPI_Status_set_tag)) +""" +function MPI_Status_set_tag(status, tag) + @mpichk ccall((:MPI_Status_set_tag, libmpi), Cint, (Ptr{MPI_Status}, Cint), status, tag) +end + """ MPI_Status_set_cancelled(status, flag) @@ -2367,6 +2736,15 @@ function MPI_Status_set_cancelled(status, flag) @mpichk ccall((:MPI_Status_set_cancelled, libmpi), Cint, (Ptr{MPI_Status}, Cint), status, flag) end +""" + MPI_Test(request, flag, status) + +$(_doc_external(:MPI_Test)) +""" +function MPI_Test(request, flag, status) + @mpichk ccall((:MPI_Test, libmpi), Cint, (Ptr{MPI_Request}, Ptr{Cint}, Ptr{MPI_Status}), request, flag, status) +end + """ MPI_Test_cancelled(status, flag) @@ -2403,6 +2781,15 @@ function MPI_Testsome(incount, array_of_requests, outcount, array_of_indices, ar @mpichk ccall((:MPI_Testsome, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Status}), incount, array_of_requests, outcount, array_of_indices, array_of_statuses) end +""" + MPI_Wait(request, status) + +$(_doc_external(:MPI_Wait)) +""" +function MPI_Wait(request, status) + @mpichk gc_safe=true ccall((:MPI_Wait, libmpi), Cint, (Ptr{MPI_Request}, Ptr{MPI_Status}), request, status) +end + """ MPI_Waitall(count, array_of_requests, array_of_statuses) @@ -3033,6 +3420,15 @@ function MPI_Dist_graph_neighbors_count(comm, indegree, outdegree, weighted) @mpichk ccall((:MPI_Dist_graph_neighbors_count, libmpi), Cint, (MPI_Comm, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}), comm, indegree, outdegree, weighted) v"2.2.0" end +""" + MPI_Get_hw_resource_info(hw_info) + +$(_doc_external(:MPI_Get_hw_resource_info)) +""" +function MPI_Get_hw_resource_info(hw_info) + @mpichk ccall((:MPI_Get_hw_resource_info, libmpi), Cint, (Ptr{MPI_Info},), hw_info) +end + """ MPI_Graph_create(comm_old, nnodes, indx, edges, reorder, comm_graph) @@ -3097,1623 +3493,1785 @@ function MPI_Topo_test(comm, status) end """ - MPI_Allgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) + MPI_File_c2f(file) -$(_doc_external(:MPI_Allgather_c)) +$(_doc_external(:MPI_File_c2f)) """ -function MPI_Allgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) - @mpichk ccall((:MPI_Allgather_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) +function MPI_File_c2f(file) + @mpichk ccall((:MPI_File_c2f, libmpi), MPI_Fint, (MPI_File,), file) end """ - MPI_Allgather_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) + MPI_File_close(fh) -$(_doc_external(:MPI_Allgather_init_c)) +$(_doc_external(:MPI_File_close)) """ -function MPI_Allgather_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) - @mpichk ccall((:MPI_Allgather_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) +function MPI_File_close(fh) + @mpichk ccall((:MPI_File_close, libmpi), Cint, (Ptr{MPI_File},), fh) end """ - MPI_Allgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) + MPI_File_delete(filename, info) -$(_doc_external(:MPI_Allgatherv_c)) +$(_doc_external(:MPI_File_delete)) """ -function MPI_Allgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) - @mpichk ccall((:MPI_Allgatherv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) +function MPI_File_delete(filename, info) + @mpichk ccall((:MPI_File_delete, libmpi), Cint, (Ptr{Cchar}, MPI_Info), filename, info) end """ - MPI_Allgatherv_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) + MPI_File_f2c(file) -$(_doc_external(:MPI_Allgatherv_init_c)) +$(_doc_external(:MPI_File_f2c)) """ -function MPI_Allgatherv_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) - @mpichk ccall((:MPI_Allgatherv_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) +function MPI_File_f2c(file) + @mpichk ccall((:MPI_File_f2c, libmpi), MPI_File, (MPI_Fint,), file) end """ - MPI_Allreduce_c(sendbuf, recvbuf, count, datatype, op, comm) + MPI_File_get_amode(fh, amode) -$(_doc_external(:MPI_Allreduce_c)) +$(_doc_external(:MPI_File_get_amode)) """ -function MPI_Allreduce_c(sendbuf, recvbuf, count, datatype, op, comm) - @mpichk ccall((:MPI_Allreduce_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, count, datatype, op, comm) +function MPI_File_get_amode(fh, amode) + @mpichk ccall((:MPI_File_get_amode, libmpi), Cint, (MPI_File, Ptr{Cint}), fh, amode) end """ - MPI_Allreduce_init_c(sendbuf, recvbuf, count, datatype, op, comm, info, request) + MPI_File_get_atomicity(fh, flag) -$(_doc_external(:MPI_Allreduce_init_c)) +$(_doc_external(:MPI_File_get_atomicity)) """ -function MPI_Allreduce_init_c(sendbuf, recvbuf, count, datatype, op, comm, info, request) - @mpichk ccall((:MPI_Allreduce_init_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, info, request) +function MPI_File_get_atomicity(fh, flag) + @mpichk ccall((:MPI_File_get_atomicity, libmpi), Cint, (MPI_File, Ptr{Cint}), fh, flag) end """ - MPI_Alltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) + MPI_File_get_byte_offset(fh, offset, disp) -$(_doc_external(:MPI_Alltoall_c)) +$(_doc_external(:MPI_File_get_byte_offset)) """ -function MPI_Alltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) - @mpichk ccall((:MPI_Alltoall_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) +function MPI_File_get_byte_offset(fh, offset, disp) + @mpichk ccall((:MPI_File_get_byte_offset, libmpi), Cint, (MPI_File, MPI_Offset, Ptr{MPI_Offset}), fh, offset, disp) end """ - MPI_Alltoall_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) + MPI_File_get_group(fh, group) -$(_doc_external(:MPI_Alltoall_init_c)) +$(_doc_external(:MPI_File_get_group)) """ -function MPI_Alltoall_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) - @mpichk ccall((:MPI_Alltoall_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) +function MPI_File_get_group(fh, group) + @mpichk ccall((:MPI_File_get_group, libmpi), Cint, (MPI_File, Ptr{MPI_Group}), fh, group) end """ - MPI_Alltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) + MPI_File_get_info(fh, info_used) -$(_doc_external(:MPI_Alltoallv_c)) +$(_doc_external(:MPI_File_get_info)) """ -function MPI_Alltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) - @mpichk ccall((:MPI_Alltoallv_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) +function MPI_File_get_info(fh, info_used) + @mpichk ccall((:MPI_File_get_info, libmpi), Cint, (MPI_File, Ptr{MPI_Info}), fh, info_used) end """ - MPI_Alltoallv_init_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) + MPI_File_get_position(fh, offset) -$(_doc_external(:MPI_Alltoallv_init_c)) +$(_doc_external(:MPI_File_get_position)) """ -function MPI_Alltoallv_init_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) - @mpichk ccall((:MPI_Alltoallv_init_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) +function MPI_File_get_position(fh, offset) + @mpichk ccall((:MPI_File_get_position, libmpi), Cint, (MPI_File, Ptr{MPI_Offset}), fh, offset) end """ - MPI_Alltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) + MPI_File_get_position_shared(fh, offset) -$(_doc_external(:MPI_Alltoallw_c)) +$(_doc_external(:MPI_File_get_position_shared)) """ -function MPI_Alltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) - @mpichk ccall((:MPI_Alltoallw_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) +function MPI_File_get_position_shared(fh, offset) + @mpichk ccall((:MPI_File_get_position_shared, libmpi), Cint, (MPI_File, Ptr{MPI_Offset}), fh, offset) end """ - MPI_Alltoallw_init_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) + MPI_File_get_size(fh, size) -$(_doc_external(:MPI_Alltoallw_init_c)) +$(_doc_external(:MPI_File_get_size)) """ -function MPI_Alltoallw_init_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) - @mpichk ccall((:MPI_Alltoallw_init_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) +function MPI_File_get_size(fh, size) + @mpichk ccall((:MPI_File_get_size, libmpi), Cint, (MPI_File, Ptr{MPI_Offset}), fh, size) end """ - MPI_Bcast_c(buffer, count, datatype, root, comm) + MPI_File_get_type_extent(fh, datatype, extent) -$(_doc_external(:MPI_Bcast_c)) +$(_doc_external(:MPI_File_get_type_extent)) """ -function MPI_Bcast_c(buffer, count, datatype, root, comm) - @mpichk ccall((:MPI_Bcast_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm), buffer, count, datatype, root, comm) +function MPI_File_get_type_extent(fh, datatype, extent) + @mpichk ccall((:MPI_File_get_type_extent, libmpi), Cint, (MPI_File, MPI_Datatype, Ptr{MPI_Aint}), fh, datatype, extent) end """ - MPI_Bcast_init_c(buffer, count, datatype, root, comm, info, request) + MPI_File_get_view(fh, disp, etype, filetype, datarep) -$(_doc_external(:MPI_Bcast_init_c)) +$(_doc_external(:MPI_File_get_view)) """ -function MPI_Bcast_init_c(buffer, count, datatype, root, comm, info, request) - @mpichk ccall((:MPI_Bcast_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), buffer, count, datatype, root, comm, info, request) +function MPI_File_get_view(fh, disp, etype, filetype, datarep) + @mpichk ccall((:MPI_File_get_view, libmpi), Cint, (MPI_File, Ptr{MPI_Offset}, Ptr{MPI_Datatype}, Ptr{MPI_Datatype}, Ptr{Cchar}), fh, disp, etype, filetype, datarep) end """ - MPI_Exscan_c(sendbuf, recvbuf, count, datatype, op, comm) + MPI_File_iread(fh, buf, count, datatype, request) -$(_doc_external(:MPI_Exscan_c)) +$(_doc_external(:MPI_File_iread)) """ -function MPI_Exscan_c(sendbuf, recvbuf, count, datatype, op, comm) - @mpichk ccall((:MPI_Exscan_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, count, datatype, op, comm) +function MPI_File_iread(fh, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iread, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) end """ - MPI_Exscan_init_c(sendbuf, recvbuf, count, datatype, op, comm, info, request) + MPI_File_iread_all(fh, buf, count, datatype, request) -$(_doc_external(:MPI_Exscan_init_c)) +$(_doc_external(:MPI_File_iread_all)) """ -function MPI_Exscan_init_c(sendbuf, recvbuf, count, datatype, op, comm, info, request) - @mpichk ccall((:MPI_Exscan_init_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, info, request) +function MPI_File_iread_all(fh, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iread_all, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) end """ - MPI_Gather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) + MPI_File_iread_at(fh, offset, buf, count, datatype, request) -$(_doc_external(:MPI_Gather_c)) +$(_doc_external(:MPI_File_iread_at)) """ -function MPI_Gather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) - @mpichk ccall((:MPI_Gather_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) +function MPI_File_iread_at(fh, offset, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iread_at, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) end """ - MPI_Gather_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) + MPI_File_iread_at_all(fh, offset, buf, count, datatype, request) -$(_doc_external(:MPI_Gather_init_c)) +$(_doc_external(:MPI_File_iread_at_all)) """ -function MPI_Gather_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) - @mpichk ccall((:MPI_Gather_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) +function MPI_File_iread_at_all(fh, offset, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iread_at_all, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) end """ - MPI_Gatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm) + MPI_File_iread_shared(fh, buf, count, datatype, request) -$(_doc_external(:MPI_Gatherv_c)) +$(_doc_external(:MPI_File_iread_shared)) """ -function MPI_Gatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm) - @mpichk ccall((:MPI_Gatherv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm) +function MPI_File_iread_shared(fh, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iread_shared, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) end """ - MPI_Gatherv_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, info, request) + MPI_File_iwrite(fh, buf, count, datatype, request) -$(_doc_external(:MPI_Gatherv_init_c)) +$(_doc_external(:MPI_File_iwrite)) """ -function MPI_Gatherv_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, info, request) - @mpichk ccall((:MPI_Gatherv_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, info, request) +function MPI_File_iwrite(fh, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iwrite, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) end """ - MPI_Iallgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) + MPI_File_iwrite_all(fh, buf, count, datatype, request) -$(_doc_external(:MPI_Iallgather_c)) +$(_doc_external(:MPI_File_iwrite_all)) """ -function MPI_Iallgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) - @mpichk ccall((:MPI_Iallgather_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) +function MPI_File_iwrite_all(fh, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iwrite_all, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) end """ - MPI_Iallgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) + MPI_File_iwrite_at(fh, offset, buf, count, datatype, request) -$(_doc_external(:MPI_Iallgatherv_c)) +$(_doc_external(:MPI_File_iwrite_at)) """ -function MPI_Iallgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) - @mpichk ccall((:MPI_Iallgatherv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) +function MPI_File_iwrite_at(fh, offset, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iwrite_at, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) end """ - MPI_Iallreduce_c(sendbuf, recvbuf, count, datatype, op, comm, request) + MPI_File_iwrite_at_all(fh, offset, buf, count, datatype, request) -$(_doc_external(:MPI_Iallreduce_c)) +$(_doc_external(:MPI_File_iwrite_at_all)) """ -function MPI_Iallreduce_c(sendbuf, recvbuf, count, datatype, op, comm, request) - @mpichk ccall((:MPI_Iallreduce_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, request) +function MPI_File_iwrite_at_all(fh, offset, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iwrite_at_all, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) end """ - MPI_Ialltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) + MPI_File_iwrite_shared(fh, buf, count, datatype, request) -$(_doc_external(:MPI_Ialltoall_c)) +$(_doc_external(:MPI_File_iwrite_shared)) """ -function MPI_Ialltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) - @mpichk ccall((:MPI_Ialltoall_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) +function MPI_File_iwrite_shared(fh, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iwrite_shared, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) end """ - MPI_Ialltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) + MPI_File_open(comm, filename, amode, info, fh) -$(_doc_external(:MPI_Ialltoallv_c)) +$(_doc_external(:MPI_File_open)) """ -function MPI_Ialltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) - @mpichk ccall((:MPI_Ialltoallv_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) +function MPI_File_open(comm, filename, amode, info, fh) + @mpichk ccall((:MPI_File_open, libmpi), Cint, (MPI_Comm, Ptr{Cchar}, Cint, MPI_Info, Ptr{MPI_File}), comm, filename, amode, info, fh) end """ - MPI_Ialltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) + MPI_File_preallocate(fh, size) -$(_doc_external(:MPI_Ialltoallw_c)) +$(_doc_external(:MPI_File_preallocate)) """ -function MPI_Ialltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) - @mpichk ccall((:MPI_Ialltoallw_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) +function MPI_File_preallocate(fh, size) + @mpichk ccall((:MPI_File_preallocate, libmpi), Cint, (MPI_File, MPI_Offset), fh, size) end """ - MPI_Ibcast_c(buffer, count, datatype, root, comm, request) + MPI_File_read(fh, buf, count, datatype, status) -$(_doc_external(:MPI_Ibcast_c)) +$(_doc_external(:MPI_File_read)) """ -function MPI_Ibcast_c(buffer, count, datatype, root, comm, request) - @mpichk ccall((:MPI_Ibcast_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), buffer, count, datatype, root, comm, request) +function MPI_File_read(fh, buf, count, datatype, status) + @mpichk ccall((:MPI_File_read, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) end """ - MPI_Iexscan_c(sendbuf, recvbuf, count, datatype, op, comm, request) + MPI_File_read_all(fh, buf, count, datatype, status) -$(_doc_external(:MPI_Iexscan_c)) +$(_doc_external(:MPI_File_read_all)) """ -function MPI_Iexscan_c(sendbuf, recvbuf, count, datatype, op, comm, request) - @mpichk ccall((:MPI_Iexscan_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, request) +function MPI_File_read_all(fh, buf, count, datatype, status) + @mpichk ccall((:MPI_File_read_all, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) end """ - MPI_Igather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) + MPI_File_read_all_begin(fh, buf, count, datatype) -$(_doc_external(:MPI_Igather_c)) +$(_doc_external(:MPI_File_read_all_begin)) """ -function MPI_Igather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) - @mpichk ccall((:MPI_Igather_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) +function MPI_File_read_all_begin(fh, buf, count, datatype) + @mpichk ccall((:MPI_File_read_all_begin, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype), fh, buf, count, datatype) end """ - MPI_Igatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, request) + MPI_File_read_all_end(fh, buf, status) -$(_doc_external(:MPI_Igatherv_c)) +$(_doc_external(:MPI_File_read_all_end)) """ -function MPI_Igatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, request) - @mpichk ccall((:MPI_Igatherv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, request) +function MPI_File_read_all_end(fh, buf, status) + @mpichk ccall((:MPI_File_read_all_end, libmpi), Cint, (MPI_File, MPIPtr, Ptr{MPI_Status}), fh, buf, status) end """ - MPI_Ineighbor_allgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) + MPI_File_read_at(fh, offset, buf, count, datatype, status) -$(_doc_external(:MPI_Ineighbor_allgather_c)) +$(_doc_external(:MPI_File_read_at)) """ -function MPI_Ineighbor_allgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) - @mpichk ccall((:MPI_Ineighbor_allgather_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) +function MPI_File_read_at(fh, offset, buf, count, datatype, status) + @mpichk ccall((:MPI_File_read_at, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, offset, buf, count, datatype, status) end """ - MPI_Ineighbor_allgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) + MPI_File_read_at_all(fh, offset, buf, count, datatype, status) -$(_doc_external(:MPI_Ineighbor_allgatherv_c)) +$(_doc_external(:MPI_File_read_at_all)) """ -function MPI_Ineighbor_allgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) - @mpichk ccall((:MPI_Ineighbor_allgatherv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) +function MPI_File_read_at_all(fh, offset, buf, count, datatype, status) + @mpichk ccall((:MPI_File_read_at_all, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, offset, buf, count, datatype, status) end """ - MPI_Ineighbor_alltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) + MPI_File_read_at_all_begin(fh, offset, buf, count, datatype) -$(_doc_external(:MPI_Ineighbor_alltoall_c)) +$(_doc_external(:MPI_File_read_at_all_begin)) +""" +function MPI_File_read_at_all_begin(fh, offset, buf, count, datatype) + @mpichk ccall((:MPI_File_read_at_all_begin, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype), fh, offset, buf, count, datatype) +end + +""" + MPI_File_read_at_all_end(fh, buf, status) + +$(_doc_external(:MPI_File_read_at_all_end)) +""" +function MPI_File_read_at_all_end(fh, buf, status) + @mpichk ccall((:MPI_File_read_at_all_end, libmpi), Cint, (MPI_File, MPIPtr, Ptr{MPI_Status}), fh, buf, status) +end + +""" + MPI_File_read_ordered(fh, buf, count, datatype, status) + +$(_doc_external(:MPI_File_read_ordered)) +""" +function MPI_File_read_ordered(fh, buf, count, datatype, status) + @mpichk ccall((:MPI_File_read_ordered, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +end + +""" + MPI_File_read_ordered_begin(fh, buf, count, datatype) + +$(_doc_external(:MPI_File_read_ordered_begin)) +""" +function MPI_File_read_ordered_begin(fh, buf, count, datatype) + @mpichk ccall((:MPI_File_read_ordered_begin, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype), fh, buf, count, datatype) +end + +""" + MPI_File_read_ordered_end(fh, buf, status) + +$(_doc_external(:MPI_File_read_ordered_end)) +""" +function MPI_File_read_ordered_end(fh, buf, status) + @mpichk ccall((:MPI_File_read_ordered_end, libmpi), Cint, (MPI_File, MPIPtr, Ptr{MPI_Status}), fh, buf, status) +end + +""" + MPI_File_read_shared(fh, buf, count, datatype, status) + +$(_doc_external(:MPI_File_read_shared)) +""" +function MPI_File_read_shared(fh, buf, count, datatype, status) + @mpichk ccall((:MPI_File_read_shared, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +end + +""" + MPI_File_seek(fh, offset, whence) + +$(_doc_external(:MPI_File_seek)) +""" +function MPI_File_seek(fh, offset, whence) + @mpichk ccall((:MPI_File_seek, libmpi), Cint, (MPI_File, MPI_Offset, Cint), fh, offset, whence) +end + +""" + MPI_File_seek_shared(fh, offset, whence) + +$(_doc_external(:MPI_File_seek_shared)) +""" +function MPI_File_seek_shared(fh, offset, whence) + @mpichk ccall((:MPI_File_seek_shared, libmpi), Cint, (MPI_File, MPI_Offset, Cint), fh, offset, whence) +end + +""" + MPI_File_set_atomicity(fh, flag) + +$(_doc_external(:MPI_File_set_atomicity)) +""" +function MPI_File_set_atomicity(fh, flag) + @mpichk ccall((:MPI_File_set_atomicity, libmpi), Cint, (MPI_File, Cint), fh, flag) +end + +""" + MPI_File_set_info(fh, info) + +$(_doc_external(:MPI_File_set_info)) +""" +function MPI_File_set_info(fh, info) + @mpichk ccall((:MPI_File_set_info, libmpi), Cint, (MPI_File, MPI_Info), fh, info) +end + +""" + MPI_File_set_size(fh, size) + +$(_doc_external(:MPI_File_set_size)) +""" +function MPI_File_set_size(fh, size) + @mpichk ccall((:MPI_File_set_size, libmpi), Cint, (MPI_File, MPI_Offset), fh, size) +end + +""" + MPI_File_set_view(fh, disp, etype, filetype, datarep, info) + +$(_doc_external(:MPI_File_set_view)) +""" +function MPI_File_set_view(fh, disp, etype, filetype, datarep, info) + @mpichk ccall((:MPI_File_set_view, libmpi), Cint, (MPI_File, MPI_Offset, MPI_Datatype, MPI_Datatype, Ptr{Cchar}, MPI_Info), fh, disp, etype, filetype, datarep, info) +end + +""" + MPI_File_sync(fh) + +$(_doc_external(:MPI_File_sync)) +""" +function MPI_File_sync(fh) + @mpichk ccall((:MPI_File_sync, libmpi), Cint, (MPI_File,), fh) +end + +""" + MPI_File_write(fh, buf, count, datatype, status) + +$(_doc_external(:MPI_File_write)) +""" +function MPI_File_write(fh, buf, count, datatype, status) + @mpichk ccall((:MPI_File_write, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +end + +""" + MPI_File_write_all(fh, buf, count, datatype, status) + +$(_doc_external(:MPI_File_write_all)) +""" +function MPI_File_write_all(fh, buf, count, datatype, status) + @mpichk ccall((:MPI_File_write_all, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +end + +""" + MPI_File_write_all_begin(fh, buf, count, datatype) + +$(_doc_external(:MPI_File_write_all_begin)) +""" +function MPI_File_write_all_begin(fh, buf, count, datatype) + @mpichk ccall((:MPI_File_write_all_begin, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype), fh, buf, count, datatype) +end + +""" + MPI_File_write_all_end(fh, buf, status) + +$(_doc_external(:MPI_File_write_all_end)) +""" +function MPI_File_write_all_end(fh, buf, status) + @mpichk ccall((:MPI_File_write_all_end, libmpi), Cint, (MPI_File, MPIPtr, Ptr{MPI_Status}), fh, buf, status) +end + +""" + MPI_File_write_at(fh, offset, buf, count, datatype, status) + +$(_doc_external(:MPI_File_write_at)) +""" +function MPI_File_write_at(fh, offset, buf, count, datatype, status) + @mpichk ccall((:MPI_File_write_at, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, offset, buf, count, datatype, status) +end + +""" + MPI_File_write_at_all(fh, offset, buf, count, datatype, status) + +$(_doc_external(:MPI_File_write_at_all)) """ -function MPI_Ineighbor_alltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) - @mpichk ccall((:MPI_Ineighbor_alltoall_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) +function MPI_File_write_at_all(fh, offset, buf, count, datatype, status) + @mpichk ccall((:MPI_File_write_at_all, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, offset, buf, count, datatype, status) end """ - MPI_Ineighbor_alltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) + MPI_File_write_at_all_begin(fh, offset, buf, count, datatype) -$(_doc_external(:MPI_Ineighbor_alltoallv_c)) +$(_doc_external(:MPI_File_write_at_all_begin)) """ -function MPI_Ineighbor_alltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) - @mpichk ccall((:MPI_Ineighbor_alltoallv_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) +function MPI_File_write_at_all_begin(fh, offset, buf, count, datatype) + @mpichk ccall((:MPI_File_write_at_all_begin, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype), fh, offset, buf, count, datatype) end """ - MPI_Ineighbor_alltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) + MPI_File_write_at_all_end(fh, buf, status) -$(_doc_external(:MPI_Ineighbor_alltoallw_c)) +$(_doc_external(:MPI_File_write_at_all_end)) """ -function MPI_Ineighbor_alltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) - @mpichk ccall((:MPI_Ineighbor_alltoallw_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) +function MPI_File_write_at_all_end(fh, buf, status) + @mpichk ccall((:MPI_File_write_at_all_end, libmpi), Cint, (MPI_File, MPIPtr, Ptr{MPI_Status}), fh, buf, status) end """ - MPI_Ireduce_c(sendbuf, recvbuf, count, datatype, op, root, comm, request) + MPI_File_write_ordered(fh, buf, count, datatype, status) -$(_doc_external(:MPI_Ireduce_c)) +$(_doc_external(:MPI_File_write_ordered)) """ -function MPI_Ireduce_c(sendbuf, recvbuf, count, datatype, op, root, comm, request) - @mpichk ccall((:MPI_Ireduce_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, root, comm, request) +function MPI_File_write_ordered(fh, buf, count, datatype, status) + @mpichk ccall((:MPI_File_write_ordered, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) end """ - MPI_Ireduce_scatter_c(sendbuf, recvbuf, recvcounts, datatype, op, comm, request) + MPI_File_write_ordered_begin(fh, buf, count, datatype) -$(_doc_external(:MPI_Ireduce_scatter_c)) +$(_doc_external(:MPI_File_write_ordered_begin)) """ -function MPI_Ireduce_scatter_c(sendbuf, recvbuf, recvcounts, datatype, op, comm, request) - @mpichk ccall((:MPI_Ireduce_scatter_c, libmpi), Cint, (MPIPtr, MPIPtr, Ptr{MPI_Count}, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, recvcounts, datatype, op, comm, request) +function MPI_File_write_ordered_begin(fh, buf, count, datatype) + @mpichk ccall((:MPI_File_write_ordered_begin, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype), fh, buf, count, datatype) end """ - MPI_Ireduce_scatter_block_c(sendbuf, recvbuf, recvcount, datatype, op, comm, request) + MPI_File_write_ordered_end(fh, buf, status) -$(_doc_external(:MPI_Ireduce_scatter_block_c)) +$(_doc_external(:MPI_File_write_ordered_end)) """ -function MPI_Ireduce_scatter_block_c(sendbuf, recvbuf, recvcount, datatype, op, comm, request) - @mpichk ccall((:MPI_Ireduce_scatter_block_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, recvcount, datatype, op, comm, request) +function MPI_File_write_ordered_end(fh, buf, status) + @mpichk ccall((:MPI_File_write_ordered_end, libmpi), Cint, (MPI_File, MPIPtr, Ptr{MPI_Status}), fh, buf, status) end """ - MPI_Iscan_c(sendbuf, recvbuf, count, datatype, op, comm, request) + MPI_File_write_shared(fh, buf, count, datatype, status) -$(_doc_external(:MPI_Iscan_c)) +$(_doc_external(:MPI_File_write_shared)) """ -function MPI_Iscan_c(sendbuf, recvbuf, count, datatype, op, comm, request) - @mpichk ccall((:MPI_Iscan_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, request) +function MPI_File_write_shared(fh, buf, count, datatype, status) + @mpichk ccall((:MPI_File_write_shared, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) end """ - MPI_Iscatter_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) + MPI_Register_datarep(datarep, read_conversion_fn, write_conversion_fn, dtype_file_extent_fn, extra_state) -$(_doc_external(:MPI_Iscatter_c)) +$(_doc_external(:MPI_Register_datarep)) """ -function MPI_Iscatter_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) - @mpichk ccall((:MPI_Iscatter_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) +function MPI_Register_datarep(datarep, read_conversion_fn, write_conversion_fn, dtype_file_extent_fn, extra_state) + @mpichk ccall((:MPI_Register_datarep, libmpi), Cint, (Ptr{Cchar}, Ptr{MPI_Datarep_conversion_function}, Ptr{MPI_Datarep_conversion_function}, Ptr{MPI_Datarep_extent_function}, MPIPtr), datarep, read_conversion_fn, write_conversion_fn, dtype_file_extent_fn, extra_state) end """ - MPI_Iscatterv_c(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, request) + MPI_File_toint(file) -$(_doc_external(:MPI_Iscatterv_c)) +$(_doc_external(:MPI_File_toint)) """ -function MPI_Iscatterv_c(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, request) - @mpichk ccall((:MPI_Iscatterv_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, request) +function MPI_File_toint(file) + @mpichk ccall((:MPI_File_toint, libmpi), Cint, (MPI_File,), file) end """ - MPI_Neighbor_allgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) + MPI_File_fromint(file) -$(_doc_external(:MPI_Neighbor_allgather_c)) +$(_doc_external(:MPI_File_fromint)) """ -function MPI_Neighbor_allgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) - @mpichk ccall((:MPI_Neighbor_allgather_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) +function MPI_File_fromint(file) + @mpichk ccall((:MPI_File_fromint, libmpi), MPI_File, (Cint,), file) end """ - MPI_Neighbor_allgather_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) + MPI_Allgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) -$(_doc_external(:MPI_Neighbor_allgather_init_c)) +$(_doc_external(:MPI_Allgather_c)) """ -function MPI_Neighbor_allgather_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) - @mpichk ccall((:MPI_Neighbor_allgather_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) +function MPI_Allgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) + @mpichk ccall((:MPI_Allgather_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) end """ - MPI_Neighbor_allgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) + MPI_Allgather_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) -$(_doc_external(:MPI_Neighbor_allgatherv_c)) +$(_doc_external(:MPI_Allgather_init_c)) """ -function MPI_Neighbor_allgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) - @mpichk ccall((:MPI_Neighbor_allgatherv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) +function MPI_Allgather_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) + @mpichk ccall((:MPI_Allgather_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) end """ - MPI_Neighbor_allgatherv_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) + MPI_Allgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) -$(_doc_external(:MPI_Neighbor_allgatherv_init_c)) +$(_doc_external(:MPI_Allgatherv_c)) """ -function MPI_Neighbor_allgatherv_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) - @mpichk ccall((:MPI_Neighbor_allgatherv_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) +function MPI_Allgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) + @mpichk ccall((:MPI_Allgatherv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) end """ - MPI_Neighbor_alltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) + MPI_Allgatherv_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) -$(_doc_external(:MPI_Neighbor_alltoall_c)) +$(_doc_external(:MPI_Allgatherv_init_c)) """ -function MPI_Neighbor_alltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) - @mpichk ccall((:MPI_Neighbor_alltoall_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) +function MPI_Allgatherv_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) + @mpichk ccall((:MPI_Allgatherv_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) end """ - MPI_Neighbor_alltoall_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) + MPI_Allreduce_c(sendbuf, recvbuf, count, datatype, op, comm) -$(_doc_external(:MPI_Neighbor_alltoall_init_c)) +$(_doc_external(:MPI_Allreduce_c)) """ -function MPI_Neighbor_alltoall_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) - @mpichk ccall((:MPI_Neighbor_alltoall_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) +function MPI_Allreduce_c(sendbuf, recvbuf, count, datatype, op, comm) + @mpichk ccall((:MPI_Allreduce_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, count, datatype, op, comm) end """ - MPI_Neighbor_alltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) + MPI_Allreduce_init_c(sendbuf, recvbuf, count, datatype, op, comm, info, request) -$(_doc_external(:MPI_Neighbor_alltoallv_c)) +$(_doc_external(:MPI_Allreduce_init_c)) """ -function MPI_Neighbor_alltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) - @mpichk ccall((:MPI_Neighbor_alltoallv_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) +function MPI_Allreduce_init_c(sendbuf, recvbuf, count, datatype, op, comm, info, request) + @mpichk ccall((:MPI_Allreduce_init_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, info, request) end """ - MPI_Neighbor_alltoallv_init_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) + MPI_Alltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) -$(_doc_external(:MPI_Neighbor_alltoallv_init_c)) +$(_doc_external(:MPI_Alltoall_c)) """ -function MPI_Neighbor_alltoallv_init_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) - @mpichk ccall((:MPI_Neighbor_alltoallv_init_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) +function MPI_Alltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) + @mpichk ccall((:MPI_Alltoall_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) end """ - MPI_Neighbor_alltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) + MPI_Alltoall_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) -$(_doc_external(:MPI_Neighbor_alltoallw_c)) +$(_doc_external(:MPI_Alltoall_init_c)) """ -function MPI_Neighbor_alltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) - @mpichk ccall((:MPI_Neighbor_alltoallw_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) +function MPI_Alltoall_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) + @mpichk ccall((:MPI_Alltoall_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) end """ - MPI_Neighbor_alltoallw_init_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) + MPI_Alltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) -$(_doc_external(:MPI_Neighbor_alltoallw_init_c)) +$(_doc_external(:MPI_Alltoallv_c)) """ -function MPI_Neighbor_alltoallw_init_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) - @mpichk ccall((:MPI_Neighbor_alltoallw_init_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) +function MPI_Alltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) + @mpichk ccall((:MPI_Alltoallv_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) end """ - MPI_Reduce_c(sendbuf, recvbuf, count, datatype, op, root, comm) + MPI_Alltoallv_init_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) -$(_doc_external(:MPI_Reduce_c)) +$(_doc_external(:MPI_Alltoallv_init_c)) """ -function MPI_Reduce_c(sendbuf, recvbuf, count, datatype, op, root, comm) - @mpichk ccall((:MPI_Reduce_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, Cint, MPI_Comm), sendbuf, recvbuf, count, datatype, op, root, comm) +function MPI_Alltoallv_init_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) + @mpichk ccall((:MPI_Alltoallv_init_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) end """ - MPI_Reduce_init_c(sendbuf, recvbuf, count, datatype, op, root, comm, info, request) + MPI_Alltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) -$(_doc_external(:MPI_Reduce_init_c)) +$(_doc_external(:MPI_Alltoallw_c)) """ -function MPI_Reduce_init_c(sendbuf, recvbuf, count, datatype, op, root, comm, info, request) - @mpichk ccall((:MPI_Reduce_init_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, root, comm, info, request) +function MPI_Alltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) + @mpichk ccall((:MPI_Alltoallw_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) end """ - MPI_Reduce_local_c(inbuf, inoutbuf, count, datatype, op) + MPI_Alltoallw_init_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) -$(_doc_external(:MPI_Reduce_local_c)) +$(_doc_external(:MPI_Alltoallw_init_c)) """ -function MPI_Reduce_local_c(inbuf, inoutbuf, count, datatype, op) - @mpichk ccall((:MPI_Reduce_local_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op), inbuf, inoutbuf, count, datatype, op) +function MPI_Alltoallw_init_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) + @mpichk ccall((:MPI_Alltoallw_init_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) end """ - MPI_Reduce_scatter_c(sendbuf, recvbuf, recvcounts, datatype, op, comm) + MPI_Bcast_c(buffer, count, datatype, root, comm) -$(_doc_external(:MPI_Reduce_scatter_c)) +$(_doc_external(:MPI_Bcast_c)) """ -function MPI_Reduce_scatter_c(sendbuf, recvbuf, recvcounts, datatype, op, comm) - @mpichk ccall((:MPI_Reduce_scatter_c, libmpi), Cint, (MPIPtr, MPIPtr, Ptr{MPI_Count}, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, recvcounts, datatype, op, comm) +function MPI_Bcast_c(buffer, count, datatype, root, comm) + @mpichk ccall((:MPI_Bcast_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm), buffer, count, datatype, root, comm) end """ - MPI_Reduce_scatter_block_c(sendbuf, recvbuf, recvcount, datatype, op, comm) + MPI_Bcast_init_c(buffer, count, datatype, root, comm, info, request) -$(_doc_external(:MPI_Reduce_scatter_block_c)) +$(_doc_external(:MPI_Bcast_init_c)) """ -function MPI_Reduce_scatter_block_c(sendbuf, recvbuf, recvcount, datatype, op, comm) - @mpichk ccall((:MPI_Reduce_scatter_block_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, recvcount, datatype, op, comm) +function MPI_Bcast_init_c(buffer, count, datatype, root, comm, info, request) + @mpichk ccall((:MPI_Bcast_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), buffer, count, datatype, root, comm, info, request) end """ - MPI_Reduce_scatter_block_init_c(sendbuf, recvbuf, recvcount, datatype, op, comm, info, request) + MPI_Exscan_c(sendbuf, recvbuf, count, datatype, op, comm) -$(_doc_external(:MPI_Reduce_scatter_block_init_c)) +$(_doc_external(:MPI_Exscan_c)) """ -function MPI_Reduce_scatter_block_init_c(sendbuf, recvbuf, recvcount, datatype, op, comm, info, request) - @mpichk ccall((:MPI_Reduce_scatter_block_init_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, recvcount, datatype, op, comm, info, request) +function MPI_Exscan_c(sendbuf, recvbuf, count, datatype, op, comm) + @mpichk ccall((:MPI_Exscan_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, count, datatype, op, comm) end """ - MPI_Reduce_scatter_init_c(sendbuf, recvbuf, recvcounts, datatype, op, comm, info, request) + MPI_Exscan_init_c(sendbuf, recvbuf, count, datatype, op, comm, info, request) -$(_doc_external(:MPI_Reduce_scatter_init_c)) +$(_doc_external(:MPI_Exscan_init_c)) """ -function MPI_Reduce_scatter_init_c(sendbuf, recvbuf, recvcounts, datatype, op, comm, info, request) - @mpichk ccall((:MPI_Reduce_scatter_init_c, libmpi), Cint, (MPIPtr, MPIPtr, Ptr{MPI_Count}, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, recvcounts, datatype, op, comm, info, request) +function MPI_Exscan_init_c(sendbuf, recvbuf, count, datatype, op, comm, info, request) + @mpichk ccall((:MPI_Exscan_init_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, info, request) end """ - MPI_Scan_c(sendbuf, recvbuf, count, datatype, op, comm) + MPI_Gather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) -$(_doc_external(:MPI_Scan_c)) +$(_doc_external(:MPI_Gather_c)) """ -function MPI_Scan_c(sendbuf, recvbuf, count, datatype, op, comm) - @mpichk ccall((:MPI_Scan_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, count, datatype, op, comm) +function MPI_Gather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) + @mpichk ccall((:MPI_Gather_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) end """ - MPI_Scan_init_c(sendbuf, recvbuf, count, datatype, op, comm, info, request) + MPI_Gather_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) -$(_doc_external(:MPI_Scan_init_c)) +$(_doc_external(:MPI_Gather_init_c)) """ -function MPI_Scan_init_c(sendbuf, recvbuf, count, datatype, op, comm, info, request) - @mpichk ccall((:MPI_Scan_init_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, info, request) +function MPI_Gather_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) + @mpichk ccall((:MPI_Gather_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) end """ - MPI_Scatter_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) + MPI_Gatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm) -$(_doc_external(:MPI_Scatter_c)) +$(_doc_external(:MPI_Gatherv_c)) """ -function MPI_Scatter_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) - @mpichk ccall((:MPI_Scatter_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) +function MPI_Gatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm) + @mpichk ccall((:MPI_Gatherv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm) end """ - MPI_Scatter_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) + MPI_Gatherv_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, info, request) -$(_doc_external(:MPI_Scatter_init_c)) +$(_doc_external(:MPI_Gatherv_init_c)) """ -function MPI_Scatter_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) - @mpichk ccall((:MPI_Scatter_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) +function MPI_Gatherv_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, info, request) + @mpichk ccall((:MPI_Gatherv_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, info, request) end """ - MPI_Scatterv_c(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm) + MPI_Iallgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) -$(_doc_external(:MPI_Scatterv_c)) +$(_doc_external(:MPI_Iallgather_c)) """ -function MPI_Scatterv_c(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm) - @mpichk ccall((:MPI_Scatterv_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm) +function MPI_Iallgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) + @mpichk ccall((:MPI_Iallgather_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) end """ - MPI_Scatterv_init_c(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) + MPI_Iallgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) -$(_doc_external(:MPI_Scatterv_init_c)) +$(_doc_external(:MPI_Iallgatherv_c)) """ -function MPI_Scatterv_init_c(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) - @mpichk ccall((:MPI_Scatterv_init_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) +function MPI_Iallgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) + @mpichk ccall((:MPI_Iallgatherv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) end """ - MPI_Get_count_c(status, datatype, count) + MPI_Iallreduce_c(sendbuf, recvbuf, count, datatype, op, comm, request) -$(_doc_external(:MPI_Get_count_c)) +$(_doc_external(:MPI_Iallreduce_c)) """ -function MPI_Get_count_c(status, datatype, count) - @mpichk ccall((:MPI_Get_count_c, libmpi), Cint, (Ptr{MPI_Status}, MPI_Datatype, Ptr{MPI_Count}), status, datatype, count) +function MPI_Iallreduce_c(sendbuf, recvbuf, count, datatype, op, comm, request) + @mpichk ccall((:MPI_Iallreduce_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, request) end """ - MPI_Get_elements_c(status, datatype, count) + MPI_Ialltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) -$(_doc_external(:MPI_Get_elements_c)) +$(_doc_external(:MPI_Ialltoall_c)) """ -function MPI_Get_elements_c(status, datatype, count) - @mpichk ccall((:MPI_Get_elements_c, libmpi), Cint, (Ptr{MPI_Status}, MPI_Datatype, Ptr{MPI_Count}), status, datatype, count) +function MPI_Ialltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) + @mpichk ccall((:MPI_Ialltoall_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) end """ - MPI_Pack_c(inbuf, incount, datatype, outbuf, outsize, position, comm) + MPI_Ialltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) -$(_doc_external(:MPI_Pack_c)) +$(_doc_external(:MPI_Ialltoallv_c)) """ -function MPI_Pack_c(inbuf, incount, datatype, outbuf, outsize, position, comm) - @mpichk ccall((:MPI_Pack_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, Ptr{MPI_Count}, MPI_Comm), inbuf, incount, datatype, outbuf, outsize, position, comm) +function MPI_Ialltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) + @mpichk ccall((:MPI_Ialltoallv_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) end """ - MPI_Pack_external_c(datarep, inbuf, incount, datatype, outbuf, outsize, position) + MPI_Ialltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) -$(_doc_external(:MPI_Pack_external_c)) +$(_doc_external(:MPI_Ialltoallw_c)) """ -function MPI_Pack_external_c(datarep, inbuf, incount, datatype, outbuf, outsize, position) - @mpichk ccall((:MPI_Pack_external_c, libmpi), Cint, (Ptr{Cchar}, MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, Ptr{MPI_Count}), datarep, inbuf, incount, datatype, outbuf, outsize, position) +function MPI_Ialltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) + @mpichk ccall((:MPI_Ialltoallw_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) end """ - MPI_Pack_external_size_c(datarep, incount, datatype, size) + MPI_Ibcast_c(buffer, count, datatype, root, comm, request) -$(_doc_external(:MPI_Pack_external_size_c)) +$(_doc_external(:MPI_Ibcast_c)) """ -function MPI_Pack_external_size_c(datarep, incount, datatype, size) - @mpichk ccall((:MPI_Pack_external_size_c, libmpi), Cint, (Ptr{Cchar}, MPI_Count, MPI_Datatype, Ptr{MPI_Count}), datarep, incount, datatype, size) +function MPI_Ibcast_c(buffer, count, datatype, root, comm, request) + @mpichk ccall((:MPI_Ibcast_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), buffer, count, datatype, root, comm, request) end """ - MPI_Pack_size_c(incount, datatype, comm, size) + MPI_Iexscan_c(sendbuf, recvbuf, count, datatype, op, comm, request) -$(_doc_external(:MPI_Pack_size_c)) +$(_doc_external(:MPI_Iexscan_c)) """ -function MPI_Pack_size_c(incount, datatype, comm, size) - @mpichk ccall((:MPI_Pack_size_c, libmpi), Cint, (MPI_Count, MPI_Datatype, MPI_Comm, Ptr{MPI_Count}), incount, datatype, comm, size) +function MPI_Iexscan_c(sendbuf, recvbuf, count, datatype, op, comm, request) + @mpichk ccall((:MPI_Iexscan_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, request) end """ - MPI_Type_contiguous_c(count, oldtype, newtype) + MPI_Igather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) -$(_doc_external(:MPI_Type_contiguous_c)) +$(_doc_external(:MPI_Igather_c)) """ -function MPI_Type_contiguous_c(count, oldtype, newtype) - @mpichk ccall((:MPI_Type_contiguous_c, libmpi), Cint, (MPI_Count, MPI_Datatype, Ptr{MPI_Datatype}), count, oldtype, newtype) +function MPI_Igather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) + @mpichk ccall((:MPI_Igather_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) end """ - MPI_Type_create_darray_c(size, rank, ndims, array_of_gsizes, array_of_distribs, array_of_dargs, array_of_psizes, order, oldtype, newtype) + MPI_Igatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, request) -$(_doc_external(:MPI_Type_create_darray_c)) +$(_doc_external(:MPI_Igatherv_c)) """ -function MPI_Type_create_darray_c(size, rank, ndims, array_of_gsizes, array_of_distribs, array_of_dargs, array_of_psizes, order, oldtype, newtype) - @mpichk ccall((:MPI_Type_create_darray_c, libmpi), Cint, (Cint, Cint, Cint, Ptr{MPI_Count}, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}, Cint, MPI_Datatype, Ptr{MPI_Datatype}), size, rank, ndims, array_of_gsizes, array_of_distribs, array_of_dargs, array_of_psizes, order, oldtype, newtype) +function MPI_Igatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, request) + @mpichk ccall((:MPI_Igatherv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, request) end """ - MPI_Type_create_hindexed_c(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) + MPI_Ineighbor_allgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) -$(_doc_external(:MPI_Type_create_hindexed_c)) +$(_doc_external(:MPI_Ineighbor_allgather_c)) """ -function MPI_Type_create_hindexed_c(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) - @mpichk ccall((:MPI_Type_create_hindexed_c, libmpi), Cint, (MPI_Count, Ptr{MPI_Count}, Ptr{MPI_Count}, MPI_Datatype, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, oldtype, newtype) +function MPI_Ineighbor_allgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) + @mpichk ccall((:MPI_Ineighbor_allgather_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) end """ - MPI_Type_create_hindexed_block_c(count, blocklength, array_of_displacements, oldtype, newtype) + MPI_Ineighbor_allgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) -$(_doc_external(:MPI_Type_create_hindexed_block_c)) +$(_doc_external(:MPI_Ineighbor_allgatherv_c)) """ -function MPI_Type_create_hindexed_block_c(count, blocklength, array_of_displacements, oldtype, newtype) - @mpichk ccall((:MPI_Type_create_hindexed_block_c, libmpi), Cint, (MPI_Count, MPI_Count, Ptr{MPI_Count}, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, array_of_displacements, oldtype, newtype) +function MPI_Ineighbor_allgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) + @mpichk ccall((:MPI_Ineighbor_allgatherv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) end """ - MPI_Type_create_hvector_c(count, blocklength, stride, oldtype, newtype) + MPI_Ineighbor_alltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) -$(_doc_external(:MPI_Type_create_hvector_c)) +$(_doc_external(:MPI_Ineighbor_alltoall_c)) """ -function MPI_Type_create_hvector_c(count, blocklength, stride, oldtype, newtype) - @mpichk ccall((:MPI_Type_create_hvector_c, libmpi), Cint, (MPI_Count, MPI_Count, MPI_Count, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, stride, oldtype, newtype) +function MPI_Ineighbor_alltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) + @mpichk ccall((:MPI_Ineighbor_alltoall_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) end """ - MPI_Type_create_indexed_block_c(count, blocklength, array_of_displacements, oldtype, newtype) + MPI_Ineighbor_alltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) -$(_doc_external(:MPI_Type_create_indexed_block_c)) +$(_doc_external(:MPI_Ineighbor_alltoallv_c)) """ -function MPI_Type_create_indexed_block_c(count, blocklength, array_of_displacements, oldtype, newtype) - @mpichk ccall((:MPI_Type_create_indexed_block_c, libmpi), Cint, (MPI_Count, MPI_Count, Ptr{MPI_Count}, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, array_of_displacements, oldtype, newtype) +function MPI_Ineighbor_alltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) + @mpichk ccall((:MPI_Ineighbor_alltoallv_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) end """ - MPI_Type_create_resized_c(oldtype, lb, extent, newtype) + MPI_Ineighbor_alltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) -$(_doc_external(:MPI_Type_create_resized_c)) +$(_doc_external(:MPI_Ineighbor_alltoallw_c)) """ -function MPI_Type_create_resized_c(oldtype, lb, extent, newtype) - @mpichk ccall((:MPI_Type_create_resized_c, libmpi), Cint, (MPI_Datatype, MPI_Count, MPI_Count, Ptr{MPI_Datatype}), oldtype, lb, extent, newtype) +function MPI_Ineighbor_alltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) + @mpichk ccall((:MPI_Ineighbor_alltoallw_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) end """ - MPI_Type_create_struct_c(count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) + MPI_Ireduce_c(sendbuf, recvbuf, count, datatype, op, root, comm, request) -$(_doc_external(:MPI_Type_create_struct_c)) +$(_doc_external(:MPI_Ireduce_c)) """ -function MPI_Type_create_struct_c(count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) - @mpichk ccall((:MPI_Type_create_struct_c, libmpi), Cint, (MPI_Count, Ptr{MPI_Count}, Ptr{MPI_Count}, Ptr{MPI_Datatype}, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) +function MPI_Ireduce_c(sendbuf, recvbuf, count, datatype, op, root, comm, request) + @mpichk ccall((:MPI_Ireduce_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, root, comm, request) end """ - MPI_Type_create_subarray_c(ndims, array_of_sizes, array_of_subsizes, array_of_starts, order, oldtype, newtype) + MPI_Ireduce_scatter_c(sendbuf, recvbuf, recvcounts, datatype, op, comm, request) -$(_doc_external(:MPI_Type_create_subarray_c)) +$(_doc_external(:MPI_Ireduce_scatter_c)) """ -function MPI_Type_create_subarray_c(ndims, array_of_sizes, array_of_subsizes, array_of_starts, order, oldtype, newtype) - @mpichk ccall((:MPI_Type_create_subarray_c, libmpi), Cint, (Cint, Ptr{MPI_Count}, Ptr{MPI_Count}, Ptr{MPI_Count}, Cint, MPI_Datatype, Ptr{MPI_Datatype}), ndims, array_of_sizes, array_of_subsizes, array_of_starts, order, oldtype, newtype) +function MPI_Ireduce_scatter_c(sendbuf, recvbuf, recvcounts, datatype, op, comm, request) + @mpichk ccall((:MPI_Ireduce_scatter_c, libmpi), Cint, (MPIPtr, MPIPtr, Ptr{MPI_Count}, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, recvcounts, datatype, op, comm, request) end """ - MPI_Type_get_contents_c(datatype, max_integers, max_addresses, max_large_counts, max_datatypes, array_of_integers, array_of_addresses, array_of_large_counts, array_of_datatypes) + MPI_Ireduce_scatter_block_c(sendbuf, recvbuf, recvcount, datatype, op, comm, request) -$(_doc_external(:MPI_Type_get_contents_c)) +$(_doc_external(:MPI_Ireduce_scatter_block_c)) """ -function MPI_Type_get_contents_c(datatype, max_integers, max_addresses, max_large_counts, max_datatypes, array_of_integers, array_of_addresses, array_of_large_counts, array_of_datatypes) - @mpichk ccall((:MPI_Type_get_contents_c, libmpi), Cint, (MPI_Datatype, MPI_Count, MPI_Count, MPI_Count, MPI_Count, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Count}, Ptr{MPI_Datatype}), datatype, max_integers, max_addresses, max_large_counts, max_datatypes, array_of_integers, array_of_addresses, array_of_large_counts, array_of_datatypes) +function MPI_Ireduce_scatter_block_c(sendbuf, recvbuf, recvcount, datatype, op, comm, request) + @mpichk ccall((:MPI_Ireduce_scatter_block_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, recvcount, datatype, op, comm, request) end """ - MPI_Type_get_envelope_c(datatype, num_integers, num_addresses, num_large_counts, num_datatypes, combiner) + MPI_Iscan_c(sendbuf, recvbuf, count, datatype, op, comm, request) -$(_doc_external(:MPI_Type_get_envelope_c)) +$(_doc_external(:MPI_Iscan_c)) """ -function MPI_Type_get_envelope_c(datatype, num_integers, num_addresses, num_large_counts, num_datatypes, combiner) - @mpichk ccall((:MPI_Type_get_envelope_c, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Count}, Ptr{MPI_Count}, Ptr{MPI_Count}, Ptr{MPI_Count}, Ptr{Cint}), datatype, num_integers, num_addresses, num_large_counts, num_datatypes, combiner) +function MPI_Iscan_c(sendbuf, recvbuf, count, datatype, op, comm, request) + @mpichk ccall((:MPI_Iscan_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, request) end """ - MPI_Type_get_extent_c(datatype, lb, extent) + MPI_Iscatter_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) -$(_doc_external(:MPI_Type_get_extent_c)) +$(_doc_external(:MPI_Iscatter_c)) """ -function MPI_Type_get_extent_c(datatype, lb, extent) - @mpichk ccall((:MPI_Type_get_extent_c, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Count}, Ptr{MPI_Count}), datatype, lb, extent) +function MPI_Iscatter_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) + @mpichk ccall((:MPI_Iscatter_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) end """ - MPI_Type_get_true_extent_c(datatype, true_lb, true_extent) + MPI_Iscatterv_c(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, request) -$(_doc_external(:MPI_Type_get_true_extent_c)) +$(_doc_external(:MPI_Iscatterv_c)) """ -function MPI_Type_get_true_extent_c(datatype, true_lb, true_extent) - @mpichk ccall((:MPI_Type_get_true_extent_c, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Count}, Ptr{MPI_Count}), datatype, true_lb, true_extent) +function MPI_Iscatterv_c(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, request) + @mpichk ccall((:MPI_Iscatterv_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, request) end """ - MPI_Type_indexed_c(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) + MPI_Neighbor_allgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) -$(_doc_external(:MPI_Type_indexed_c)) +$(_doc_external(:MPI_Neighbor_allgather_c)) """ -function MPI_Type_indexed_c(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) - @mpichk ccall((:MPI_Type_indexed_c, libmpi), Cint, (MPI_Count, Ptr{MPI_Count}, Ptr{MPI_Count}, MPI_Datatype, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, oldtype, newtype) +function MPI_Neighbor_allgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) + @mpichk ccall((:MPI_Neighbor_allgather_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) end """ - MPI_Type_size_c(datatype, size) + MPI_Neighbor_allgather_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) -$(_doc_external(:MPI_Type_size_c)) +$(_doc_external(:MPI_Neighbor_allgather_init_c)) """ -function MPI_Type_size_c(datatype, size) - @mpichk ccall((:MPI_Type_size_c, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Count}), datatype, size) +function MPI_Neighbor_allgather_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) + @mpichk ccall((:MPI_Neighbor_allgather_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) end """ - MPI_Type_vector_c(count, blocklength, stride, oldtype, newtype) + MPI_Neighbor_allgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) -$(_doc_external(:MPI_Type_vector_c)) +$(_doc_external(:MPI_Neighbor_allgatherv_c)) """ -function MPI_Type_vector_c(count, blocklength, stride, oldtype, newtype) - @mpichk ccall((:MPI_Type_vector_c, libmpi), Cint, (MPI_Count, MPI_Count, MPI_Count, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, stride, oldtype, newtype) +function MPI_Neighbor_allgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) + @mpichk ccall((:MPI_Neighbor_allgatherv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) end """ - MPI_Unpack_c(inbuf, insize, position, outbuf, outcount, datatype, comm) + MPI_Neighbor_allgatherv_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) -$(_doc_external(:MPI_Unpack_c)) +$(_doc_external(:MPI_Neighbor_allgatherv_init_c)) """ -function MPI_Unpack_c(inbuf, insize, position, outbuf, outcount, datatype, comm) - @mpichk ccall((:MPI_Unpack_c, libmpi), Cint, (MPIPtr, MPI_Count, Ptr{MPI_Count}, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm), inbuf, insize, position, outbuf, outcount, datatype, comm) +function MPI_Neighbor_allgatherv_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) + @mpichk ccall((:MPI_Neighbor_allgatherv_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) end """ - MPI_Unpack_external_c(datarep, inbuf, insize, position, outbuf, outcount, datatype) + MPI_Neighbor_alltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) -$(_doc_external(:MPI_Unpack_external_c)) +$(_doc_external(:MPI_Neighbor_alltoall_c)) """ -function MPI_Unpack_external_c(datarep, inbuf, insize, position, outbuf, outcount, datatype) - @mpichk ccall((:MPI_Unpack_external_c, libmpi), Cint, (Ptr{Cchar}, MPIPtr, MPI_Count, Ptr{MPI_Count}, MPIPtr, MPI_Count, MPI_Datatype), datarep, inbuf, insize, position, outbuf, outcount, datatype) +function MPI_Neighbor_alltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) + @mpichk ccall((:MPI_Neighbor_alltoall_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) end """ - MPI_Op_create_c(user_fn, commute, op) + MPI_Neighbor_alltoall_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) -$(_doc_external(:MPI_Op_create_c)) +$(_doc_external(:MPI_Neighbor_alltoall_init_c)) """ -function MPI_Op_create_c(user_fn, commute, op) - @mpichk ccall((:MPI_Op_create_c, libmpi), Cint, (Ptr{MPI_User_function_c}, Cint, Ptr{MPI_Op}), user_fn, commute, op) +function MPI_Neighbor_alltoall_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) + @mpichk ccall((:MPI_Neighbor_alltoall_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) end """ - MPI_Bsend_c(buf, count, datatype, dest, tag, comm) + MPI_Neighbor_alltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) -$(_doc_external(:MPI_Bsend_c)) +$(_doc_external(:MPI_Neighbor_alltoallv_c)) """ -function MPI_Bsend_c(buf, count, datatype, dest, tag, comm) - @mpichk ccall((:MPI_Bsend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) +function MPI_Neighbor_alltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) + @mpichk ccall((:MPI_Neighbor_alltoallv_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) end """ - MPI_Bsend_init_c(buf, count, datatype, dest, tag, comm, request) + MPI_Neighbor_alltoallv_init_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) -$(_doc_external(:MPI_Bsend_init_c)) +$(_doc_external(:MPI_Neighbor_alltoallv_init_c)) """ -function MPI_Bsend_init_c(buf, count, datatype, dest, tag, comm, request) - @mpichk ccall((:MPI_Bsend_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) +function MPI_Neighbor_alltoallv_init_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) + @mpichk ccall((:MPI_Neighbor_alltoallv_init_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) end """ - MPI_Buffer_attach_c(buffer, size) + MPI_Neighbor_alltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) -$(_doc_external(:MPI_Buffer_attach_c)) +$(_doc_external(:MPI_Neighbor_alltoallw_c)) """ -function MPI_Buffer_attach_c(buffer, size) - @mpichk ccall((:MPI_Buffer_attach_c, libmpi), Cint, (MPIPtr, MPI_Count), buffer, size) +function MPI_Neighbor_alltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) + @mpichk ccall((:MPI_Neighbor_alltoallw_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) end """ - MPI_Buffer_detach_c(buffer_addr, size) + MPI_Neighbor_alltoallw_init_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) -$(_doc_external(:MPI_Buffer_detach_c)) +$(_doc_external(:MPI_Neighbor_alltoallw_init_c)) """ -function MPI_Buffer_detach_c(buffer_addr, size) - @mpichk ccall((:MPI_Buffer_detach_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}), buffer_addr, size) +function MPI_Neighbor_alltoallw_init_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) + @mpichk ccall((:MPI_Neighbor_alltoallw_init_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) end """ - MPI_Ibsend_c(buf, count, datatype, dest, tag, comm, request) + MPI_Reduce_c(sendbuf, recvbuf, count, datatype, op, root, comm) -$(_doc_external(:MPI_Ibsend_c)) +$(_doc_external(:MPI_Reduce_c)) """ -function MPI_Ibsend_c(buf, count, datatype, dest, tag, comm, request) - @mpichk ccall((:MPI_Ibsend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) +function MPI_Reduce_c(sendbuf, recvbuf, count, datatype, op, root, comm) + @mpichk ccall((:MPI_Reduce_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, Cint, MPI_Comm), sendbuf, recvbuf, count, datatype, op, root, comm) end """ - MPI_Imrecv_c(buf, count, datatype, message, request) + MPI_Reduce_init_c(sendbuf, recvbuf, count, datatype, op, root, comm, info, request) -$(_doc_external(:MPI_Imrecv_c)) +$(_doc_external(:MPI_Reduce_init_c)) """ -function MPI_Imrecv_c(buf, count, datatype, message, request) - @mpichk ccall((:MPI_Imrecv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Message}, Ptr{MPI_Request}), buf, count, datatype, message, request) +function MPI_Reduce_init_c(sendbuf, recvbuf, count, datatype, op, root, comm, info, request) + @mpichk ccall((:MPI_Reduce_init_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, root, comm, info, request) end """ - MPI_Irecv_c(buf, count, datatype, source, tag, comm, request) + MPI_Reduce_local_c(inbuf, inoutbuf, count, datatype, op) -$(_doc_external(:MPI_Irecv_c)) +$(_doc_external(:MPI_Reduce_local_c)) """ -function MPI_Irecv_c(buf, count, datatype, source, tag, comm, request) - @mpichk ccall((:MPI_Irecv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, source, tag, comm, request) +function MPI_Reduce_local_c(inbuf, inoutbuf, count, datatype, op) + @mpichk ccall((:MPI_Reduce_local_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op), inbuf, inoutbuf, count, datatype, op) end """ - MPI_Irsend_c(buf, count, datatype, dest, tag, comm, request) + MPI_Reduce_scatter_c(sendbuf, recvbuf, recvcounts, datatype, op, comm) -$(_doc_external(:MPI_Irsend_c)) +$(_doc_external(:MPI_Reduce_scatter_c)) """ -function MPI_Irsend_c(buf, count, datatype, dest, tag, comm, request) - @mpichk ccall((:MPI_Irsend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) +function MPI_Reduce_scatter_c(sendbuf, recvbuf, recvcounts, datatype, op, comm) + @mpichk ccall((:MPI_Reduce_scatter_c, libmpi), Cint, (MPIPtr, MPIPtr, Ptr{MPI_Count}, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, recvcounts, datatype, op, comm) end """ - MPI_Isend_c(buf, count, datatype, dest, tag, comm, request) + MPI_Reduce_scatter_block_c(sendbuf, recvbuf, recvcount, datatype, op, comm) -$(_doc_external(:MPI_Isend_c)) +$(_doc_external(:MPI_Reduce_scatter_block_c)) """ -function MPI_Isend_c(buf, count, datatype, dest, tag, comm, request) - @mpichk ccall((:MPI_Isend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) +function MPI_Reduce_scatter_block_c(sendbuf, recvbuf, recvcount, datatype, op, comm) + @mpichk ccall((:MPI_Reduce_scatter_block_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, recvcount, datatype, op, comm) end """ - MPI_Isendrecv_c(sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, request) + MPI_Reduce_scatter_block_init_c(sendbuf, recvbuf, recvcount, datatype, op, comm, info, request) -$(_doc_external(:MPI_Isendrecv_c)) +$(_doc_external(:MPI_Reduce_scatter_block_init_c)) """ -function MPI_Isendrecv_c(sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, request) - @mpichk ccall((:MPI_Isendrecv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, request) +function MPI_Reduce_scatter_block_init_c(sendbuf, recvbuf, recvcount, datatype, op, comm, info, request) + @mpichk ccall((:MPI_Reduce_scatter_block_init_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, recvcount, datatype, op, comm, info, request) end """ - MPI_Isendrecv_replace_c(buf, count, datatype, dest, sendtag, source, recvtag, comm, request) + MPI_Reduce_scatter_init_c(sendbuf, recvbuf, recvcounts, datatype, op, comm, info, request) -$(_doc_external(:MPI_Isendrecv_replace_c)) +$(_doc_external(:MPI_Reduce_scatter_init_c)) """ -function MPI_Isendrecv_replace_c(buf, count, datatype, dest, sendtag, source, recvtag, comm, request) - @mpichk ccall((:MPI_Isendrecv_replace_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, sendtag, source, recvtag, comm, request) +function MPI_Reduce_scatter_init_c(sendbuf, recvbuf, recvcounts, datatype, op, comm, info, request) + @mpichk ccall((:MPI_Reduce_scatter_init_c, libmpi), Cint, (MPIPtr, MPIPtr, Ptr{MPI_Count}, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, recvcounts, datatype, op, comm, info, request) end """ - MPI_Issend_c(buf, count, datatype, dest, tag, comm, request) + MPI_Scan_c(sendbuf, recvbuf, count, datatype, op, comm) -$(_doc_external(:MPI_Issend_c)) +$(_doc_external(:MPI_Scan_c)) """ -function MPI_Issend_c(buf, count, datatype, dest, tag, comm, request) - @mpichk ccall((:MPI_Issend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) +function MPI_Scan_c(sendbuf, recvbuf, count, datatype, op, comm) + @mpichk ccall((:MPI_Scan_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, count, datatype, op, comm) end """ - MPI_Mrecv_c(buf, count, datatype, message, status) + MPI_Scan_init_c(sendbuf, recvbuf, count, datatype, op, comm, info, request) -$(_doc_external(:MPI_Mrecv_c)) +$(_doc_external(:MPI_Scan_init_c)) """ -function MPI_Mrecv_c(buf, count, datatype, message, status) - @mpichk ccall((:MPI_Mrecv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Message}, Ptr{MPI_Status}), buf, count, datatype, message, status) +function MPI_Scan_init_c(sendbuf, recvbuf, count, datatype, op, comm, info, request) + @mpichk ccall((:MPI_Scan_init_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, info, request) end """ - MPI_Recv_c(buf, count, datatype, source, tag, comm, status) + MPI_Scatter_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) -$(_doc_external(:MPI_Recv_c)) +$(_doc_external(:MPI_Scatter_c)) """ -function MPI_Recv_c(buf, count, datatype, source, tag, comm, status) - @mpichk ccall((:MPI_Recv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Status}), buf, count, datatype, source, tag, comm, status) +function MPI_Scatter_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) + @mpichk ccall((:MPI_Scatter_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) end """ - MPI_Recv_init_c(buf, count, datatype, source, tag, comm, request) + MPI_Scatter_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) -$(_doc_external(:MPI_Recv_init_c)) +$(_doc_external(:MPI_Scatter_init_c)) """ -function MPI_Recv_init_c(buf, count, datatype, source, tag, comm, request) - @mpichk ccall((:MPI_Recv_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, source, tag, comm, request) +function MPI_Scatter_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) + @mpichk ccall((:MPI_Scatter_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) end """ - MPI_Rsend_c(buf, count, datatype, dest, tag, comm) + MPI_Scatterv_c(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm) -$(_doc_external(:MPI_Rsend_c)) +$(_doc_external(:MPI_Scatterv_c)) """ -function MPI_Rsend_c(buf, count, datatype, dest, tag, comm) - @mpichk ccall((:MPI_Rsend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) +function MPI_Scatterv_c(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm) + @mpichk ccall((:MPI_Scatterv_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm) end """ - MPI_Rsend_init_c(buf, count, datatype, dest, tag, comm, request) + MPI_Scatterv_init_c(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) -$(_doc_external(:MPI_Rsend_init_c)) +$(_doc_external(:MPI_Scatterv_init_c)) """ -function MPI_Rsend_init_c(buf, count, datatype, dest, tag, comm, request) - @mpichk ccall((:MPI_Rsend_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) +function MPI_Scatterv_init_c(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) + @mpichk ccall((:MPI_Scatterv_init_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) end """ - MPI_Send_c(buf, count, datatype, dest, tag, comm) + MPI_Get_count_c(status, datatype, count) -$(_doc_external(:MPI_Send_c)) +$(_doc_external(:MPI_Get_count_c)) """ -function MPI_Send_c(buf, count, datatype, dest, tag, comm) - @mpichk ccall((:MPI_Send_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) +function MPI_Get_count_c(status, datatype, count) + @mpichk ccall((:MPI_Get_count_c, libmpi), Cint, (Ptr{MPI_Status}, MPI_Datatype, Ptr{MPI_Count}), status, datatype, count) end """ - MPI_Send_init_c(buf, count, datatype, dest, tag, comm, request) + MPI_Get_elements_c(status, datatype, count) -$(_doc_external(:MPI_Send_init_c)) +$(_doc_external(:MPI_Get_elements_c)) """ -function MPI_Send_init_c(buf, count, datatype, dest, tag, comm, request) - @mpichk ccall((:MPI_Send_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) +function MPI_Get_elements_c(status, datatype, count) + @mpichk ccall((:MPI_Get_elements_c, libmpi), Cint, (Ptr{MPI_Status}, MPI_Datatype, Ptr{MPI_Count}), status, datatype, count) end """ - MPI_Sendrecv_c(sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, status) + MPI_Pack_c(inbuf, incount, datatype, outbuf, outsize, position, comm) -$(_doc_external(:MPI_Sendrecv_c)) +$(_doc_external(:MPI_Pack_c)) """ -function MPI_Sendrecv_c(sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, status) - @mpichk ccall((:MPI_Sendrecv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Status}), sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, status) +function MPI_Pack_c(inbuf, incount, datatype, outbuf, outsize, position, comm) + @mpichk ccall((:MPI_Pack_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, Ptr{MPI_Count}, MPI_Comm), inbuf, incount, datatype, outbuf, outsize, position, comm) end """ - MPI_Sendrecv_replace_c(buf, count, datatype, dest, sendtag, source, recvtag, comm, status) + MPI_Pack_external_c(datarep, inbuf, incount, datatype, outbuf, outsize, position) -$(_doc_external(:MPI_Sendrecv_replace_c)) +$(_doc_external(:MPI_Pack_external_c)) """ -function MPI_Sendrecv_replace_c(buf, count, datatype, dest, sendtag, source, recvtag, comm, status) - @mpichk ccall((:MPI_Sendrecv_replace_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, Cint, Cint, MPI_Comm, Ptr{MPI_Status}), buf, count, datatype, dest, sendtag, source, recvtag, comm, status) +function MPI_Pack_external_c(datarep, inbuf, incount, datatype, outbuf, outsize, position) + @mpichk ccall((:MPI_Pack_external_c, libmpi), Cint, (Ptr{Cchar}, MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, Ptr{MPI_Count}), datarep, inbuf, incount, datatype, outbuf, outsize, position) end """ - MPI_Ssend_c(buf, count, datatype, dest, tag, comm) + MPI_Pack_external_size_c(datarep, incount, datatype, size) -$(_doc_external(:MPI_Ssend_c)) +$(_doc_external(:MPI_Pack_external_size_c)) """ -function MPI_Ssend_c(buf, count, datatype, dest, tag, comm) - @mpichk ccall((:MPI_Ssend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) +function MPI_Pack_external_size_c(datarep, incount, datatype, size) + @mpichk ccall((:MPI_Pack_external_size_c, libmpi), Cint, (Ptr{Cchar}, MPI_Count, MPI_Datatype, Ptr{MPI_Count}), datarep, incount, datatype, size) end """ - MPI_Ssend_init_c(buf, count, datatype, dest, tag, comm, request) + MPI_Pack_size_c(incount, datatype, comm, size) -$(_doc_external(:MPI_Ssend_init_c)) +$(_doc_external(:MPI_Pack_size_c)) """ -function MPI_Ssend_init_c(buf, count, datatype, dest, tag, comm, request) - @mpichk ccall((:MPI_Ssend_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) +function MPI_Pack_size_c(incount, datatype, comm, size) + @mpichk ccall((:MPI_Pack_size_c, libmpi), Cint, (MPI_Count, MPI_Datatype, MPI_Comm, Ptr{MPI_Count}), incount, datatype, comm, size) end """ - MPI_Accumulate_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win) + MPI_Status_set_elements_c(status, datatype, count) -$(_doc_external(:MPI_Accumulate_c)) +$(_doc_external(:MPI_Status_set_elements_c)) """ -function MPI_Accumulate_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win) - @mpichk ccall((:MPI_Accumulate_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Op, MPI_Win), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win) +function MPI_Status_set_elements_c(status, datatype, count) + @mpichk ccall((:MPI_Status_set_elements_c, libmpi), Cint, (Ptr{MPI_Status}, MPI_Datatype, MPI_Count), status, datatype, count) end """ - MPI_Get_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) + MPI_Type_contiguous_c(count, oldtype, newtype) -$(_doc_external(:MPI_Get_c)) +$(_doc_external(:MPI_Type_contiguous_c)) """ -function MPI_Get_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) - @mpichk ccall((:MPI_Get_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Win), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) +function MPI_Type_contiguous_c(count, oldtype, newtype) + @mpichk ccall((:MPI_Type_contiguous_c, libmpi), Cint, (MPI_Count, MPI_Datatype, Ptr{MPI_Datatype}), count, oldtype, newtype) end """ - MPI_Get_accumulate_c(origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win) + MPI_Type_create_darray_c(size, rank, ndims, array_of_gsizes, array_of_distribs, array_of_dargs, array_of_psizes, order, oldtype, newtype) -$(_doc_external(:MPI_Get_accumulate_c)) +$(_doc_external(:MPI_Type_create_darray_c)) """ -function MPI_Get_accumulate_c(origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win) - @mpichk ccall((:MPI_Get_accumulate_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Op, MPI_Win), origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win) +function MPI_Type_create_darray_c(size, rank, ndims, array_of_gsizes, array_of_distribs, array_of_dargs, array_of_psizes, order, oldtype, newtype) + @mpichk ccall((:MPI_Type_create_darray_c, libmpi), Cint, (Cint, Cint, Cint, Ptr{MPI_Count}, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}, Cint, MPI_Datatype, Ptr{MPI_Datatype}), size, rank, ndims, array_of_gsizes, array_of_distribs, array_of_dargs, array_of_psizes, order, oldtype, newtype) end """ - MPI_Put_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) + MPI_Type_create_hindexed_c(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) -$(_doc_external(:MPI_Put_c)) +$(_doc_external(:MPI_Type_create_hindexed_c)) """ -function MPI_Put_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) - @mpichk ccall((:MPI_Put_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Win), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) +function MPI_Type_create_hindexed_c(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) + @mpichk ccall((:MPI_Type_create_hindexed_c, libmpi), Cint, (MPI_Count, Ptr{MPI_Count}, Ptr{MPI_Count}, MPI_Datatype, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, oldtype, newtype) end """ - MPI_Raccumulate_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) + MPI_Type_create_hindexed_block_c(count, blocklength, array_of_displacements, oldtype, newtype) -$(_doc_external(:MPI_Raccumulate_c)) +$(_doc_external(:MPI_Type_create_hindexed_block_c)) """ -function MPI_Raccumulate_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) - @mpichk ccall((:MPI_Raccumulate_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Op, MPI_Win, Ptr{MPI_Request}), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) +function MPI_Type_create_hindexed_block_c(count, blocklength, array_of_displacements, oldtype, newtype) + @mpichk ccall((:MPI_Type_create_hindexed_block_c, libmpi), Cint, (MPI_Count, MPI_Count, Ptr{MPI_Count}, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, array_of_displacements, oldtype, newtype) end """ - MPI_Rget_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) + MPI_Type_create_hvector_c(count, blocklength, stride, oldtype, newtype) -$(_doc_external(:MPI_Rget_c)) +$(_doc_external(:MPI_Type_create_hvector_c)) """ -function MPI_Rget_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) - @mpichk ccall((:MPI_Rget_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Win, Ptr{MPI_Request}), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) +function MPI_Type_create_hvector_c(count, blocklength, stride, oldtype, newtype) + @mpichk ccall((:MPI_Type_create_hvector_c, libmpi), Cint, (MPI_Count, MPI_Count, MPI_Count, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, stride, oldtype, newtype) end """ - MPI_Rget_accumulate_c(origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) + MPI_Type_create_indexed_block_c(count, blocklength, array_of_displacements, oldtype, newtype) -$(_doc_external(:MPI_Rget_accumulate_c)) +$(_doc_external(:MPI_Type_create_indexed_block_c)) """ -function MPI_Rget_accumulate_c(origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) - @mpichk ccall((:MPI_Rget_accumulate_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Op, MPI_Win, Ptr{MPI_Request}), origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) +function MPI_Type_create_indexed_block_c(count, blocklength, array_of_displacements, oldtype, newtype) + @mpichk ccall((:MPI_Type_create_indexed_block_c, libmpi), Cint, (MPI_Count, MPI_Count, Ptr{MPI_Count}, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, array_of_displacements, oldtype, newtype) end """ - MPI_Rput_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) + MPI_Type_create_resized_c(oldtype, lb, extent, newtype) -$(_doc_external(:MPI_Rput_c)) +$(_doc_external(:MPI_Type_create_resized_c)) """ -function MPI_Rput_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) - @mpichk ccall((:MPI_Rput_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Win, Ptr{MPI_Request}), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) +function MPI_Type_create_resized_c(oldtype, lb, extent, newtype) + @mpichk ccall((:MPI_Type_create_resized_c, libmpi), Cint, (MPI_Datatype, MPI_Count, MPI_Count, Ptr{MPI_Datatype}), oldtype, lb, extent, newtype) end """ - MPI_Win_allocate_c(size, disp_unit, info, comm, baseptr, win) + MPI_Type_create_struct_c(count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) -$(_doc_external(:MPI_Win_allocate_c)) +$(_doc_external(:MPI_Type_create_struct_c)) """ -function MPI_Win_allocate_c(size, disp_unit, info, comm, baseptr, win) - @mpichk ccall((:MPI_Win_allocate_c, libmpi), Cint, (MPI_Aint, MPI_Aint, MPI_Info, MPI_Comm, MPIPtr, Ptr{MPI_Win}), size, disp_unit, info, comm, baseptr, win) +function MPI_Type_create_struct_c(count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) + @mpichk ccall((:MPI_Type_create_struct_c, libmpi), Cint, (MPI_Count, Ptr{MPI_Count}, Ptr{MPI_Count}, Ptr{MPI_Datatype}, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) end """ - MPI_Win_allocate_shared_c(size, disp_unit, info, comm, baseptr, win) + MPI_Type_create_subarray_c(ndims, array_of_sizes, array_of_subsizes, array_of_starts, order, oldtype, newtype) -$(_doc_external(:MPI_Win_allocate_shared_c)) +$(_doc_external(:MPI_Type_create_subarray_c)) """ -function MPI_Win_allocate_shared_c(size, disp_unit, info, comm, baseptr, win) - @mpichk ccall((:MPI_Win_allocate_shared_c, libmpi), Cint, (MPI_Aint, MPI_Aint, MPI_Info, MPI_Comm, MPIPtr, Ptr{MPI_Win}), size, disp_unit, info, comm, baseptr, win) +function MPI_Type_create_subarray_c(ndims, array_of_sizes, array_of_subsizes, array_of_starts, order, oldtype, newtype) + @mpichk ccall((:MPI_Type_create_subarray_c, libmpi), Cint, (Cint, Ptr{MPI_Count}, Ptr{MPI_Count}, Ptr{MPI_Count}, Cint, MPI_Datatype, Ptr{MPI_Datatype}), ndims, array_of_sizes, array_of_subsizes, array_of_starts, order, oldtype, newtype) end """ - MPI_Win_create_c(base, size, disp_unit, info, comm, win) + MPI_Type_get_contents_c(datatype, max_integers, max_addresses, max_large_counts, max_datatypes, array_of_integers, array_of_addresses, array_of_large_counts, array_of_datatypes) -$(_doc_external(:MPI_Win_create_c)) +$(_doc_external(:MPI_Type_get_contents_c)) """ -function MPI_Win_create_c(base, size, disp_unit, info, comm, win) - @mpichk ccall((:MPI_Win_create_c, libmpi), Cint, (MPIPtr, MPI_Aint, MPI_Aint, MPI_Info, MPI_Comm, Ptr{MPI_Win}), base, size, disp_unit, info, comm, win) +function MPI_Type_get_contents_c(datatype, max_integers, max_addresses, max_large_counts, max_datatypes, array_of_integers, array_of_addresses, array_of_large_counts, array_of_datatypes) + @mpichk ccall((:MPI_Type_get_contents_c, libmpi), Cint, (MPI_Datatype, MPI_Count, MPI_Count, MPI_Count, MPI_Count, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Count}, Ptr{MPI_Datatype}), datatype, max_integers, max_addresses, max_large_counts, max_datatypes, array_of_integers, array_of_addresses, array_of_large_counts, array_of_datatypes) end """ - MPI_Win_shared_query_c(win, rank, size, disp_unit, baseptr) + MPI_Type_get_envelope_c(datatype, num_integers, num_addresses, num_large_counts, num_datatypes, combiner) -$(_doc_external(:MPI_Win_shared_query_c)) +$(_doc_external(:MPI_Type_get_envelope_c)) """ -function MPI_Win_shared_query_c(win, rank, size, disp_unit, baseptr) - @mpichk ccall((:MPI_Win_shared_query_c, libmpi), Cint, (MPI_Win, Cint, Ptr{MPI_Aint}, Ptr{MPI_Aint}, MPIPtr), win, rank, size, disp_unit, baseptr) +function MPI_Type_get_envelope_c(datatype, num_integers, num_addresses, num_large_counts, num_datatypes, combiner) + @mpichk ccall((:MPI_Type_get_envelope_c, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Count}, Ptr{MPI_Count}, Ptr{MPI_Count}, Ptr{MPI_Count}, Ptr{Cint}), datatype, num_integers, num_addresses, num_large_counts, num_datatypes, combiner) end """ - MPI_File_open(comm, filename, amode, info, fh) + MPI_Type_get_extent_c(datatype, lb, extent) -$(_doc_external(:MPI_File_open)) +$(_doc_external(:MPI_Type_get_extent_c)) """ -function MPI_File_open(comm, filename, amode, info, fh) - @mpichk ccall((:MPI_File_open, libmpi), Cint, (MPI_Comm, Ptr{Cchar}, Cint, MPI_Info, Ptr{MPI_File}), comm, filename, amode, info, fh) +function MPI_Type_get_extent_c(datatype, lb, extent) + @mpichk ccall((:MPI_Type_get_extent_c, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Count}, Ptr{MPI_Count}), datatype, lb, extent) end """ - MPI_File_close(fh) + MPI_Type_get_true_extent_c(datatype, true_lb, true_extent) -$(_doc_external(:MPI_File_close)) +$(_doc_external(:MPI_Type_get_true_extent_c)) """ -function MPI_File_close(fh) - @mpichk ccall((:MPI_File_close, libmpi), Cint, (Ptr{MPI_File},), fh) +function MPI_Type_get_true_extent_c(datatype, true_lb, true_extent) + @mpichk ccall((:MPI_Type_get_true_extent_c, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Count}, Ptr{MPI_Count}), datatype, true_lb, true_extent) end """ - MPI_File_delete(filename, info) + MPI_Type_indexed_c(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) -$(_doc_external(:MPI_File_delete)) +$(_doc_external(:MPI_Type_indexed_c)) """ -function MPI_File_delete(filename, info) - @mpichk ccall((:MPI_File_delete, libmpi), Cint, (Ptr{Cchar}, MPI_Info), filename, info) +function MPI_Type_indexed_c(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) + @mpichk ccall((:MPI_Type_indexed_c, libmpi), Cint, (MPI_Count, Ptr{MPI_Count}, Ptr{MPI_Count}, MPI_Datatype, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, oldtype, newtype) end """ - MPI_File_set_size(fh, size) + MPI_Type_size_c(datatype, size) -$(_doc_external(:MPI_File_set_size)) +$(_doc_external(:MPI_Type_size_c)) """ -function MPI_File_set_size(fh, size) - @mpichk ccall((:MPI_File_set_size, libmpi), Cint, (MPI_File, MPI_Offset), fh, size) +function MPI_Type_size_c(datatype, size) + @mpichk ccall((:MPI_Type_size_c, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Count}), datatype, size) end """ - MPI_File_preallocate(fh, size) + MPI_Type_vector_c(count, blocklength, stride, oldtype, newtype) -$(_doc_external(:MPI_File_preallocate)) +$(_doc_external(:MPI_Type_vector_c)) """ -function MPI_File_preallocate(fh, size) - @mpichk ccall((:MPI_File_preallocate, libmpi), Cint, (MPI_File, MPI_Offset), fh, size) +function MPI_Type_vector_c(count, blocklength, stride, oldtype, newtype) + @mpichk ccall((:MPI_Type_vector_c, libmpi), Cint, (MPI_Count, MPI_Count, MPI_Count, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, stride, oldtype, newtype) end """ - MPI_File_get_size(fh, size) + MPI_Unpack_c(inbuf, insize, position, outbuf, outcount, datatype, comm) -$(_doc_external(:MPI_File_get_size)) +$(_doc_external(:MPI_Unpack_c)) """ -function MPI_File_get_size(fh, size) - @mpichk ccall((:MPI_File_get_size, libmpi), Cint, (MPI_File, Ptr{MPI_Offset}), fh, size) +function MPI_Unpack_c(inbuf, insize, position, outbuf, outcount, datatype, comm) + @mpichk ccall((:MPI_Unpack_c, libmpi), Cint, (MPIPtr, MPI_Count, Ptr{MPI_Count}, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm), inbuf, insize, position, outbuf, outcount, datatype, comm) end """ - MPI_File_get_group(fh, group) + MPI_Unpack_external_c(datarep, inbuf, insize, position, outbuf, outcount, datatype) -$(_doc_external(:MPI_File_get_group)) +$(_doc_external(:MPI_Unpack_external_c)) """ -function MPI_File_get_group(fh, group) - @mpichk ccall((:MPI_File_get_group, libmpi), Cint, (MPI_File, Ptr{MPI_Group}), fh, group) +function MPI_Unpack_external_c(datarep, inbuf, insize, position, outbuf, outcount, datatype) + @mpichk ccall((:MPI_Unpack_external_c, libmpi), Cint, (Ptr{Cchar}, MPIPtr, MPI_Count, Ptr{MPI_Count}, MPIPtr, MPI_Count, MPI_Datatype), datarep, inbuf, insize, position, outbuf, outcount, datatype) end """ - MPI_File_get_amode(fh, amode) + MPI_Op_create_c(user_fn, commute, op) -$(_doc_external(:MPI_File_get_amode)) +$(_doc_external(:MPI_Op_create_c)) """ -function MPI_File_get_amode(fh, amode) - @mpichk ccall((:MPI_File_get_amode, libmpi), Cint, (MPI_File, Ptr{Cint}), fh, amode) +function MPI_Op_create_c(user_fn, commute, op) + @mpichk ccall((:MPI_Op_create_c, libmpi), Cint, (Ptr{MPI_User_function_c}, Cint, Ptr{MPI_Op}), user_fn, commute, op) end """ - MPI_File_set_info(fh, info) + MPI_Bsend_c(buf, count, datatype, dest, tag, comm) -$(_doc_external(:MPI_File_set_info)) +$(_doc_external(:MPI_Bsend_c)) """ -function MPI_File_set_info(fh, info) - @mpichk ccall((:MPI_File_set_info, libmpi), Cint, (MPI_File, MPI_Info), fh, info) +function MPI_Bsend_c(buf, count, datatype, dest, tag, comm) + @mpichk ccall((:MPI_Bsend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) end """ - MPI_File_get_info(fh, info_used) + MPI_Bsend_init_c(buf, count, datatype, dest, tag, comm, request) -$(_doc_external(:MPI_File_get_info)) +$(_doc_external(:MPI_Bsend_init_c)) """ -function MPI_File_get_info(fh, info_used) - @mpichk ccall((:MPI_File_get_info, libmpi), Cint, (MPI_File, Ptr{MPI_Info}), fh, info_used) +function MPI_Bsend_init_c(buf, count, datatype, dest, tag, comm, request) + @mpichk ccall((:MPI_Bsend_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) end """ - MPI_File_set_view(fh, disp, etype, filetype, datarep, info) + MPI_Buffer_attach_c(buffer, size) -$(_doc_external(:MPI_File_set_view)) +$(_doc_external(:MPI_Buffer_attach_c)) """ -function MPI_File_set_view(fh, disp, etype, filetype, datarep, info) - @mpichk ccall((:MPI_File_set_view, libmpi), Cint, (MPI_File, MPI_Offset, MPI_Datatype, MPI_Datatype, Ptr{Cchar}, MPI_Info), fh, disp, etype, filetype, datarep, info) +function MPI_Buffer_attach_c(buffer, size) + @mpichk ccall((:MPI_Buffer_attach_c, libmpi), Cint, (MPIPtr, MPI_Count), buffer, size) end """ - MPI_File_get_view(fh, disp, etype, filetype, datarep) + MPI_Buffer_detach_c(buffer_addr, size) -$(_doc_external(:MPI_File_get_view)) +$(_doc_external(:MPI_Buffer_detach_c)) """ -function MPI_File_get_view(fh, disp, etype, filetype, datarep) - @mpichk ccall((:MPI_File_get_view, libmpi), Cint, (MPI_File, Ptr{MPI_Offset}, Ptr{MPI_Datatype}, Ptr{MPI_Datatype}, Ptr{Cchar}), fh, disp, etype, filetype, datarep) +function MPI_Buffer_detach_c(buffer_addr, size) + @mpichk ccall((:MPI_Buffer_detach_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}), buffer_addr, size) end """ - MPI_File_read_at(fh, offset, buf, count, datatype, status) + MPI_Comm_attach_buffer_c(comm, buffer, size) -$(_doc_external(:MPI_File_read_at)) +$(_doc_external(:MPI_Comm_attach_buffer_c)) """ -function MPI_File_read_at(fh, offset, buf, count, datatype, status) - @mpichk ccall((:MPI_File_read_at, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, offset, buf, count, datatype, status) +function MPI_Comm_attach_buffer_c(comm, buffer, size) + @mpichk ccall((:MPI_Comm_attach_buffer_c, libmpi), Cint, (MPI_Comm, MPIPtr, MPI_Count), comm, buffer, size) end """ - MPI_File_read_at_all(fh, offset, buf, count, datatype, status) + MPI_Comm_detach_buffer_c(comm, buffer_addr, size) -$(_doc_external(:MPI_File_read_at_all)) +$(_doc_external(:MPI_Comm_detach_buffer_c)) """ -function MPI_File_read_at_all(fh, offset, buf, count, datatype, status) - @mpichk ccall((:MPI_File_read_at_all, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, offset, buf, count, datatype, status) +function MPI_Comm_detach_buffer_c(comm, buffer_addr, size) + @mpichk ccall((:MPI_Comm_detach_buffer_c, libmpi), Cint, (MPI_Comm, MPIPtr, Ptr{MPI_Count}), comm, buffer_addr, size) end """ - MPI_File_write_at(fh, offset, buf, count, datatype, status) + MPI_Ibsend_c(buf, count, datatype, dest, tag, comm, request) -$(_doc_external(:MPI_File_write_at)) +$(_doc_external(:MPI_Ibsend_c)) """ -function MPI_File_write_at(fh, offset, buf, count, datatype, status) - @mpichk ccall((:MPI_File_write_at, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, offset, buf, count, datatype, status) +function MPI_Ibsend_c(buf, count, datatype, dest, tag, comm, request) + @mpichk ccall((:MPI_Ibsend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) end """ - MPI_File_write_at_all(fh, offset, buf, count, datatype, status) + MPI_Imrecv_c(buf, count, datatype, message, request) -$(_doc_external(:MPI_File_write_at_all)) +$(_doc_external(:MPI_Imrecv_c)) """ -function MPI_File_write_at_all(fh, offset, buf, count, datatype, status) - @mpichk ccall((:MPI_File_write_at_all, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, offset, buf, count, datatype, status) +function MPI_Imrecv_c(buf, count, datatype, message, request) + @mpichk ccall((:MPI_Imrecv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Message}, Ptr{MPI_Request}), buf, count, datatype, message, request) end """ - MPI_File_iread_at(fh, offset, buf, count, datatype, request) + MPI_Irecv_c(buf, count, datatype, source, tag, comm, request) -$(_doc_external(:MPI_File_iread_at)) +$(_doc_external(:MPI_Irecv_c)) """ -function MPI_File_iread_at(fh, offset, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iread_at, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) +function MPI_Irecv_c(buf, count, datatype, source, tag, comm, request) + @mpichk ccall((:MPI_Irecv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, source, tag, comm, request) end """ - MPI_File_iwrite_at(fh, offset, buf, count, datatype, request) + MPI_Irsend_c(buf, count, datatype, dest, tag, comm, request) -$(_doc_external(:MPI_File_iwrite_at)) +$(_doc_external(:MPI_Irsend_c)) """ -function MPI_File_iwrite_at(fh, offset, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iwrite_at, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) +function MPI_Irsend_c(buf, count, datatype, dest, tag, comm, request) + @mpichk ccall((:MPI_Irsend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) end """ - MPI_File_read(fh, buf, count, datatype, status) + MPI_Isend_c(buf, count, datatype, dest, tag, comm, request) -$(_doc_external(:MPI_File_read)) +$(_doc_external(:MPI_Isend_c)) """ -function MPI_File_read(fh, buf, count, datatype, status) - @mpichk ccall((:MPI_File_read, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +function MPI_Isend_c(buf, count, datatype, dest, tag, comm, request) + @mpichk ccall((:MPI_Isend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) end """ - MPI_File_read_all(fh, buf, count, datatype, status) + MPI_Isendrecv_c(sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, request) -$(_doc_external(:MPI_File_read_all)) +$(_doc_external(:MPI_Isendrecv_c)) """ -function MPI_File_read_all(fh, buf, count, datatype, status) - @mpichk ccall((:MPI_File_read_all, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +function MPI_Isendrecv_c(sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, request) + @mpichk ccall((:MPI_Isendrecv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, request) end """ - MPI_File_write(fh, buf, count, datatype, status) + MPI_Isendrecv_replace_c(buf, count, datatype, dest, sendtag, source, recvtag, comm, request) -$(_doc_external(:MPI_File_write)) +$(_doc_external(:MPI_Isendrecv_replace_c)) """ -function MPI_File_write(fh, buf, count, datatype, status) - @mpichk ccall((:MPI_File_write, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +function MPI_Isendrecv_replace_c(buf, count, datatype, dest, sendtag, source, recvtag, comm, request) + @mpichk ccall((:MPI_Isendrecv_replace_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, sendtag, source, recvtag, comm, request) end """ - MPI_File_write_all(fh, buf, count, datatype, status) + MPI_Issend_c(buf, count, datatype, dest, tag, comm, request) -$(_doc_external(:MPI_File_write_all)) +$(_doc_external(:MPI_Issend_c)) """ -function MPI_File_write_all(fh, buf, count, datatype, status) - @mpichk ccall((:MPI_File_write_all, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +function MPI_Issend_c(buf, count, datatype, dest, tag, comm, request) + @mpichk ccall((:MPI_Issend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) end """ - MPI_File_iread(fh, buf, count, datatype, request) + MPI_Mrecv_c(buf, count, datatype, message, status) -$(_doc_external(:MPI_File_iread)) +$(_doc_external(:MPI_Mrecv_c)) """ -function MPI_File_iread(fh, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iread, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) +function MPI_Mrecv_c(buf, count, datatype, message, status) + @mpichk ccall((:MPI_Mrecv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Message}, Ptr{MPI_Status}), buf, count, datatype, message, status) end """ - MPI_File_iwrite(fh, buf, count, datatype, request) + MPI_Recv_c(buf, count, datatype, source, tag, comm, status) -$(_doc_external(:MPI_File_iwrite)) +$(_doc_external(:MPI_Recv_c)) """ -function MPI_File_iwrite(fh, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iwrite, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) +function MPI_Recv_c(buf, count, datatype, source, tag, comm, status) + @mpichk ccall((:MPI_Recv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Status}), buf, count, datatype, source, tag, comm, status) end """ - MPI_File_seek(fh, offset, whence) + MPI_Recv_init_c(buf, count, datatype, source, tag, comm, request) -$(_doc_external(:MPI_File_seek)) +$(_doc_external(:MPI_Recv_init_c)) """ -function MPI_File_seek(fh, offset, whence) - @mpichk ccall((:MPI_File_seek, libmpi), Cint, (MPI_File, MPI_Offset, Cint), fh, offset, whence) +function MPI_Recv_init_c(buf, count, datatype, source, tag, comm, request) + @mpichk ccall((:MPI_Recv_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, source, tag, comm, request) end """ - MPI_File_get_position(fh, offset) + MPI_Rsend_c(buf, count, datatype, dest, tag, comm) -$(_doc_external(:MPI_File_get_position)) +$(_doc_external(:MPI_Rsend_c)) """ -function MPI_File_get_position(fh, offset) - @mpichk ccall((:MPI_File_get_position, libmpi), Cint, (MPI_File, Ptr{MPI_Offset}), fh, offset) +function MPI_Rsend_c(buf, count, datatype, dest, tag, comm) + @mpichk ccall((:MPI_Rsend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) end """ - MPI_File_get_byte_offset(fh, offset, disp) + MPI_Rsend_init_c(buf, count, datatype, dest, tag, comm, request) -$(_doc_external(:MPI_File_get_byte_offset)) +$(_doc_external(:MPI_Rsend_init_c)) """ -function MPI_File_get_byte_offset(fh, offset, disp) - @mpichk ccall((:MPI_File_get_byte_offset, libmpi), Cint, (MPI_File, MPI_Offset, Ptr{MPI_Offset}), fh, offset, disp) +function MPI_Rsend_init_c(buf, count, datatype, dest, tag, comm, request) + @mpichk ccall((:MPI_Rsend_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) end """ - MPI_File_read_shared(fh, buf, count, datatype, status) + MPI_Send_c(buf, count, datatype, dest, tag, comm) -$(_doc_external(:MPI_File_read_shared)) +$(_doc_external(:MPI_Send_c)) """ -function MPI_File_read_shared(fh, buf, count, datatype, status) - @mpichk ccall((:MPI_File_read_shared, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +function MPI_Send_c(buf, count, datatype, dest, tag, comm) + @mpichk ccall((:MPI_Send_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) end """ - MPI_File_write_shared(fh, buf, count, datatype, status) + MPI_Send_init_c(buf, count, datatype, dest, tag, comm, request) -$(_doc_external(:MPI_File_write_shared)) +$(_doc_external(:MPI_Send_init_c)) """ -function MPI_File_write_shared(fh, buf, count, datatype, status) - @mpichk ccall((:MPI_File_write_shared, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +function MPI_Send_init_c(buf, count, datatype, dest, tag, comm, request) + @mpichk ccall((:MPI_Send_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) end """ - MPI_File_iread_shared(fh, buf, count, datatype, request) + MPI_Sendrecv_c(sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, status) -$(_doc_external(:MPI_File_iread_shared)) +$(_doc_external(:MPI_Sendrecv_c)) """ -function MPI_File_iread_shared(fh, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iread_shared, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) +function MPI_Sendrecv_c(sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, status) + @mpichk ccall((:MPI_Sendrecv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Status}), sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, status) end """ - MPI_File_iwrite_shared(fh, buf, count, datatype, request) + MPI_Sendrecv_replace_c(buf, count, datatype, dest, sendtag, source, recvtag, comm, status) -$(_doc_external(:MPI_File_iwrite_shared)) +$(_doc_external(:MPI_Sendrecv_replace_c)) """ -function MPI_File_iwrite_shared(fh, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iwrite_shared, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) +function MPI_Sendrecv_replace_c(buf, count, datatype, dest, sendtag, source, recvtag, comm, status) + @mpichk ccall((:MPI_Sendrecv_replace_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, Cint, Cint, MPI_Comm, Ptr{MPI_Status}), buf, count, datatype, dest, sendtag, source, recvtag, comm, status) end """ - MPI_File_read_ordered(fh, buf, count, datatype, status) + MPI_Ssend_c(buf, count, datatype, dest, tag, comm) -$(_doc_external(:MPI_File_read_ordered)) +$(_doc_external(:MPI_Ssend_c)) """ -function MPI_File_read_ordered(fh, buf, count, datatype, status) - @mpichk ccall((:MPI_File_read_ordered, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +function MPI_Ssend_c(buf, count, datatype, dest, tag, comm) + @mpichk ccall((:MPI_Ssend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) end """ - MPI_File_write_ordered(fh, buf, count, datatype, status) + MPI_Ssend_init_c(buf, count, datatype, dest, tag, comm, request) -$(_doc_external(:MPI_File_write_ordered)) +$(_doc_external(:MPI_Ssend_init_c)) """ -function MPI_File_write_ordered(fh, buf, count, datatype, status) - @mpichk ccall((:MPI_File_write_ordered, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +function MPI_Ssend_init_c(buf, count, datatype, dest, tag, comm, request) + @mpichk ccall((:MPI_Ssend_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) end """ - MPI_File_seek_shared(fh, offset, whence) + MPI_Accumulate_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win) -$(_doc_external(:MPI_File_seek_shared)) +$(_doc_external(:MPI_Accumulate_c)) """ -function MPI_File_seek_shared(fh, offset, whence) - @mpichk ccall((:MPI_File_seek_shared, libmpi), Cint, (MPI_File, MPI_Offset, Cint), fh, offset, whence) +function MPI_Accumulate_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win) + @mpichk ccall((:MPI_Accumulate_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Op, MPI_Win), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win) end """ - MPI_File_get_position_shared(fh, offset) + MPI_Get_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) -$(_doc_external(:MPI_File_get_position_shared)) +$(_doc_external(:MPI_Get_c)) """ -function MPI_File_get_position_shared(fh, offset) - @mpichk ccall((:MPI_File_get_position_shared, libmpi), Cint, (MPI_File, Ptr{MPI_Offset}), fh, offset) +function MPI_Get_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) + @mpichk ccall((:MPI_Get_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Win), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) end """ - MPI_File_read_at_all_begin(fh, offset, buf, count, datatype) + MPI_Get_accumulate_c(origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win) -$(_doc_external(:MPI_File_read_at_all_begin)) +$(_doc_external(:MPI_Get_accumulate_c)) """ -function MPI_File_read_at_all_begin(fh, offset, buf, count, datatype) - @mpichk ccall((:MPI_File_read_at_all_begin, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype), fh, offset, buf, count, datatype) +function MPI_Get_accumulate_c(origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win) + @mpichk ccall((:MPI_Get_accumulate_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Op, MPI_Win), origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win) end """ - MPI_File_read_at_all_end(fh, buf, status) + MPI_Put_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) -$(_doc_external(:MPI_File_read_at_all_end)) +$(_doc_external(:MPI_Put_c)) """ -function MPI_File_read_at_all_end(fh, buf, status) - @mpichk ccall((:MPI_File_read_at_all_end, libmpi), Cint, (MPI_File, MPIPtr, Ptr{MPI_Status}), fh, buf, status) +function MPI_Put_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) + @mpichk ccall((:MPI_Put_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Win), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) end """ - MPI_File_write_at_all_begin(fh, offset, buf, count, datatype) + MPI_Raccumulate_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) -$(_doc_external(:MPI_File_write_at_all_begin)) +$(_doc_external(:MPI_Raccumulate_c)) """ -function MPI_File_write_at_all_begin(fh, offset, buf, count, datatype) - @mpichk ccall((:MPI_File_write_at_all_begin, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype), fh, offset, buf, count, datatype) +function MPI_Raccumulate_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) + @mpichk ccall((:MPI_Raccumulate_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Op, MPI_Win, Ptr{MPI_Request}), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) end """ - MPI_File_write_at_all_end(fh, buf, status) + MPI_Rget_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) -$(_doc_external(:MPI_File_write_at_all_end)) -""" -function MPI_File_write_at_all_end(fh, buf, status) - @mpichk ccall((:MPI_File_write_at_all_end, libmpi), Cint, (MPI_File, MPIPtr, Ptr{MPI_Status}), fh, buf, status) +$(_doc_external(:MPI_Rget_c)) +""" +function MPI_Rget_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) + @mpichk ccall((:MPI_Rget_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Win, Ptr{MPI_Request}), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) end """ - MPI_File_read_all_begin(fh, buf, count, datatype) + MPI_Rget_accumulate_c(origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) -$(_doc_external(:MPI_File_read_all_begin)) +$(_doc_external(:MPI_Rget_accumulate_c)) """ -function MPI_File_read_all_begin(fh, buf, count, datatype) - @mpichk ccall((:MPI_File_read_all_begin, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype), fh, buf, count, datatype) +function MPI_Rget_accumulate_c(origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) + @mpichk ccall((:MPI_Rget_accumulate_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Op, MPI_Win, Ptr{MPI_Request}), origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) end """ - MPI_File_read_all_end(fh, buf, status) + MPI_Rput_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) -$(_doc_external(:MPI_File_read_all_end)) +$(_doc_external(:MPI_Rput_c)) """ -function MPI_File_read_all_end(fh, buf, status) - @mpichk ccall((:MPI_File_read_all_end, libmpi), Cint, (MPI_File, MPIPtr, Ptr{MPI_Status}), fh, buf, status) +function MPI_Rput_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) + @mpichk ccall((:MPI_Rput_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Win, Ptr{MPI_Request}), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) end """ - MPI_File_write_all_begin(fh, buf, count, datatype) + MPI_Win_allocate_c(size, disp_unit, info, comm, baseptr, win) -$(_doc_external(:MPI_File_write_all_begin)) +$(_doc_external(:MPI_Win_allocate_c)) """ -function MPI_File_write_all_begin(fh, buf, count, datatype) - @mpichk ccall((:MPI_File_write_all_begin, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype), fh, buf, count, datatype) +function MPI_Win_allocate_c(size, disp_unit, info, comm, baseptr, win) + @mpichk ccall((:MPI_Win_allocate_c, libmpi), Cint, (MPI_Aint, MPI_Aint, MPI_Info, MPI_Comm, MPIPtr, Ptr{MPI_Win}), size, disp_unit, info, comm, baseptr, win) end """ - MPI_File_write_all_end(fh, buf, status) + MPI_Win_allocate_shared_c(size, disp_unit, info, comm, baseptr, win) -$(_doc_external(:MPI_File_write_all_end)) +$(_doc_external(:MPI_Win_allocate_shared_c)) """ -function MPI_File_write_all_end(fh, buf, status) - @mpichk ccall((:MPI_File_write_all_end, libmpi), Cint, (MPI_File, MPIPtr, Ptr{MPI_Status}), fh, buf, status) +function MPI_Win_allocate_shared_c(size, disp_unit, info, comm, baseptr, win) + @mpichk ccall((:MPI_Win_allocate_shared_c, libmpi), Cint, (MPI_Aint, MPI_Aint, MPI_Info, MPI_Comm, MPIPtr, Ptr{MPI_Win}), size, disp_unit, info, comm, baseptr, win) end """ - MPI_File_read_ordered_begin(fh, buf, count, datatype) + MPI_Win_create_c(base, size, disp_unit, info, comm, win) -$(_doc_external(:MPI_File_read_ordered_begin)) +$(_doc_external(:MPI_Win_create_c)) """ -function MPI_File_read_ordered_begin(fh, buf, count, datatype) - @mpichk ccall((:MPI_File_read_ordered_begin, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype), fh, buf, count, datatype) +function MPI_Win_create_c(base, size, disp_unit, info, comm, win) + @mpichk ccall((:MPI_Win_create_c, libmpi), Cint, (MPIPtr, MPI_Aint, MPI_Aint, MPI_Info, MPI_Comm, Ptr{MPI_Win}), base, size, disp_unit, info, comm, win) end """ - MPI_File_read_ordered_end(fh, buf, status) + MPI_Win_shared_query_c(win, rank, size, disp_unit, baseptr) -$(_doc_external(:MPI_File_read_ordered_end)) +$(_doc_external(:MPI_Win_shared_query_c)) """ -function MPI_File_read_ordered_end(fh, buf, status) - @mpichk ccall((:MPI_File_read_ordered_end, libmpi), Cint, (MPI_File, MPIPtr, Ptr{MPI_Status}), fh, buf, status) +function MPI_Win_shared_query_c(win, rank, size, disp_unit, baseptr) + @mpichk ccall((:MPI_Win_shared_query_c, libmpi), Cint, (MPI_Win, Cint, Ptr{MPI_Aint}, Ptr{MPI_Aint}, MPIPtr), win, rank, size, disp_unit, baseptr) end """ - MPI_File_write_ordered_begin(fh, buf, count, datatype) + MPI_File_get_type_extent_c(fh, datatype, extent) -$(_doc_external(:MPI_File_write_ordered_begin)) +$(_doc_external(:MPI_File_get_type_extent_c)) """ -function MPI_File_write_ordered_begin(fh, buf, count, datatype) - @mpichk ccall((:MPI_File_write_ordered_begin, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype), fh, buf, count, datatype) +function MPI_File_get_type_extent_c(fh, datatype, extent) + @mpichk ccall((:MPI_File_get_type_extent_c, libmpi), Cint, (MPI_File, MPI_Datatype, Ptr{MPI_Count}), fh, datatype, extent) end """ - MPI_File_write_ordered_end(fh, buf, status) + MPI_File_iread_c(fh, buf, count, datatype, request) -$(_doc_external(:MPI_File_write_ordered_end)) +$(_doc_external(:MPI_File_iread_c)) """ -function MPI_File_write_ordered_end(fh, buf, status) - @mpichk ccall((:MPI_File_write_ordered_end, libmpi), Cint, (MPI_File, MPIPtr, Ptr{MPI_Status}), fh, buf, status) +function MPI_File_iread_c(fh, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iread_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) end """ - MPI_File_get_type_extent(fh, datatype, extent) + MPI_File_iread_all_c(fh, buf, count, datatype, request) -$(_doc_external(:MPI_File_get_type_extent)) +$(_doc_external(:MPI_File_iread_all_c)) """ -function MPI_File_get_type_extent(fh, datatype, extent) - @mpichk ccall((:MPI_File_get_type_extent, libmpi), Cint, (MPI_File, MPI_Datatype, Ptr{MPI_Aint}), fh, datatype, extent) +function MPI_File_iread_all_c(fh, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iread_all_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) end """ - MPI_Register_datarep(datarep, read_conversion_fn, write_conversion_fn, dtype_file_extent_fn, extra_state) + MPI_File_iread_at_c(fh, offset, buf, count, datatype, request) -$(_doc_external(:MPI_Register_datarep)) +$(_doc_external(:MPI_File_iread_at_c)) """ -function MPI_Register_datarep(datarep, read_conversion_fn, write_conversion_fn, dtype_file_extent_fn, extra_state) - @mpichk ccall((:MPI_Register_datarep, libmpi), Cint, (Ptr{Cchar}, Ptr{MPI_Datarep_conversion_function}, Ptr{MPI_Datarep_conversion_function}, Ptr{MPI_Datarep_extent_function}, MPIPtr), datarep, read_conversion_fn, write_conversion_fn, dtype_file_extent_fn, extra_state) +function MPI_File_iread_at_c(fh, offset, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iread_at_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) end """ - MPI_File_set_atomicity(fh, flag) + MPI_File_iread_at_all_c(fh, offset, buf, count, datatype, request) -$(_doc_external(:MPI_File_set_atomicity)) +$(_doc_external(:MPI_File_iread_at_all_c)) """ -function MPI_File_set_atomicity(fh, flag) - @mpichk ccall((:MPI_File_set_atomicity, libmpi), Cint, (MPI_File, Cint), fh, flag) +function MPI_File_iread_at_all_c(fh, offset, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iread_at_all_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) end """ - MPI_File_get_atomicity(fh, flag) + MPI_File_iread_shared_c(fh, buf, count, datatype, request) -$(_doc_external(:MPI_File_get_atomicity)) +$(_doc_external(:MPI_File_iread_shared_c)) """ -function MPI_File_get_atomicity(fh, flag) - @mpichk ccall((:MPI_File_get_atomicity, libmpi), Cint, (MPI_File, Ptr{Cint}), fh, flag) +function MPI_File_iread_shared_c(fh, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iread_shared_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) end """ - MPI_File_sync(fh) + MPI_File_iwrite_c(fh, buf, count, datatype, request) -$(_doc_external(:MPI_File_sync)) +$(_doc_external(:MPI_File_iwrite_c)) """ -function MPI_File_sync(fh) - @mpichk ccall((:MPI_File_sync, libmpi), Cint, (MPI_File,), fh) +function MPI_File_iwrite_c(fh, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iwrite_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) end """ - MPI_File_iread_at_all(fh, offset, buf, count, datatype, request) + MPI_File_iwrite_all_c(fh, buf, count, datatype, request) -$(_doc_external(:MPI_File_iread_at_all)) +$(_doc_external(:MPI_File_iwrite_all_c)) """ -function MPI_File_iread_at_all(fh, offset, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iread_at_all, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) +function MPI_File_iwrite_all_c(fh, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iwrite_all_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) end """ - MPI_File_iwrite_at_all(fh, offset, buf, count, datatype, request) + MPI_File_iwrite_at_c(fh, offset, buf, count, datatype, request) -$(_doc_external(:MPI_File_iwrite_at_all)) +$(_doc_external(:MPI_File_iwrite_at_c)) """ -function MPI_File_iwrite_at_all(fh, offset, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iwrite_at_all, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) +function MPI_File_iwrite_at_c(fh, offset, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iwrite_at_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) end """ - MPI_File_iread_all(fh, buf, count, datatype, request) + MPI_File_iwrite_at_all_c(fh, offset, buf, count, datatype, request) -$(_doc_external(:MPI_File_iread_all)) +$(_doc_external(:MPI_File_iwrite_at_all_c)) """ -function MPI_File_iread_all(fh, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iread_all, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) +function MPI_File_iwrite_at_all_c(fh, offset, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iwrite_at_all_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) end """ - MPI_File_iwrite_all(fh, buf, count, datatype, request) + MPI_File_iwrite_shared_c(fh, buf, count, datatype, request) -$(_doc_external(:MPI_File_iwrite_all)) +$(_doc_external(:MPI_File_iwrite_shared_c)) """ -function MPI_File_iwrite_all(fh, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iwrite_all, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) +function MPI_File_iwrite_shared_c(fh, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iwrite_shared_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) end """ @@ -4878,105 +5436,6 @@ function MPI_File_write_shared_c(fh, buf, count, datatype, status) @mpichk ccall((:MPI_File_write_shared_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) end -""" - MPI_File_iread_c(fh, buf, count, datatype, request) - -$(_doc_external(:MPI_File_iread_c)) -""" -function MPI_File_iread_c(fh, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iread_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) -end - -""" - MPI_File_iread_all_c(fh, buf, count, datatype, request) - -$(_doc_external(:MPI_File_iread_all_c)) -""" -function MPI_File_iread_all_c(fh, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iread_all_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) -end - -""" - MPI_File_iread_at_c(fh, offset, buf, count, datatype, request) - -$(_doc_external(:MPI_File_iread_at_c)) -""" -function MPI_File_iread_at_c(fh, offset, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iread_at_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) -end - -""" - MPI_File_iread_at_all_c(fh, offset, buf, count, datatype, request) - -$(_doc_external(:MPI_File_iread_at_all_c)) -""" -function MPI_File_iread_at_all_c(fh, offset, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iread_at_all_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) -end - -""" - MPI_File_iread_shared_c(fh, buf, count, datatype, request) - -$(_doc_external(:MPI_File_iread_shared_c)) -""" -function MPI_File_iread_shared_c(fh, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iread_shared_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) -end - -""" - MPI_File_iwrite_c(fh, buf, count, datatype, request) - -$(_doc_external(:MPI_File_iwrite_c)) -""" -function MPI_File_iwrite_c(fh, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iwrite_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) -end - -""" - MPI_File_iwrite_all_c(fh, buf, count, datatype, request) - -$(_doc_external(:MPI_File_iwrite_all_c)) -""" -function MPI_File_iwrite_all_c(fh, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iwrite_all_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) -end - -""" - MPI_File_iwrite_at_c(fh, offset, buf, count, datatype, request) - -$(_doc_external(:MPI_File_iwrite_at_c)) -""" -function MPI_File_iwrite_at_c(fh, offset, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iwrite_at_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) -end - -""" - MPI_File_iwrite_at_all_c(fh, offset, buf, count, datatype, request) - -$(_doc_external(:MPI_File_iwrite_at_all_c)) -""" -function MPI_File_iwrite_at_all_c(fh, offset, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iwrite_at_all_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) -end - -""" - MPI_File_iwrite_shared_c(fh, buf, count, datatype, request) - -$(_doc_external(:MPI_File_iwrite_shared_c)) -""" -function MPI_File_iwrite_shared_c(fh, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iwrite_shared_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) -end - -""" - MPI_File_get_type_extent_c(fh, datatype, extent) - -$(_doc_external(:MPI_File_get_type_extent_c)) -""" -function MPI_File_get_type_extent_c(fh, datatype, extent) - @mpichk ccall((:MPI_File_get_type_extent_c, libmpi), Cint, (MPI_File, MPI_Datatype, Ptr{MPI_Count}), fh, datatype, extent) -end - """ MPI_Register_datarep_c(datarep, read_conversion_fn, write_conversion_fn, dtype_file_extent_fn, extra_state) @@ -4985,21 +5444,3 @@ $(_doc_external(:MPI_Register_datarep_c)) function MPI_Register_datarep_c(datarep, read_conversion_fn, write_conversion_fn, dtype_file_extent_fn, extra_state) @mpichk ccall((:MPI_Register_datarep_c, libmpi), Cint, (Ptr{Cchar}, Ptr{MPI_Datarep_conversion_function_c}, Ptr{MPI_Datarep_conversion_function_c}, Ptr{MPI_Datarep_extent_function}, MPIPtr), datarep, read_conversion_fn, write_conversion_fn, dtype_file_extent_fn, extra_state) end - -""" - MPI_File_f2c(file) - -$(_doc_external(:MPI_File_f2c)) -""" -function MPI_File_f2c(file) - @mpichk ccall((:MPI_File_f2c, libmpi), MPI_File, (MPI_Fint,), file) -end - -""" - MPI_File_c2f(file) - -$(_doc_external(:MPI_File_c2f)) -""" -function MPI_File_c2f(file) - @mpichk ccall((:MPI_File_c2f, libmpi), MPI_Fint, (MPI_File,), file) -end From 510c62544722b44ee72ca3e138b2f8265e235067 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mos=C3=A8=20Giordano?= Date: Sat, 18 Jul 2026 00:01:04 +0100 Subject: [PATCH 07/14] gen: sort generated bindings by function name Clang.jl emits the function wrappers in the same order as they are declared in the parsed header, but for MPICH `mpi_proto.h` is itself an auto-generated file whose ordering is not stable across releases, resulting in large spurious diffs when regenerating the bindings. Sort the blocks (docstring + function definition) by name of the function in the post-processing, to make the output of the generator deterministic: future regenerations will only show differences where a signature actually changed. Regenerate the bindings accordingly: this reordering is a one-time diff, the content of the file is unchanged (verified block-by-block), and regenerating again produces a byte-identical file. Co-Authored-By: Claude Fable 5 --- gen/src/MPIgenerator.jl | 27 +- src/api/generated_api.jl | 4808 +++++++++++++++++++------------------- 2 files changed, 2430 insertions(+), 2405 deletions(-) diff --git a/gen/src/MPIgenerator.jl b/gen/src/MPIgenerator.jl index 53284e87b..97ac20e71 100644 --- a/gen/src/MPIgenerator.jl +++ b/gen/src/MPIgenerator.jl @@ -69,7 +69,7 @@ module MPIgenerator ) src, fn = joinpath(out, "api.jl"), joinpath("MPI.jl", relpath(@__FILE__, normpath(@__DIR__, "..", ".."))) - lines = String["# WARNING: this signature file for $(MPIPreferences.binary) has been auto-generated, please edit $fn instead !\n"] + lines = String[] for line in readlines(src) if (m = match(r"^ccall.*:([\w_]+)", lstrip(line))) ≢ nothing sym = first(m.captures) |> Symbol @@ -82,6 +82,31 @@ module MPIgenerator end push!(lines, replace(line, raw"\$" => '$')) end + + # group the lines into blocks (docstring + function definition) and sort them by + # name of the function, to make the output stable: the order in which the + # functions are declared in the headers may change between releases of the MPI + # implementations + blocks = Vector{Vector{String}}() + block = String[] + for line in lines + # drop the blank lines separating the blocks, they are re-added below + isempty(block) && isempty(line) && continue + push!(block, line) + if line == "end" # end of a function definition + push!(blocks, block) + block = String[] + end + end + isempty(block) || error("malformed generated file $src, trailing lines: $block") + function_name(block) = match(r"^function (\w+)", block[findfirst(startswith("function "), block)]).captures[1] + sort!(blocks; by=function_name) + + lines = String["# WARNING: this signature file for $(MPIPreferences.binary) has been auto-generated, please edit $fn instead !\n"] + for block in blocks + append!(lines, block) + push!(lines, "") + end write(src, join(lines, "\n")) dst = normpath(@__DIR__, "..", "..", "src", "api", "generated_api.jl") diff --git a/src/api/generated_api.jl b/src/api/generated_api.jl index b8ebce3bc..9446bc27f 100644 --- a/src/api/generated_api.jl +++ b/src/api/generated_api.jl @@ -55,4701 +55,4665 @@ function MPI_Abi_set_fortran_info(info) end """ - MPI_Comm_toint(comm) - -$(_doc_external(:MPI_Comm_toint)) -""" -function MPI_Comm_toint(comm) - @mpichk ccall((:MPI_Comm_toint, libmpi), Cint, (MPI_Comm,), comm) -end - -""" - MPI_Comm_fromint(comm) - -$(_doc_external(:MPI_Comm_fromint)) -""" -function MPI_Comm_fromint(comm) - @mpichk ccall((:MPI_Comm_fromint, libmpi), MPI_Comm, (Cint,), comm) -end - -""" - MPI_Errhandler_toint(errhandler) - -$(_doc_external(:MPI_Errhandler_toint)) -""" -function MPI_Errhandler_toint(errhandler) - @mpichk ccall((:MPI_Errhandler_toint, libmpi), Cint, (MPI_Errhandler,), errhandler) -end - -""" - MPI_Errhandler_fromint(errhandler) - -$(_doc_external(:MPI_Errhandler_fromint)) -""" -function MPI_Errhandler_fromint(errhandler) - @mpichk ccall((:MPI_Errhandler_fromint, libmpi), MPI_Errhandler, (Cint,), errhandler) -end - -""" - MPI_Group_toint(group) + MPI_Abort(comm, errorcode) -$(_doc_external(:MPI_Group_toint)) +$(_doc_external(:MPI_Abort)) """ -function MPI_Group_toint(group) - @mpichk ccall((:MPI_Group_toint, libmpi), Cint, (MPI_Group,), group) +function MPI_Abort(comm, errorcode) + @mpichk ccall((:MPI_Abort, libmpi), Cint, (MPI_Comm, Cint), comm, errorcode) end """ - MPI_Group_fromint(group) + MPI_Accumulate(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win) -$(_doc_external(:MPI_Group_fromint)) +$(_doc_external(:MPI_Accumulate)) """ -function MPI_Group_fromint(group) - @mpichk ccall((:MPI_Group_fromint, libmpi), MPI_Group, (Cint,), group) +function MPI_Accumulate(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win) + @mpichk ccall((:MPI_Accumulate, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, MPI_Aint, Cint, MPI_Datatype, MPI_Op, MPI_Win), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win) end """ - MPI_Info_toint(info) + MPI_Accumulate_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win) -$(_doc_external(:MPI_Info_toint)) +$(_doc_external(:MPI_Accumulate_c)) """ -function MPI_Info_toint(info) - @mpichk ccall((:MPI_Info_toint, libmpi), Cint, (MPI_Info,), info) +function MPI_Accumulate_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win) + @mpichk ccall((:MPI_Accumulate_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Op, MPI_Win), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win) end """ - MPI_Info_fromint(info) + MPI_Add_error_class(errorclass) -$(_doc_external(:MPI_Info_fromint)) +$(_doc_external(:MPI_Add_error_class)) """ -function MPI_Info_fromint(info) - @mpichk ccall((:MPI_Info_fromint, libmpi), MPI_Info, (Cint,), info) +function MPI_Add_error_class(errorclass) + @mpichk ccall((:MPI_Add_error_class, libmpi), Cint, (Ptr{Cint},), errorclass) end """ - MPI_Message_toint(message) + MPI_Add_error_code(errorclass, errorcode) -$(_doc_external(:MPI_Message_toint)) +$(_doc_external(:MPI_Add_error_code)) """ -function MPI_Message_toint(message) - @mpichk ccall((:MPI_Message_toint, libmpi), Cint, (MPI_Message,), message) +function MPI_Add_error_code(errorclass, errorcode) + @mpichk ccall((:MPI_Add_error_code, libmpi), Cint, (Cint, Ptr{Cint}), errorclass, errorcode) end """ - MPI_Message_fromint(message) + MPI_Add_error_string(errorcode, string) -$(_doc_external(:MPI_Message_fromint)) +$(_doc_external(:MPI_Add_error_string)) """ -function MPI_Message_fromint(message) - @mpichk ccall((:MPI_Message_fromint, libmpi), MPI_Message, (Cint,), message) +function MPI_Add_error_string(errorcode, string) + @mpichk ccall((:MPI_Add_error_string, libmpi), Cint, (Cint, Ptr{Cchar}), errorcode, string) end """ - MPI_Op_toint(op) + MPI_Address(location, address) -$(_doc_external(:MPI_Op_toint)) +$(_doc_external(:MPI_Address)) """ -function MPI_Op_toint(op) - @mpichk ccall((:MPI_Op_toint, libmpi), Cint, (MPI_Op,), op) +function MPI_Address(location, address) + @mpichk ccall((:MPI_Address, libmpi), Cint, (MPIPtr, Ptr{MPI_Aint}), location, address) end """ - MPI_Op_fromint(op) + MPI_Aint_add(base, disp) -$(_doc_external(:MPI_Op_fromint)) +$(_doc_external(:MPI_Aint_add)) """ -function MPI_Op_fromint(op) - @mpichk ccall((:MPI_Op_fromint, libmpi), MPI_Op, (Cint,), op) +function MPI_Aint_add(base, disp) + @mpichk ccall((:MPI_Aint_add, libmpi), MPI_Aint, (MPI_Aint, MPI_Aint), base, disp) end """ - MPI_Request_toint(request) + MPI_Aint_diff(addr1, addr2) -$(_doc_external(:MPI_Request_toint)) +$(_doc_external(:MPI_Aint_diff)) """ -function MPI_Request_toint(request) - @mpichk ccall((:MPI_Request_toint, libmpi), Cint, (MPI_Request,), request) +function MPI_Aint_diff(addr1, addr2) + @mpichk ccall((:MPI_Aint_diff, libmpi), MPI_Aint, (MPI_Aint, MPI_Aint), addr1, addr2) end """ - MPI_Request_fromint(request) + MPI_Allgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) -$(_doc_external(:MPI_Request_fromint)) +$(_doc_external(:MPI_Allgather)) """ -function MPI_Request_fromint(request) - @mpichk ccall((:MPI_Request_fromint, libmpi), MPI_Request, (Cint,), request) +function MPI_Allgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) + @mpichk ccall((:MPI_Allgather, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) end """ - MPI_Type_toint(datatype) + MPI_Allgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) -$(_doc_external(:MPI_Type_toint)) +$(_doc_external(:MPI_Allgather_c)) """ -function MPI_Type_toint(datatype) - @mpichk ccall((:MPI_Type_toint, libmpi), Cint, (MPI_Datatype,), datatype) +function MPI_Allgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) + @mpichk ccall((:MPI_Allgather_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) end """ - MPI_Type_fromint(datatype) + MPI_Allgather_init(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) -$(_doc_external(:MPI_Type_fromint)) +$(_doc_external(:MPI_Allgather_init)) """ -function MPI_Type_fromint(datatype) - @mpichk ccall((:MPI_Type_fromint, libmpi), MPI_Datatype, (Cint,), datatype) +function MPI_Allgather_init(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) + @mpichk ccall((:MPI_Allgather_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) end """ - MPI_Win_toint(win) + MPI_Allgather_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) -$(_doc_external(:MPI_Win_toint)) +$(_doc_external(:MPI_Allgather_init_c)) """ -function MPI_Win_toint(win) - @mpichk ccall((:MPI_Win_toint, libmpi), Cint, (MPI_Win,), win) +function MPI_Allgather_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) + @mpichk ccall((:MPI_Allgather_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) end """ - MPI_Win_fromint(win) + MPI_Allgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) -$(_doc_external(:MPI_Win_fromint)) +$(_doc_external(:MPI_Allgatherv)) """ -function MPI_Win_fromint(win) - @mpichk ccall((:MPI_Win_fromint, libmpi), MPI_Win, (Cint,), win) +function MPI_Allgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) + @mpichk ccall((:MPI_Allgatherv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) end """ - MPI_Comm_create_keyval(comm_copy_attr_fn, comm_delete_attr_fn, comm_keyval, extra_state) + MPI_Allgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) -$(_doc_external(:MPI_Comm_create_keyval)) +$(_doc_external(:MPI_Allgatherv_c)) """ -function MPI_Comm_create_keyval(comm_copy_attr_fn, comm_delete_attr_fn, comm_keyval, extra_state) - @mpichk ccall((:MPI_Comm_create_keyval, libmpi), Cint, (Ptr{MPI_Comm_copy_attr_function}, Ptr{MPI_Comm_delete_attr_function}, Ptr{Cint}, MPIPtr), comm_copy_attr_fn, comm_delete_attr_fn, comm_keyval, extra_state) +function MPI_Allgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) + @mpichk ccall((:MPI_Allgatherv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) end """ - MPI_Keyval_create(copy_fn, delete_fn, keyval, extra_state) + MPI_Allgatherv_init(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) -$(_doc_external(:MPI_Keyval_create)) +$(_doc_external(:MPI_Allgatherv_init)) """ -function MPI_Keyval_create(copy_fn, delete_fn, keyval, extra_state) - @mpichk ccall((:MPI_Keyval_create, libmpi), Cint, (Ptr{MPI_Copy_function}, Ptr{MPI_Delete_function}, Ptr{Cint}, MPIPtr), copy_fn, delete_fn, keyval, extra_state) +function MPI_Allgatherv_init(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) + @mpichk ccall((:MPI_Allgatherv_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) end """ - MPI_Comm_delete_attr(comm, comm_keyval) + MPI_Allgatherv_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) -$(_doc_external(:MPI_Comm_delete_attr)) +$(_doc_external(:MPI_Allgatherv_init_c)) """ -function MPI_Comm_delete_attr(comm, comm_keyval) - @mpichk ccall((:MPI_Comm_delete_attr, libmpi), Cint, (MPI_Comm, Cint), comm, comm_keyval) +function MPI_Allgatherv_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) + @mpichk ccall((:MPI_Allgatherv_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) end """ - MPI_Attr_delete(comm, keyval) + MPI_Alloc_mem(size, info, baseptr) -$(_doc_external(:MPI_Attr_delete)) +$(_doc_external(:MPI_Alloc_mem)) """ -function MPI_Attr_delete(comm, keyval) - @mpichk ccall((:MPI_Attr_delete, libmpi), Cint, (MPI_Comm, Cint), comm, keyval) +function MPI_Alloc_mem(size, info, baseptr) + @mpichk ccall((:MPI_Alloc_mem, libmpi), Cint, (MPI_Aint, MPI_Info, MPIPtr), size, info, baseptr) end """ - MPI_Comm_free_keyval(comm_keyval) + MPI_Allreduce(sendbuf, recvbuf, count, datatype, op, comm) -$(_doc_external(:MPI_Comm_free_keyval)) +$(_doc_external(:MPI_Allreduce)) """ -function MPI_Comm_free_keyval(comm_keyval) - @mpichk ccall((:MPI_Comm_free_keyval, libmpi), Cint, (Ptr{Cint},), comm_keyval) +function MPI_Allreduce(sendbuf, recvbuf, count, datatype, op, comm) + @mpichk gc_safe=true ccall((:MPI_Allreduce, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, count, datatype, op, comm) end """ - MPI_Keyval_free(keyval) + MPI_Allreduce_c(sendbuf, recvbuf, count, datatype, op, comm) -$(_doc_external(:MPI_Keyval_free)) +$(_doc_external(:MPI_Allreduce_c)) """ -function MPI_Keyval_free(keyval) - @mpichk ccall((:MPI_Keyval_free, libmpi), Cint, (Ptr{Cint},), keyval) +function MPI_Allreduce_c(sendbuf, recvbuf, count, datatype, op, comm) + @mpichk ccall((:MPI_Allreduce_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, count, datatype, op, comm) end """ - MPI_Comm_get_attr(comm, comm_keyval, attribute_val, flag) + MPI_Allreduce_init(sendbuf, recvbuf, count, datatype, op, comm, info, request) -$(_doc_external(:MPI_Comm_get_attr)) +$(_doc_external(:MPI_Allreduce_init)) """ -function MPI_Comm_get_attr(comm, comm_keyval, attribute_val, flag) - @mpichk ccall((:MPI_Comm_get_attr, libmpi), Cint, (MPI_Comm, Cint, MPIPtr, Ptr{Cint}), comm, comm_keyval, attribute_val, flag) +function MPI_Allreduce_init(sendbuf, recvbuf, count, datatype, op, comm, info, request) + @mpichk ccall((:MPI_Allreduce_init, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, info, request) end """ - MPI_Attr_get(comm, keyval, attribute_val, flag) + MPI_Allreduce_init_c(sendbuf, recvbuf, count, datatype, op, comm, info, request) -$(_doc_external(:MPI_Attr_get)) +$(_doc_external(:MPI_Allreduce_init_c)) """ -function MPI_Attr_get(comm, keyval, attribute_val, flag) - @mpichk ccall((:MPI_Attr_get, libmpi), Cint, (MPI_Comm, Cint, MPIPtr, Ptr{Cint}), comm, keyval, attribute_val, flag) +function MPI_Allreduce_init_c(sendbuf, recvbuf, count, datatype, op, comm, info, request) + @mpichk ccall((:MPI_Allreduce_init_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, info, request) end """ - MPI_Comm_set_attr(comm, comm_keyval, attribute_val) + MPI_Alltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) -$(_doc_external(:MPI_Comm_set_attr)) +$(_doc_external(:MPI_Alltoall)) """ -function MPI_Comm_set_attr(comm, comm_keyval, attribute_val) - @mpichk ccall((:MPI_Comm_set_attr, libmpi), Cint, (MPI_Comm, Cint, MPIPtr), comm, comm_keyval, attribute_val) +function MPI_Alltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) + @mpichk ccall((:MPI_Alltoall, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) end """ - MPI_Attr_put(comm, keyval, attribute_val) + MPI_Alltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) -$(_doc_external(:MPI_Attr_put)) +$(_doc_external(:MPI_Alltoall_c)) """ -function MPI_Attr_put(comm, keyval, attribute_val) - @mpichk ccall((:MPI_Attr_put, libmpi), Cint, (MPI_Comm, Cint, MPIPtr), comm, keyval, attribute_val) +function MPI_Alltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) + @mpichk ccall((:MPI_Alltoall_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) end """ - MPI_Type_create_keyval(type_copy_attr_fn, type_delete_attr_fn, type_keyval, extra_state) + MPI_Alltoall_init(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) -$(_doc_external(:MPI_Type_create_keyval)) +$(_doc_external(:MPI_Alltoall_init)) """ -function MPI_Type_create_keyval(type_copy_attr_fn, type_delete_attr_fn, type_keyval, extra_state) - @mpichk ccall((:MPI_Type_create_keyval, libmpi), Cint, (Ptr{MPI_Type_copy_attr_function}, Ptr{MPI_Type_delete_attr_function}, Ptr{Cint}, MPIPtr), type_copy_attr_fn, type_delete_attr_fn, type_keyval, extra_state) +function MPI_Alltoall_init(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) + @mpichk ccall((:MPI_Alltoall_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) end """ - MPI_Type_delete_attr(datatype, type_keyval) + MPI_Alltoall_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) -$(_doc_external(:MPI_Type_delete_attr)) +$(_doc_external(:MPI_Alltoall_init_c)) """ -function MPI_Type_delete_attr(datatype, type_keyval) - @mpichk ccall((:MPI_Type_delete_attr, libmpi), Cint, (MPI_Datatype, Cint), datatype, type_keyval) +function MPI_Alltoall_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) + @mpichk ccall((:MPI_Alltoall_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) end """ - MPI_Type_free_keyval(type_keyval) + MPI_Alltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) -$(_doc_external(:MPI_Type_free_keyval)) +$(_doc_external(:MPI_Alltoallv)) """ -function MPI_Type_free_keyval(type_keyval) - @mpichk ccall((:MPI_Type_free_keyval, libmpi), Cint, (Ptr{Cint},), type_keyval) +function MPI_Alltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) + @mpichk ccall((:MPI_Alltoallv, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) end """ - MPI_Type_get_attr(datatype, type_keyval, attribute_val, flag) + MPI_Alltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) -$(_doc_external(:MPI_Type_get_attr)) +$(_doc_external(:MPI_Alltoallv_c)) """ -function MPI_Type_get_attr(datatype, type_keyval, attribute_val, flag) - @mpichk ccall((:MPI_Type_get_attr, libmpi), Cint, (MPI_Datatype, Cint, MPIPtr, Ptr{Cint}), datatype, type_keyval, attribute_val, flag) +function MPI_Alltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) + @mpichk ccall((:MPI_Alltoallv_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) end """ - MPI_Type_set_attr(datatype, type_keyval, attribute_val) + MPI_Alltoallv_init(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) -$(_doc_external(:MPI_Type_set_attr)) +$(_doc_external(:MPI_Alltoallv_init)) """ -function MPI_Type_set_attr(datatype, type_keyval, attribute_val) - @mpichk ccall((:MPI_Type_set_attr, libmpi), Cint, (MPI_Datatype, Cint, MPIPtr), datatype, type_keyval, attribute_val) +function MPI_Alltoallv_init(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) + @mpichk ccall((:MPI_Alltoallv_init, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) end """ - MPI_Win_create_keyval(win_copy_attr_fn, win_delete_attr_fn, win_keyval, extra_state) + MPI_Alltoallv_init_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) -$(_doc_external(:MPI_Win_create_keyval)) +$(_doc_external(:MPI_Alltoallv_init_c)) """ -function MPI_Win_create_keyval(win_copy_attr_fn, win_delete_attr_fn, win_keyval, extra_state) - @mpichk ccall((:MPI_Win_create_keyval, libmpi), Cint, (Ptr{MPI_Win_copy_attr_function}, Ptr{MPI_Win_delete_attr_function}, Ptr{Cint}, MPIPtr), win_copy_attr_fn, win_delete_attr_fn, win_keyval, extra_state) +function MPI_Alltoallv_init_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) + @mpichk ccall((:MPI_Alltoallv_init_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) end """ - MPI_Win_delete_attr(win, win_keyval) + MPI_Alltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) -$(_doc_external(:MPI_Win_delete_attr)) +$(_doc_external(:MPI_Alltoallw)) """ -function MPI_Win_delete_attr(win, win_keyval) - @mpichk ccall((:MPI_Win_delete_attr, libmpi), Cint, (MPI_Win, Cint), win, win_keyval) +function MPI_Alltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) + @mpichk ccall((:MPI_Alltoallw, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Datatype}, MPI_Comm), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) end """ - MPI_Win_free_keyval(win_keyval) + MPI_Alltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) -$(_doc_external(:MPI_Win_free_keyval)) +$(_doc_external(:MPI_Alltoallw_c)) """ -function MPI_Win_free_keyval(win_keyval) - @mpichk ccall((:MPI_Win_free_keyval, libmpi), Cint, (Ptr{Cint},), win_keyval) +function MPI_Alltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) + @mpichk ccall((:MPI_Alltoallw_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) end """ - MPI_Win_get_attr(win, win_keyval, attribute_val, flag) + MPI_Alltoallw_init(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) -$(_doc_external(:MPI_Win_get_attr)) +$(_doc_external(:MPI_Alltoallw_init)) """ -function MPI_Win_get_attr(win, win_keyval, attribute_val, flag) - @mpichk ccall((:MPI_Win_get_attr, libmpi), Cint, (MPI_Win, Cint, MPIPtr, Ptr{Cint}), win, win_keyval, attribute_val, flag) +function MPI_Alltoallw_init(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) + @mpichk ccall((:MPI_Alltoallw_init, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Datatype}, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) end """ - MPI_Win_set_attr(win, win_keyval, attribute_val) + MPI_Alltoallw_init_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) -$(_doc_external(:MPI_Win_set_attr)) +$(_doc_external(:MPI_Alltoallw_init_c)) """ -function MPI_Win_set_attr(win, win_keyval, attribute_val) - @mpichk ccall((:MPI_Win_set_attr, libmpi), Cint, (MPI_Win, Cint, MPIPtr), win, win_keyval, attribute_val) +function MPI_Alltoallw_init_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) + @mpichk ccall((:MPI_Alltoallw_init_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) end """ - MPI_Allgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) + MPI_Attr_delete(comm, keyval) -$(_doc_external(:MPI_Allgather)) +$(_doc_external(:MPI_Attr_delete)) """ -function MPI_Allgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) - @mpichk ccall((:MPI_Allgather, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) +function MPI_Attr_delete(comm, keyval) + @mpichk ccall((:MPI_Attr_delete, libmpi), Cint, (MPI_Comm, Cint), comm, keyval) end """ - MPI_Allgather_init(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) + MPI_Attr_get(comm, keyval, attribute_val, flag) -$(_doc_external(:MPI_Allgather_init)) +$(_doc_external(:MPI_Attr_get)) """ -function MPI_Allgather_init(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) - @mpichk ccall((:MPI_Allgather_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) +function MPI_Attr_get(comm, keyval, attribute_val, flag) + @mpichk ccall((:MPI_Attr_get, libmpi), Cint, (MPI_Comm, Cint, MPIPtr, Ptr{Cint}), comm, keyval, attribute_val, flag) end """ - MPI_Allgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) + MPI_Attr_put(comm, keyval, attribute_val) -$(_doc_external(:MPI_Allgatherv)) +$(_doc_external(:MPI_Attr_put)) """ -function MPI_Allgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) - @mpichk ccall((:MPI_Allgatherv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) +function MPI_Attr_put(comm, keyval, attribute_val) + @mpichk ccall((:MPI_Attr_put, libmpi), Cint, (MPI_Comm, Cint, MPIPtr), comm, keyval, attribute_val) end """ - MPI_Allgatherv_init(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) + MPI_Barrier(comm) -$(_doc_external(:MPI_Allgatherv_init)) +$(_doc_external(:MPI_Barrier)) """ -function MPI_Allgatherv_init(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) - @mpichk ccall((:MPI_Allgatherv_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) +function MPI_Barrier(comm) + @mpichk ccall((:MPI_Barrier, libmpi), Cint, (MPI_Comm,), comm) end """ - MPI_Allreduce(sendbuf, recvbuf, count, datatype, op, comm) + MPI_Barrier_init(comm, info, request) -$(_doc_external(:MPI_Allreduce)) +$(_doc_external(:MPI_Barrier_init)) """ -function MPI_Allreduce(sendbuf, recvbuf, count, datatype, op, comm) - @mpichk gc_safe=true ccall((:MPI_Allreduce, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, count, datatype, op, comm) +function MPI_Barrier_init(comm, info, request) + @mpichk ccall((:MPI_Barrier_init, libmpi), Cint, (MPI_Comm, MPI_Info, Ptr{MPI_Request}), comm, info, request) end """ - MPI_Allreduce_init(sendbuf, recvbuf, count, datatype, op, comm, info, request) + MPI_Bcast(buffer, count, datatype, root, comm) -$(_doc_external(:MPI_Allreduce_init)) +$(_doc_external(:MPI_Bcast)) """ -function MPI_Allreduce_init(sendbuf, recvbuf, count, datatype, op, comm, info, request) - @mpichk ccall((:MPI_Allreduce_init, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, info, request) +function MPI_Bcast(buffer, count, datatype, root, comm) + @mpichk ccall((:MPI_Bcast, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm), buffer, count, datatype, root, comm) end """ - MPI_Alltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) + MPI_Bcast_c(buffer, count, datatype, root, comm) -$(_doc_external(:MPI_Alltoall)) +$(_doc_external(:MPI_Bcast_c)) """ -function MPI_Alltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) - @mpichk ccall((:MPI_Alltoall, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) +function MPI_Bcast_c(buffer, count, datatype, root, comm) + @mpichk ccall((:MPI_Bcast_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm), buffer, count, datatype, root, comm) end """ - MPI_Alltoall_init(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) + MPI_Bcast_init(buffer, count, datatype, root, comm, info, request) -$(_doc_external(:MPI_Alltoall_init)) +$(_doc_external(:MPI_Bcast_init)) """ -function MPI_Alltoall_init(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) - @mpichk ccall((:MPI_Alltoall_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) +function MPI_Bcast_init(buffer, count, datatype, root, comm, info, request) + @mpichk ccall((:MPI_Bcast_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), buffer, count, datatype, root, comm, info, request) end """ - MPI_Alltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) + MPI_Bcast_init_c(buffer, count, datatype, root, comm, info, request) -$(_doc_external(:MPI_Alltoallv)) +$(_doc_external(:MPI_Bcast_init_c)) """ -function MPI_Alltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) - @mpichk ccall((:MPI_Alltoallv, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) +function MPI_Bcast_init_c(buffer, count, datatype, root, comm, info, request) + @mpichk ccall((:MPI_Bcast_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), buffer, count, datatype, root, comm, info, request) end """ - MPI_Alltoallv_init(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) + MPI_Bsend(buf, count, datatype, dest, tag, comm) -$(_doc_external(:MPI_Alltoallv_init)) +$(_doc_external(:MPI_Bsend)) """ -function MPI_Alltoallv_init(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) - @mpichk ccall((:MPI_Alltoallv_init, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) +function MPI_Bsend(buf, count, datatype, dest, tag, comm) + @mpichk ccall((:MPI_Bsend, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) end """ - MPI_Alltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) + MPI_Bsend_c(buf, count, datatype, dest, tag, comm) -$(_doc_external(:MPI_Alltoallw)) +$(_doc_external(:MPI_Bsend_c)) """ -function MPI_Alltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) - @mpichk ccall((:MPI_Alltoallw, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Datatype}, MPI_Comm), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) +function MPI_Bsend_c(buf, count, datatype, dest, tag, comm) + @mpichk ccall((:MPI_Bsend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) end """ - MPI_Alltoallw_init(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) + MPI_Bsend_init(buf, count, datatype, dest, tag, comm, request) -$(_doc_external(:MPI_Alltoallw_init)) +$(_doc_external(:MPI_Bsend_init)) """ -function MPI_Alltoallw_init(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) - @mpichk ccall((:MPI_Alltoallw_init, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Datatype}, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) +function MPI_Bsend_init(buf, count, datatype, dest, tag, comm, request) + @mpichk ccall((:MPI_Bsend_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) end """ - MPI_Barrier(comm) + MPI_Bsend_init_c(buf, count, datatype, dest, tag, comm, request) -$(_doc_external(:MPI_Barrier)) +$(_doc_external(:MPI_Bsend_init_c)) """ -function MPI_Barrier(comm) - @mpichk ccall((:MPI_Barrier, libmpi), Cint, (MPI_Comm,), comm) +function MPI_Bsend_init_c(buf, count, datatype, dest, tag, comm, request) + @mpichk ccall((:MPI_Bsend_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) end """ - MPI_Barrier_init(comm, info, request) + MPI_Buffer_attach(buffer, size) -$(_doc_external(:MPI_Barrier_init)) +$(_doc_external(:MPI_Buffer_attach)) """ -function MPI_Barrier_init(comm, info, request) - @mpichk ccall((:MPI_Barrier_init, libmpi), Cint, (MPI_Comm, MPI_Info, Ptr{MPI_Request}), comm, info, request) +function MPI_Buffer_attach(buffer, size) + @mpichk ccall((:MPI_Buffer_attach, libmpi), Cint, (MPIPtr, Cint), buffer, size) end """ - MPI_Bcast(buffer, count, datatype, root, comm) + MPI_Buffer_attach_c(buffer, size) -$(_doc_external(:MPI_Bcast)) +$(_doc_external(:MPI_Buffer_attach_c)) """ -function MPI_Bcast(buffer, count, datatype, root, comm) - @mpichk ccall((:MPI_Bcast, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm), buffer, count, datatype, root, comm) +function MPI_Buffer_attach_c(buffer, size) + @mpichk ccall((:MPI_Buffer_attach_c, libmpi), Cint, (MPIPtr, MPI_Count), buffer, size) end """ - MPI_Bcast_init(buffer, count, datatype, root, comm, info, request) + MPI_Buffer_detach(buffer_addr, size) -$(_doc_external(:MPI_Bcast_init)) +$(_doc_external(:MPI_Buffer_detach)) """ -function MPI_Bcast_init(buffer, count, datatype, root, comm, info, request) - @mpichk ccall((:MPI_Bcast_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), buffer, count, datatype, root, comm, info, request) +function MPI_Buffer_detach(buffer_addr, size) + @mpichk ccall((:MPI_Buffer_detach, libmpi), Cint, (MPIPtr, Ptr{Cint}), buffer_addr, size) end """ - MPI_Exscan(sendbuf, recvbuf, count, datatype, op, comm) + MPI_Buffer_detach_c(buffer_addr, size) -$(_doc_external(:MPI_Exscan)) +$(_doc_external(:MPI_Buffer_detach_c)) """ -function MPI_Exscan(sendbuf, recvbuf, count, datatype, op, comm) - @mpichk ccall((:MPI_Exscan, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, count, datatype, op, comm) +function MPI_Buffer_detach_c(buffer_addr, size) + @mpichk ccall((:MPI_Buffer_detach_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}), buffer_addr, size) end """ - MPI_Exscan_init(sendbuf, recvbuf, count, datatype, op, comm, info, request) + MPI_Buffer_flush() -$(_doc_external(:MPI_Exscan_init)) +$(_doc_external(:MPI_Buffer_flush)) """ -function MPI_Exscan_init(sendbuf, recvbuf, count, datatype, op, comm, info, request) - @mpichk ccall((:MPI_Exscan_init, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, info, request) +function MPI_Buffer_flush() + @mpichk ccall((:MPI_Buffer_flush, libmpi), Cint, ()) end """ - MPI_Gather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) + MPI_Buffer_iflush(request) -$(_doc_external(:MPI_Gather)) +$(_doc_external(:MPI_Buffer_iflush)) """ -function MPI_Gather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) - @mpichk ccall((:MPI_Gather, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) +function MPI_Buffer_iflush(request) + @mpichk ccall((:MPI_Buffer_iflush, libmpi), Cint, (Ptr{MPI_Request},), request) end """ - MPI_Gather_init(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) + MPI_Cancel(request) -$(_doc_external(:MPI_Gather_init)) +$(_doc_external(:MPI_Cancel)) """ -function MPI_Gather_init(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) - @mpichk ccall((:MPI_Gather_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) +function MPI_Cancel(request) + @mpichk ccall((:MPI_Cancel, libmpi), Cint, (Ptr{MPI_Request},), request) end """ - MPI_Gatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm) + MPI_Cart_coords(comm, rank, maxdims, coords) -$(_doc_external(:MPI_Gatherv)) +$(_doc_external(:MPI_Cart_coords)) """ -function MPI_Gatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm) - @mpichk ccall((:MPI_Gatherv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm) +function MPI_Cart_coords(comm, rank, maxdims, coords) + @mpichk ccall((:MPI_Cart_coords, libmpi), Cint, (MPI_Comm, Cint, Cint, Ptr{Cint}), comm, rank, maxdims, coords) end """ - MPI_Gatherv_init(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, info, request) + MPI_Cart_create(comm_old, ndims, dims, periods, reorder, comm_cart) -$(_doc_external(:MPI_Gatherv_init)) +$(_doc_external(:MPI_Cart_create)) """ -function MPI_Gatherv_init(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, info, request) - @mpichk ccall((:MPI_Gatherv_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, info, request) +function MPI_Cart_create(comm_old, ndims, dims, periods, reorder, comm_cart) + @mpichk ccall((:MPI_Cart_create, libmpi), Cint, (MPI_Comm, Cint, Ptr{Cint}, Ptr{Cint}, Cint, Ptr{MPI_Comm}), comm_old, ndims, dims, periods, reorder, comm_cart) end """ - MPI_Iallgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) + MPI_Cart_get(comm, maxdims, dims, periods, coords) -$(_doc_external(:MPI_Iallgather)) +$(_doc_external(:MPI_Cart_get)) """ -function MPI_Iallgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) - @mpichk ccall((:MPI_Iallgather, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) +function MPI_Cart_get(comm, maxdims, dims, periods, coords) + @mpichk ccall((:MPI_Cart_get, libmpi), Cint, (MPI_Comm, Cint, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}), comm, maxdims, dims, periods, coords) end """ - MPI_Iallgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) + MPI_Cart_map(comm, ndims, dims, periods, newrank) -$(_doc_external(:MPI_Iallgatherv)) +$(_doc_external(:MPI_Cart_map)) """ -function MPI_Iallgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) - @mpichk ccall((:MPI_Iallgatherv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) +function MPI_Cart_map(comm, ndims, dims, periods, newrank) + @mpichk ccall((:MPI_Cart_map, libmpi), Cint, (MPI_Comm, Cint, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}), comm, ndims, dims, periods, newrank) end """ - MPI_Iallreduce(sendbuf, recvbuf, count, datatype, op, comm, request) + MPI_Cart_rank(comm, coords, rank) -$(_doc_external(:MPI_Iallreduce)) +$(_doc_external(:MPI_Cart_rank)) """ -function MPI_Iallreduce(sendbuf, recvbuf, count, datatype, op, comm, request) - @mpichk ccall((:MPI_Iallreduce, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, request) +function MPI_Cart_rank(comm, coords, rank) + @mpichk ccall((:MPI_Cart_rank, libmpi), Cint, (MPI_Comm, Ptr{Cint}, Ptr{Cint}), comm, coords, rank) end """ - MPI_Ialltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) + MPI_Cart_shift(comm, direction, disp, rank_source, rank_dest) -$(_doc_external(:MPI_Ialltoall)) +$(_doc_external(:MPI_Cart_shift)) """ -function MPI_Ialltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) - @mpichk ccall((:MPI_Ialltoall, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) +function MPI_Cart_shift(comm, direction, disp, rank_source, rank_dest) + @mpichk ccall((:MPI_Cart_shift, libmpi), Cint, (MPI_Comm, Cint, Cint, Ptr{Cint}, Ptr{Cint}), comm, direction, disp, rank_source, rank_dest) end """ - MPI_Ialltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) + MPI_Cart_sub(comm, remain_dims, newcomm) -$(_doc_external(:MPI_Ialltoallv)) +$(_doc_external(:MPI_Cart_sub)) """ -function MPI_Ialltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) - @mpichk ccall((:MPI_Ialltoallv, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) +function MPI_Cart_sub(comm, remain_dims, newcomm) + @mpichk ccall((:MPI_Cart_sub, libmpi), Cint, (MPI_Comm, Ptr{Cint}, Ptr{MPI_Comm}), comm, remain_dims, newcomm) end """ - MPI_Ialltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) + MPI_Cartdim_get(comm, ndims) -$(_doc_external(:MPI_Ialltoallw)) +$(_doc_external(:MPI_Cartdim_get)) """ -function MPI_Ialltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) - @mpichk ccall((:MPI_Ialltoallw, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Datatype}, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) +function MPI_Cartdim_get(comm, ndims) + @mpichk ccall((:MPI_Cartdim_get, libmpi), Cint, (MPI_Comm, Ptr{Cint}), comm, ndims) end """ - MPI_Ibarrier(comm, request) + MPI_Close_port(port_name) -$(_doc_external(:MPI_Ibarrier)) +$(_doc_external(:MPI_Close_port)) """ -function MPI_Ibarrier(comm, request) - @mpichk ccall((:MPI_Ibarrier, libmpi), Cint, (MPI_Comm, Ptr{MPI_Request}), comm, request) +function MPI_Close_port(port_name) + @mpichk ccall((:MPI_Close_port, libmpi), Cint, (Ptr{Cchar},), port_name) end """ - MPI_Ibcast(buffer, count, datatype, root, comm, request) + MPI_Comm_accept(port_name, info, root, comm, newcomm) -$(_doc_external(:MPI_Ibcast)) +$(_doc_external(:MPI_Comm_accept)) """ -function MPI_Ibcast(buffer, count, datatype, root, comm, request) - @mpichk ccall((:MPI_Ibcast, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), buffer, count, datatype, root, comm, request) +function MPI_Comm_accept(port_name, info, root, comm, newcomm) + @mpichk ccall((:MPI_Comm_accept, libmpi), Cint, (Ptr{Cchar}, MPI_Info, Cint, MPI_Comm, Ptr{MPI_Comm}), port_name, info, root, comm, newcomm) end """ - MPI_Iexscan(sendbuf, recvbuf, count, datatype, op, comm, request) + MPI_Comm_attach_buffer(comm, buffer, size) -$(_doc_external(:MPI_Iexscan)) +$(_doc_external(:MPI_Comm_attach_buffer)) """ -function MPI_Iexscan(sendbuf, recvbuf, count, datatype, op, comm, request) - @mpichk ccall((:MPI_Iexscan, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, request) +function MPI_Comm_attach_buffer(comm, buffer, size) + @mpichk ccall((:MPI_Comm_attach_buffer, libmpi), Cint, (MPI_Comm, MPIPtr, Cint), comm, buffer, size) end """ - MPI_Igather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) + MPI_Comm_attach_buffer_c(comm, buffer, size) -$(_doc_external(:MPI_Igather)) +$(_doc_external(:MPI_Comm_attach_buffer_c)) """ -function MPI_Igather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) - @mpichk ccall((:MPI_Igather, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) +function MPI_Comm_attach_buffer_c(comm, buffer, size) + @mpichk ccall((:MPI_Comm_attach_buffer_c, libmpi), Cint, (MPI_Comm, MPIPtr, MPI_Count), comm, buffer, size) end """ - MPI_Igatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, request) + MPI_Comm_call_errhandler(comm, errorcode) -$(_doc_external(:MPI_Igatherv)) +$(_doc_external(:MPI_Comm_call_errhandler)) """ -function MPI_Igatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, request) - @mpichk ccall((:MPI_Igatherv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, request) +function MPI_Comm_call_errhandler(comm, errorcode) + @mpichk ccall((:MPI_Comm_call_errhandler, libmpi), Cint, (MPI_Comm, Cint), comm, errorcode) end """ - MPI_Ineighbor_allgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) + MPI_Comm_compare(comm1, comm2, result) -$(_doc_external(:MPI_Ineighbor_allgather)) +$(_doc_external(:MPI_Comm_compare)) """ -function MPI_Ineighbor_allgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) - @mpichk ccall((:MPI_Ineighbor_allgather, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) +function MPI_Comm_compare(comm1, comm2, result) + @mpichk ccall((:MPI_Comm_compare, libmpi), Cint, (MPI_Comm, MPI_Comm, Ptr{Cint}), comm1, comm2, result) end """ - MPI_Ineighbor_allgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) + MPI_Comm_connect(port_name, info, root, comm, newcomm) -$(_doc_external(:MPI_Ineighbor_allgatherv)) +$(_doc_external(:MPI_Comm_connect)) """ -function MPI_Ineighbor_allgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) - @mpichk ccall((:MPI_Ineighbor_allgatherv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) +function MPI_Comm_connect(port_name, info, root, comm, newcomm) + @mpichk ccall((:MPI_Comm_connect, libmpi), Cint, (Ptr{Cchar}, MPI_Info, Cint, MPI_Comm, Ptr{MPI_Comm}), port_name, info, root, comm, newcomm) end """ - MPI_Ineighbor_alltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) + MPI_Comm_create(comm, group, newcomm) -$(_doc_external(:MPI_Ineighbor_alltoall)) +$(_doc_external(:MPI_Comm_create)) """ -function MPI_Ineighbor_alltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) - @mpichk ccall((:MPI_Ineighbor_alltoall, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) +function MPI_Comm_create(comm, group, newcomm) + @mpichk ccall((:MPI_Comm_create, libmpi), Cint, (MPI_Comm, MPI_Group, Ptr{MPI_Comm}), comm, group, newcomm) end """ - MPI_Ineighbor_alltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) + MPI_Comm_create_errhandler(comm_errhandler_fn, errhandler) -$(_doc_external(:MPI_Ineighbor_alltoallv)) +$(_doc_external(:MPI_Comm_create_errhandler)) """ -function MPI_Ineighbor_alltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) - @mpichk ccall((:MPI_Ineighbor_alltoallv, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) +function MPI_Comm_create_errhandler(comm_errhandler_fn, errhandler) + @mpichk ccall((:MPI_Comm_create_errhandler, libmpi), Cint, (Ptr{MPI_Comm_errhandler_function}, Ptr{MPI_Errhandler}), comm_errhandler_fn, errhandler) end """ - MPI_Ineighbor_alltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) + MPI_Comm_create_from_group(group, stringtag, info, errhandler, newcomm) -$(_doc_external(:MPI_Ineighbor_alltoallw)) +$(_doc_external(:MPI_Comm_create_from_group)) """ -function MPI_Ineighbor_alltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) - @mpichk ccall((:MPI_Ineighbor_alltoallw, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) +function MPI_Comm_create_from_group(group, stringtag, info, errhandler, newcomm) + @mpichk ccall((:MPI_Comm_create_from_group, libmpi), Cint, (MPI_Group, Ptr{Cchar}, MPI_Info, MPI_Errhandler, Ptr{MPI_Comm}), group, stringtag, info, errhandler, newcomm) end """ - MPI_Ireduce(sendbuf, recvbuf, count, datatype, op, root, comm, request) + MPI_Comm_create_group(comm, group, tag, newcomm) -$(_doc_external(:MPI_Ireduce)) +$(_doc_external(:MPI_Comm_create_group)) """ -function MPI_Ireduce(sendbuf, recvbuf, count, datatype, op, root, comm, request) - @mpichk ccall((:MPI_Ireduce, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, root, comm, request) +function MPI_Comm_create_group(comm, group, tag, newcomm) + @mpichk ccall((:MPI_Comm_create_group, libmpi), Cint, (MPI_Comm, MPI_Group, Cint, Ptr{MPI_Comm}), comm, group, tag, newcomm) end """ - MPI_Ireduce_scatter(sendbuf, recvbuf, recvcounts, datatype, op, comm, request) + MPI_Comm_create_keyval(comm_copy_attr_fn, comm_delete_attr_fn, comm_keyval, extra_state) -$(_doc_external(:MPI_Ireduce_scatter)) +$(_doc_external(:MPI_Comm_create_keyval)) """ -function MPI_Ireduce_scatter(sendbuf, recvbuf, recvcounts, datatype, op, comm, request) - @mpichk ccall((:MPI_Ireduce_scatter, libmpi), Cint, (MPIPtr, MPIPtr, Ptr{Cint}, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, recvcounts, datatype, op, comm, request) +function MPI_Comm_create_keyval(comm_copy_attr_fn, comm_delete_attr_fn, comm_keyval, extra_state) + @mpichk ccall((:MPI_Comm_create_keyval, libmpi), Cint, (Ptr{MPI_Comm_copy_attr_function}, Ptr{MPI_Comm_delete_attr_function}, Ptr{Cint}, MPIPtr), comm_copy_attr_fn, comm_delete_attr_fn, comm_keyval, extra_state) end """ - MPI_Ireduce_scatter_block(sendbuf, recvbuf, recvcount, datatype, op, comm, request) + MPI_Comm_delete_attr(comm, comm_keyval) -$(_doc_external(:MPI_Ireduce_scatter_block)) +$(_doc_external(:MPI_Comm_delete_attr)) """ -function MPI_Ireduce_scatter_block(sendbuf, recvbuf, recvcount, datatype, op, comm, request) - @mpichk ccall((:MPI_Ireduce_scatter_block, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, recvcount, datatype, op, comm, request) +function MPI_Comm_delete_attr(comm, comm_keyval) + @mpichk ccall((:MPI_Comm_delete_attr, libmpi), Cint, (MPI_Comm, Cint), comm, comm_keyval) end """ - MPI_Iscan(sendbuf, recvbuf, count, datatype, op, comm, request) + MPI_Comm_detach_buffer(comm, buffer_addr, size) -$(_doc_external(:MPI_Iscan)) +$(_doc_external(:MPI_Comm_detach_buffer)) """ -function MPI_Iscan(sendbuf, recvbuf, count, datatype, op, comm, request) - @mpichk ccall((:MPI_Iscan, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, request) +function MPI_Comm_detach_buffer(comm, buffer_addr, size) + @mpichk ccall((:MPI_Comm_detach_buffer, libmpi), Cint, (MPI_Comm, MPIPtr, Ptr{Cint}), comm, buffer_addr, size) end """ - MPI_Iscatter(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) + MPI_Comm_detach_buffer_c(comm, buffer_addr, size) -$(_doc_external(:MPI_Iscatter)) +$(_doc_external(:MPI_Comm_detach_buffer_c)) """ -function MPI_Iscatter(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) - @mpichk ccall((:MPI_Iscatter, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) +function MPI_Comm_detach_buffer_c(comm, buffer_addr, size) + @mpichk ccall((:MPI_Comm_detach_buffer_c, libmpi), Cint, (MPI_Comm, MPIPtr, Ptr{MPI_Count}), comm, buffer_addr, size) end """ - MPI_Iscatterv(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, request) + MPI_Comm_disconnect(comm) -$(_doc_external(:MPI_Iscatterv)) +$(_doc_external(:MPI_Comm_disconnect)) """ -function MPI_Iscatterv(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, request) - @mpichk ccall((:MPI_Iscatterv, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, request) +function MPI_Comm_disconnect(comm) + @mpichk ccall((:MPI_Comm_disconnect, libmpi), Cint, (Ptr{MPI_Comm},), comm) end """ - MPI_Neighbor_allgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) + MPI_Comm_dup(comm, newcomm) -$(_doc_external(:MPI_Neighbor_allgather)) +$(_doc_external(:MPI_Comm_dup)) """ -function MPI_Neighbor_allgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) - @mpichk ccall((:MPI_Neighbor_allgather, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) v"3.0.0" +function MPI_Comm_dup(comm, newcomm) + @mpichk ccall((:MPI_Comm_dup, libmpi), Cint, (MPI_Comm, Ptr{MPI_Comm}), comm, newcomm) end """ - MPI_Neighbor_allgather_init(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) + MPI_Comm_dup_with_info(comm, info, newcomm) -$(_doc_external(:MPI_Neighbor_allgather_init)) +$(_doc_external(:MPI_Comm_dup_with_info)) """ -function MPI_Neighbor_allgather_init(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) - @mpichk ccall((:MPI_Neighbor_allgather_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) +function MPI_Comm_dup_with_info(comm, info, newcomm) + @mpichk ccall((:MPI_Comm_dup_with_info, libmpi), Cint, (MPI_Comm, MPI_Info, Ptr{MPI_Comm}), comm, info, newcomm) end """ - MPI_Neighbor_allgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) + MPI_Comm_flush_buffer(comm) -$(_doc_external(:MPI_Neighbor_allgatherv)) +$(_doc_external(:MPI_Comm_flush_buffer)) """ -function MPI_Neighbor_allgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) - @mpichk ccall((:MPI_Neighbor_allgatherv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) v"3.0.0" +function MPI_Comm_flush_buffer(comm) + @mpichk ccall((:MPI_Comm_flush_buffer, libmpi), Cint, (MPI_Comm,), comm) end """ - MPI_Neighbor_allgatherv_init(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) + MPI_Comm_free(comm) -$(_doc_external(:MPI_Neighbor_allgatherv_init)) +$(_doc_external(:MPI_Comm_free)) """ -function MPI_Neighbor_allgatherv_init(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) - @mpichk ccall((:MPI_Neighbor_allgatherv_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) +function MPI_Comm_free(comm) + @mpichk ccall((:MPI_Comm_free, libmpi), Cint, (Ptr{MPI_Comm},), comm) end """ - MPI_Neighbor_alltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) + MPI_Comm_free_keyval(comm_keyval) -$(_doc_external(:MPI_Neighbor_alltoall)) +$(_doc_external(:MPI_Comm_free_keyval)) """ -function MPI_Neighbor_alltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) - @mpichk ccall((:MPI_Neighbor_alltoall, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) v"3.0.0" +function MPI_Comm_free_keyval(comm_keyval) + @mpichk ccall((:MPI_Comm_free_keyval, libmpi), Cint, (Ptr{Cint},), comm_keyval) end """ - MPI_Neighbor_alltoall_init(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) + MPI_Comm_fromint(comm) -$(_doc_external(:MPI_Neighbor_alltoall_init)) +$(_doc_external(:MPI_Comm_fromint)) """ -function MPI_Neighbor_alltoall_init(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) - @mpichk ccall((:MPI_Neighbor_alltoall_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) +function MPI_Comm_fromint(comm) + @mpichk ccall((:MPI_Comm_fromint, libmpi), MPI_Comm, (Cint,), comm) end """ - MPI_Neighbor_alltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) + MPI_Comm_get_attr(comm, comm_keyval, attribute_val, flag) -$(_doc_external(:MPI_Neighbor_alltoallv)) +$(_doc_external(:MPI_Comm_get_attr)) """ -function MPI_Neighbor_alltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) - @mpichk ccall((:MPI_Neighbor_alltoallv, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) v"3.0.0" +function MPI_Comm_get_attr(comm, comm_keyval, attribute_val, flag) + @mpichk ccall((:MPI_Comm_get_attr, libmpi), Cint, (MPI_Comm, Cint, MPIPtr, Ptr{Cint}), comm, comm_keyval, attribute_val, flag) end """ - MPI_Neighbor_alltoallv_init(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) + MPI_Comm_get_errhandler(comm, errhandler) -$(_doc_external(:MPI_Neighbor_alltoallv_init)) +$(_doc_external(:MPI_Comm_get_errhandler)) """ -function MPI_Neighbor_alltoallv_init(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) - @mpichk ccall((:MPI_Neighbor_alltoallv_init, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) +function MPI_Comm_get_errhandler(comm, errhandler) + @mpichk ccall((:MPI_Comm_get_errhandler, libmpi), Cint, (MPI_Comm, Ptr{MPI_Errhandler}), comm, errhandler) end """ - MPI_Neighbor_alltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) + MPI_Comm_get_info(comm, info_used) -$(_doc_external(:MPI_Neighbor_alltoallw)) +$(_doc_external(:MPI_Comm_get_info)) """ -function MPI_Neighbor_alltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) - @mpichk ccall((:MPI_Neighbor_alltoallw, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) +function MPI_Comm_get_info(comm, info_used) + @mpichk ccall((:MPI_Comm_get_info, libmpi), Cint, (MPI_Comm, Ptr{MPI_Info}), comm, info_used) end """ - MPI_Neighbor_alltoallw_init(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) + MPI_Comm_get_name(comm, comm_name, resultlen) -$(_doc_external(:MPI_Neighbor_alltoallw_init)) +$(_doc_external(:MPI_Comm_get_name)) """ -function MPI_Neighbor_alltoallw_init(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) - @mpichk ccall((:MPI_Neighbor_alltoallw_init, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) +function MPI_Comm_get_name(comm, comm_name, resultlen) + @mpichk ccall((:MPI_Comm_get_name, libmpi), Cint, (MPI_Comm, Ptr{Cchar}, Ptr{Cint}), comm, comm_name, resultlen) end """ - MPI_Reduce(sendbuf, recvbuf, count, datatype, op, root, comm) + MPI_Comm_get_parent(parent) -$(_doc_external(:MPI_Reduce)) +$(_doc_external(:MPI_Comm_get_parent)) """ -function MPI_Reduce(sendbuf, recvbuf, count, datatype, op, root, comm) - @mpichk ccall((:MPI_Reduce, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, Cint, MPI_Comm), sendbuf, recvbuf, count, datatype, op, root, comm) +function MPI_Comm_get_parent(parent) + @mpichk ccall((:MPI_Comm_get_parent, libmpi), Cint, (Ptr{MPI_Comm},), parent) end """ - MPI_Reduce_init(sendbuf, recvbuf, count, datatype, op, root, comm, info, request) + MPI_Comm_group(comm, group) -$(_doc_external(:MPI_Reduce_init)) +$(_doc_external(:MPI_Comm_group)) """ -function MPI_Reduce_init(sendbuf, recvbuf, count, datatype, op, root, comm, info, request) - @mpichk ccall((:MPI_Reduce_init, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, root, comm, info, request) +function MPI_Comm_group(comm, group) + @mpichk ccall((:MPI_Comm_group, libmpi), Cint, (MPI_Comm, Ptr{MPI_Group}), comm, group) end """ - MPI_Reduce_local(inbuf, inoutbuf, count, datatype, op) + MPI_Comm_idup(comm, newcomm, request) -$(_doc_external(:MPI_Reduce_local)) +$(_doc_external(:MPI_Comm_idup)) """ -function MPI_Reduce_local(inbuf, inoutbuf, count, datatype, op) - @mpichk ccall((:MPI_Reduce_local, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op), inbuf, inoutbuf, count, datatype, op) +function MPI_Comm_idup(comm, newcomm, request) + @mpichk ccall((:MPI_Comm_idup, libmpi), Cint, (MPI_Comm, Ptr{MPI_Comm}, Ptr{MPI_Request}), comm, newcomm, request) end """ - MPI_Reduce_scatter(sendbuf, recvbuf, recvcounts, datatype, op, comm) + MPI_Comm_idup_with_info(comm, info, newcomm, request) -$(_doc_external(:MPI_Reduce_scatter)) +$(_doc_external(:MPI_Comm_idup_with_info)) """ -function MPI_Reduce_scatter(sendbuf, recvbuf, recvcounts, datatype, op, comm) - @mpichk ccall((:MPI_Reduce_scatter, libmpi), Cint, (MPIPtr, MPIPtr, Ptr{Cint}, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, recvcounts, datatype, op, comm) +function MPI_Comm_idup_with_info(comm, info, newcomm, request) + @mpichk ccall((:MPI_Comm_idup_with_info, libmpi), Cint, (MPI_Comm, MPI_Info, Ptr{MPI_Comm}, Ptr{MPI_Request}), comm, info, newcomm, request) end """ - MPI_Reduce_scatter_block(sendbuf, recvbuf, recvcount, datatype, op, comm) + MPI_Comm_iflush_buffer(comm, request) -$(_doc_external(:MPI_Reduce_scatter_block)) +$(_doc_external(:MPI_Comm_iflush_buffer)) """ -function MPI_Reduce_scatter_block(sendbuf, recvbuf, recvcount, datatype, op, comm) - @mpichk ccall((:MPI_Reduce_scatter_block, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, recvcount, datatype, op, comm) +function MPI_Comm_iflush_buffer(comm, request) + @mpichk ccall((:MPI_Comm_iflush_buffer, libmpi), Cint, (MPI_Comm, Ptr{MPI_Request}), comm, request) end """ - MPI_Reduce_scatter_block_init(sendbuf, recvbuf, recvcount, datatype, op, comm, info, request) + MPI_Comm_join(fd, intercomm) -$(_doc_external(:MPI_Reduce_scatter_block_init)) +$(_doc_external(:MPI_Comm_join)) """ -function MPI_Reduce_scatter_block_init(sendbuf, recvbuf, recvcount, datatype, op, comm, info, request) - @mpichk ccall((:MPI_Reduce_scatter_block_init, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, recvcount, datatype, op, comm, info, request) +function MPI_Comm_join(fd, intercomm) + @mpichk ccall((:MPI_Comm_join, libmpi), Cint, (Cint, Ptr{MPI_Comm}), fd, intercomm) end """ - MPI_Reduce_scatter_init(sendbuf, recvbuf, recvcounts, datatype, op, comm, info, request) + MPI_Comm_rank(comm, rank) -$(_doc_external(:MPI_Reduce_scatter_init)) +$(_doc_external(:MPI_Comm_rank)) """ -function MPI_Reduce_scatter_init(sendbuf, recvbuf, recvcounts, datatype, op, comm, info, request) - @mpichk ccall((:MPI_Reduce_scatter_init, libmpi), Cint, (MPIPtr, MPIPtr, Ptr{Cint}, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, recvcounts, datatype, op, comm, info, request) +function MPI_Comm_rank(comm, rank) + @mpichk ccall((:MPI_Comm_rank, libmpi), Cint, (MPI_Comm, Ptr{Cint}), comm, rank) end """ - MPI_Scan(sendbuf, recvbuf, count, datatype, op, comm) + MPI_Comm_remote_group(comm, group) -$(_doc_external(:MPI_Scan)) +$(_doc_external(:MPI_Comm_remote_group)) """ -function MPI_Scan(sendbuf, recvbuf, count, datatype, op, comm) - @mpichk ccall((:MPI_Scan, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, count, datatype, op, comm) +function MPI_Comm_remote_group(comm, group) + @mpichk ccall((:MPI_Comm_remote_group, libmpi), Cint, (MPI_Comm, Ptr{MPI_Group}), comm, group) end """ - MPI_Scan_init(sendbuf, recvbuf, count, datatype, op, comm, info, request) + MPI_Comm_remote_size(comm, size) -$(_doc_external(:MPI_Scan_init)) +$(_doc_external(:MPI_Comm_remote_size)) """ -function MPI_Scan_init(sendbuf, recvbuf, count, datatype, op, comm, info, request) - @mpichk ccall((:MPI_Scan_init, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, info, request) +function MPI_Comm_remote_size(comm, size) + @mpichk ccall((:MPI_Comm_remote_size, libmpi), Cint, (MPI_Comm, Ptr{Cint}), comm, size) end """ - MPI_Scatter(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) + MPI_Comm_set_attr(comm, comm_keyval, attribute_val) -$(_doc_external(:MPI_Scatter)) +$(_doc_external(:MPI_Comm_set_attr)) """ -function MPI_Scatter(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) - @mpichk ccall((:MPI_Scatter, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) +function MPI_Comm_set_attr(comm, comm_keyval, attribute_val) + @mpichk ccall((:MPI_Comm_set_attr, libmpi), Cint, (MPI_Comm, Cint, MPIPtr), comm, comm_keyval, attribute_val) end """ - MPI_Scatter_init(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) + MPI_Comm_set_errhandler(comm, errhandler) -$(_doc_external(:MPI_Scatter_init)) +$(_doc_external(:MPI_Comm_set_errhandler)) """ -function MPI_Scatter_init(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) - @mpichk ccall((:MPI_Scatter_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) +function MPI_Comm_set_errhandler(comm, errhandler) + @mpichk ccall((:MPI_Comm_set_errhandler, libmpi), Cint, (MPI_Comm, MPI_Errhandler), comm, errhandler) end """ - MPI_Scatterv(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm) + MPI_Comm_set_info(comm, info) -$(_doc_external(:MPI_Scatterv)) +$(_doc_external(:MPI_Comm_set_info)) """ -function MPI_Scatterv(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm) - @mpichk ccall((:MPI_Scatterv, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm) +function MPI_Comm_set_info(comm, info) + @mpichk ccall((:MPI_Comm_set_info, libmpi), Cint, (MPI_Comm, MPI_Info), comm, info) end """ - MPI_Scatterv_init(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) + MPI_Comm_set_name(comm, comm_name) -$(_doc_external(:MPI_Scatterv_init)) +$(_doc_external(:MPI_Comm_set_name)) """ -function MPI_Scatterv_init(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) - @mpichk ccall((:MPI_Scatterv_init, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) +function MPI_Comm_set_name(comm, comm_name) + @mpichk ccall((:MPI_Comm_set_name, libmpi), Cint, (MPI_Comm, Ptr{Cchar}), comm, comm_name) end """ - MPI_Comm_compare(comm1, comm2, result) + MPI_Comm_size(comm, size) -$(_doc_external(:MPI_Comm_compare)) +$(_doc_external(:MPI_Comm_size)) """ -function MPI_Comm_compare(comm1, comm2, result) - @mpichk ccall((:MPI_Comm_compare, libmpi), Cint, (MPI_Comm, MPI_Comm, Ptr{Cint}), comm1, comm2, result) +function MPI_Comm_size(comm, size) + @mpichk ccall((:MPI_Comm_size, libmpi), Cint, (MPI_Comm, Ptr{Cint}), comm, size) end """ - MPI_Comm_create(comm, group, newcomm) + MPI_Comm_spawn(command, argv, maxprocs, info, root, comm, intercomm, array_of_errcodes) -$(_doc_external(:MPI_Comm_create)) +$(_doc_external(:MPI_Comm_spawn)) """ -function MPI_Comm_create(comm, group, newcomm) - @mpichk ccall((:MPI_Comm_create, libmpi), Cint, (MPI_Comm, MPI_Group, Ptr{MPI_Comm}), comm, group, newcomm) +function MPI_Comm_spawn(command, argv, maxprocs, info, root, comm, intercomm, array_of_errcodes) + @mpichk ccall((:MPI_Comm_spawn, libmpi), Cint, (Ptr{Cchar}, Ptr{Ptr{Cchar}}, Cint, MPI_Info, Cint, MPI_Comm, Ptr{MPI_Comm}, Ptr{Cint}), command, argv, maxprocs, info, root, comm, intercomm, array_of_errcodes) end """ - MPI_Comm_create_group(comm, group, tag, newcomm) + MPI_Comm_spawn_multiple(count, array_of_commands, array_of_argv, array_of_maxprocs, array_of_info, root, comm, intercomm, array_of_errcodes) -$(_doc_external(:MPI_Comm_create_group)) +$(_doc_external(:MPI_Comm_spawn_multiple)) """ -function MPI_Comm_create_group(comm, group, tag, newcomm) - @mpichk ccall((:MPI_Comm_create_group, libmpi), Cint, (MPI_Comm, MPI_Group, Cint, Ptr{MPI_Comm}), comm, group, tag, newcomm) +function MPI_Comm_spawn_multiple(count, array_of_commands, array_of_argv, array_of_maxprocs, array_of_info, root, comm, intercomm, array_of_errcodes) + @mpichk ccall((:MPI_Comm_spawn_multiple, libmpi), Cint, (Cint, Ptr{Ptr{Cchar}}, Ptr{Ptr{Ptr{Cchar}}}, Ptr{Cint}, Ptr{MPI_Info}, Cint, MPI_Comm, Ptr{MPI_Comm}, Ptr{Cint}), count, array_of_commands, array_of_argv, array_of_maxprocs, array_of_info, root, comm, intercomm, array_of_errcodes) end """ - MPI_Comm_dup(comm, newcomm) + MPI_Comm_split(comm, color, key, newcomm) -$(_doc_external(:MPI_Comm_dup)) +$(_doc_external(:MPI_Comm_split)) """ -function MPI_Comm_dup(comm, newcomm) - @mpichk ccall((:MPI_Comm_dup, libmpi), Cint, (MPI_Comm, Ptr{MPI_Comm}), comm, newcomm) +function MPI_Comm_split(comm, color, key, newcomm) + @mpichk ccall((:MPI_Comm_split, libmpi), Cint, (MPI_Comm, Cint, Cint, Ptr{MPI_Comm}), comm, color, key, newcomm) end """ - MPI_Comm_dup_with_info(comm, info, newcomm) + MPI_Comm_split_type(comm, split_type, key, info, newcomm) -$(_doc_external(:MPI_Comm_dup_with_info)) +$(_doc_external(:MPI_Comm_split_type)) """ -function MPI_Comm_dup_with_info(comm, info, newcomm) - @mpichk ccall((:MPI_Comm_dup_with_info, libmpi), Cint, (MPI_Comm, MPI_Info, Ptr{MPI_Comm}), comm, info, newcomm) +function MPI_Comm_split_type(comm, split_type, key, info, newcomm) + @mpichk ccall((:MPI_Comm_split_type, libmpi), Cint, (MPI_Comm, Cint, Cint, MPI_Info, Ptr{MPI_Comm}), comm, split_type, key, info, newcomm) end """ - MPI_Comm_free(comm) + MPI_Comm_test_inter(comm, flag) -$(_doc_external(:MPI_Comm_free)) +$(_doc_external(:MPI_Comm_test_inter)) """ -function MPI_Comm_free(comm) - @mpichk ccall((:MPI_Comm_free, libmpi), Cint, (Ptr{MPI_Comm},), comm) +function MPI_Comm_test_inter(comm, flag) + @mpichk ccall((:MPI_Comm_test_inter, libmpi), Cint, (MPI_Comm, Ptr{Cint}), comm, flag) end """ - MPI_Comm_get_info(comm, info_used) + MPI_Comm_toint(comm) -$(_doc_external(:MPI_Comm_get_info)) +$(_doc_external(:MPI_Comm_toint)) """ -function MPI_Comm_get_info(comm, info_used) - @mpichk ccall((:MPI_Comm_get_info, libmpi), Cint, (MPI_Comm, Ptr{MPI_Info}), comm, info_used) +function MPI_Comm_toint(comm) + @mpichk ccall((:MPI_Comm_toint, libmpi), Cint, (MPI_Comm,), comm) end """ - MPI_Comm_get_name(comm, comm_name, resultlen) + MPI_Compare_and_swap(origin_addr, compare_addr, result_addr, datatype, target_rank, target_disp, win) -$(_doc_external(:MPI_Comm_get_name)) +$(_doc_external(:MPI_Compare_and_swap)) """ -function MPI_Comm_get_name(comm, comm_name, resultlen) - @mpichk ccall((:MPI_Comm_get_name, libmpi), Cint, (MPI_Comm, Ptr{Cchar}, Ptr{Cint}), comm, comm_name, resultlen) +function MPI_Compare_and_swap(origin_addr, compare_addr, result_addr, datatype, target_rank, target_disp, win) + @mpichk ccall((:MPI_Compare_and_swap, libmpi), Cint, (MPIPtr, MPIPtr, MPIPtr, MPI_Datatype, Cint, MPI_Aint, MPI_Win), origin_addr, compare_addr, result_addr, datatype, target_rank, target_disp, win) end """ - MPI_Comm_group(comm, group) + MPI_Dims_create(nnodes, ndims, dims) -$(_doc_external(:MPI_Comm_group)) +$(_doc_external(:MPI_Dims_create)) """ -function MPI_Comm_group(comm, group) - @mpichk ccall((:MPI_Comm_group, libmpi), Cint, (MPI_Comm, Ptr{MPI_Group}), comm, group) +function MPI_Dims_create(nnodes, ndims, dims) + @mpichk ccall((:MPI_Dims_create, libmpi), Cint, (Cint, Cint, Ptr{Cint}), nnodes, ndims, dims) end """ - MPI_Comm_idup(comm, newcomm, request) + MPI_Dist_graph_create(comm_old, n, sources, degrees, destinations, weights, info, reorder, comm_dist_graph) -$(_doc_external(:MPI_Comm_idup)) +$(_doc_external(:MPI_Dist_graph_create)) """ -function MPI_Comm_idup(comm, newcomm, request) - @mpichk ccall((:MPI_Comm_idup, libmpi), Cint, (MPI_Comm, Ptr{MPI_Comm}, Ptr{MPI_Request}), comm, newcomm, request) +function MPI_Dist_graph_create(comm_old, n, sources, degrees, destinations, weights, info, reorder, comm_dist_graph) + @mpichk ccall((:MPI_Dist_graph_create, libmpi), Cint, (MPI_Comm, Cint, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}, MPI_Info, Cint, Ptr{MPI_Comm}), comm_old, n, sources, degrees, destinations, weights, info, reorder, comm_dist_graph) v"2.2.0" end """ - MPI_Comm_idup_with_info(comm, info, newcomm, request) + MPI_Dist_graph_create_adjacent(comm_old, indegree, sources, sourceweights, outdegree, destinations, destweights, info, reorder, comm_dist_graph) -$(_doc_external(:MPI_Comm_idup_with_info)) +$(_doc_external(:MPI_Dist_graph_create_adjacent)) """ -function MPI_Comm_idup_with_info(comm, info, newcomm, request) - @mpichk ccall((:MPI_Comm_idup_with_info, libmpi), Cint, (MPI_Comm, MPI_Info, Ptr{MPI_Comm}, Ptr{MPI_Request}), comm, info, newcomm, request) +function MPI_Dist_graph_create_adjacent(comm_old, indegree, sources, sourceweights, outdegree, destinations, destweights, info, reorder, comm_dist_graph) + @mpichk ccall((:MPI_Dist_graph_create_adjacent, libmpi), Cint, (MPI_Comm, Cint, Ptr{Cint}, Ptr{Cint}, Cint, Ptr{Cint}, Ptr{Cint}, MPI_Info, Cint, Ptr{MPI_Comm}), comm_old, indegree, sources, sourceweights, outdegree, destinations, destweights, info, reorder, comm_dist_graph) v"2.2.0" end """ - MPI_Comm_rank(comm, rank) + MPI_Dist_graph_neighbors(comm, maxindegree, sources, sourceweights, maxoutdegree, destinations, destweights) -$(_doc_external(:MPI_Comm_rank)) +$(_doc_external(:MPI_Dist_graph_neighbors)) """ -function MPI_Comm_rank(comm, rank) - @mpichk ccall((:MPI_Comm_rank, libmpi), Cint, (MPI_Comm, Ptr{Cint}), comm, rank) +function MPI_Dist_graph_neighbors(comm, maxindegree, sources, sourceweights, maxoutdegree, destinations, destweights) + @mpichk ccall((:MPI_Dist_graph_neighbors, libmpi), Cint, (MPI_Comm, Cint, Ptr{Cint}, Ptr{Cint}, Cint, Ptr{Cint}, Ptr{Cint}), comm, maxindegree, sources, sourceweights, maxoutdegree, destinations, destweights) v"2.2.0" end """ - MPI_Comm_remote_group(comm, group) + MPI_Dist_graph_neighbors_count(comm, indegree, outdegree, weighted) -$(_doc_external(:MPI_Comm_remote_group)) +$(_doc_external(:MPI_Dist_graph_neighbors_count)) """ -function MPI_Comm_remote_group(comm, group) - @mpichk ccall((:MPI_Comm_remote_group, libmpi), Cint, (MPI_Comm, Ptr{MPI_Group}), comm, group) +function MPI_Dist_graph_neighbors_count(comm, indegree, outdegree, weighted) + @mpichk ccall((:MPI_Dist_graph_neighbors_count, libmpi), Cint, (MPI_Comm, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}), comm, indegree, outdegree, weighted) v"2.2.0" end """ - MPI_Comm_remote_size(comm, size) + MPI_Errhandler_create(comm_errhandler_fn, errhandler) -$(_doc_external(:MPI_Comm_remote_size)) +$(_doc_external(:MPI_Errhandler_create)) """ -function MPI_Comm_remote_size(comm, size) - @mpichk ccall((:MPI_Comm_remote_size, libmpi), Cint, (MPI_Comm, Ptr{Cint}), comm, size) +function MPI_Errhandler_create(comm_errhandler_fn, errhandler) + @mpichk ccall((:MPI_Errhandler_create, libmpi), Cint, (Ptr{MPI_Comm_errhandler_function}, Ptr{MPI_Errhandler}), comm_errhandler_fn, errhandler) end """ - MPI_Comm_set_info(comm, info) + MPI_Errhandler_free(errhandler) -$(_doc_external(:MPI_Comm_set_info)) +$(_doc_external(:MPI_Errhandler_free)) """ -function MPI_Comm_set_info(comm, info) - @mpichk ccall((:MPI_Comm_set_info, libmpi), Cint, (MPI_Comm, MPI_Info), comm, info) +function MPI_Errhandler_free(errhandler) + @mpichk ccall((:MPI_Errhandler_free, libmpi), Cint, (Ptr{MPI_Errhandler},), errhandler) end """ - MPI_Comm_set_name(comm, comm_name) + MPI_Errhandler_fromint(errhandler) -$(_doc_external(:MPI_Comm_set_name)) +$(_doc_external(:MPI_Errhandler_fromint)) """ -function MPI_Comm_set_name(comm, comm_name) - @mpichk ccall((:MPI_Comm_set_name, libmpi), Cint, (MPI_Comm, Ptr{Cchar}), comm, comm_name) +function MPI_Errhandler_fromint(errhandler) + @mpichk ccall((:MPI_Errhandler_fromint, libmpi), MPI_Errhandler, (Cint,), errhandler) end """ - MPI_Comm_size(comm, size) + MPI_Errhandler_get(comm, errhandler) -$(_doc_external(:MPI_Comm_size)) +$(_doc_external(:MPI_Errhandler_get)) """ -function MPI_Comm_size(comm, size) - @mpichk ccall((:MPI_Comm_size, libmpi), Cint, (MPI_Comm, Ptr{Cint}), comm, size) +function MPI_Errhandler_get(comm, errhandler) + @mpichk ccall((:MPI_Errhandler_get, libmpi), Cint, (MPI_Comm, Ptr{MPI_Errhandler}), comm, errhandler) end """ - MPI_Comm_split(comm, color, key, newcomm) + MPI_Errhandler_set(comm, errhandler) -$(_doc_external(:MPI_Comm_split)) +$(_doc_external(:MPI_Errhandler_set)) """ -function MPI_Comm_split(comm, color, key, newcomm) - @mpichk ccall((:MPI_Comm_split, libmpi), Cint, (MPI_Comm, Cint, Cint, Ptr{MPI_Comm}), comm, color, key, newcomm) +function MPI_Errhandler_set(comm, errhandler) + @mpichk ccall((:MPI_Errhandler_set, libmpi), Cint, (MPI_Comm, MPI_Errhandler), comm, errhandler) end """ - MPI_Comm_split_type(comm, split_type, key, info, newcomm) + MPI_Errhandler_toint(errhandler) -$(_doc_external(:MPI_Comm_split_type)) +$(_doc_external(:MPI_Errhandler_toint)) """ -function MPI_Comm_split_type(comm, split_type, key, info, newcomm) - @mpichk ccall((:MPI_Comm_split_type, libmpi), Cint, (MPI_Comm, Cint, Cint, MPI_Info, Ptr{MPI_Comm}), comm, split_type, key, info, newcomm) +function MPI_Errhandler_toint(errhandler) + @mpichk ccall((:MPI_Errhandler_toint, libmpi), Cint, (MPI_Errhandler,), errhandler) end """ - MPI_Comm_test_inter(comm, flag) + MPI_Error_class(errorcode, errorclass) -$(_doc_external(:MPI_Comm_test_inter)) +$(_doc_external(:MPI_Error_class)) """ -function MPI_Comm_test_inter(comm, flag) - @mpichk ccall((:MPI_Comm_test_inter, libmpi), Cint, (MPI_Comm, Ptr{Cint}), comm, flag) +function MPI_Error_class(errorcode, errorclass) + @mpichk ccall((:MPI_Error_class, libmpi), Cint, (Cint, Ptr{Cint}), errorcode, errorclass) end """ - MPI_Intercomm_create(local_comm, local_leader, peer_comm, remote_leader, tag, newintercomm) + MPI_Error_string(errorcode, string, resultlen) -$(_doc_external(:MPI_Intercomm_create)) +$(_doc_external(:MPI_Error_string)) """ -function MPI_Intercomm_create(local_comm, local_leader, peer_comm, remote_leader, tag, newintercomm) - @mpichk ccall((:MPI_Intercomm_create, libmpi), Cint, (MPI_Comm, Cint, MPI_Comm, Cint, Cint, Ptr{MPI_Comm}), local_comm, local_leader, peer_comm, remote_leader, tag, newintercomm) +function MPI_Error_string(errorcode, string, resultlen) + @mpichk ccall((:MPI_Error_string, libmpi), Cint, (Cint, Ptr{Cchar}, Ptr{Cint}), errorcode, string, resultlen) end """ - MPI_Intercomm_create_from_groups(local_group, local_leader, remote_group, remote_leader, stringtag, info, errhandler, newintercomm) + MPI_Exscan(sendbuf, recvbuf, count, datatype, op, comm) -$(_doc_external(:MPI_Intercomm_create_from_groups)) +$(_doc_external(:MPI_Exscan)) """ -function MPI_Intercomm_create_from_groups(local_group, local_leader, remote_group, remote_leader, stringtag, info, errhandler, newintercomm) - @mpichk ccall((:MPI_Intercomm_create_from_groups, libmpi), Cint, (MPI_Group, Cint, MPI_Group, Cint, Ptr{Cchar}, MPI_Info, MPI_Errhandler, Ptr{MPI_Comm}), local_group, local_leader, remote_group, remote_leader, stringtag, info, errhandler, newintercomm) +function MPI_Exscan(sendbuf, recvbuf, count, datatype, op, comm) + @mpichk ccall((:MPI_Exscan, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, count, datatype, op, comm) end """ - MPI_Intercomm_merge(intercomm, high, newintracomm) + MPI_Exscan_c(sendbuf, recvbuf, count, datatype, op, comm) -$(_doc_external(:MPI_Intercomm_merge)) +$(_doc_external(:MPI_Exscan_c)) """ -function MPI_Intercomm_merge(intercomm, high, newintracomm) - @mpichk ccall((:MPI_Intercomm_merge, libmpi), Cint, (MPI_Comm, Cint, Ptr{MPI_Comm}), intercomm, high, newintracomm) +function MPI_Exscan_c(sendbuf, recvbuf, count, datatype, op, comm) + @mpichk ccall((:MPI_Exscan_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, count, datatype, op, comm) end """ - MPI_Get_address(location, address) + MPI_Exscan_init(sendbuf, recvbuf, count, datatype, op, comm, info, request) -$(_doc_external(:MPI_Get_address)) +$(_doc_external(:MPI_Exscan_init)) """ -function MPI_Get_address(location, address) - @mpichk ccall((:MPI_Get_address, libmpi), Cint, (MPIPtr, Ptr{MPI_Aint}), location, address) +function MPI_Exscan_init(sendbuf, recvbuf, count, datatype, op, comm, info, request) + @mpichk ccall((:MPI_Exscan_init, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, info, request) end """ - MPI_Address(location, address) + MPI_Exscan_init_c(sendbuf, recvbuf, count, datatype, op, comm, info, request) -$(_doc_external(:MPI_Address)) +$(_doc_external(:MPI_Exscan_init_c)) """ -function MPI_Address(location, address) - @mpichk ccall((:MPI_Address, libmpi), Cint, (MPIPtr, Ptr{MPI_Aint}), location, address) +function MPI_Exscan_init_c(sendbuf, recvbuf, count, datatype, op, comm, info, request) + @mpichk ccall((:MPI_Exscan_init_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, info, request) end """ - MPI_Get_count(status, datatype, count) + MPI_Fetch_and_op(origin_addr, result_addr, datatype, target_rank, target_disp, op, win) -$(_doc_external(:MPI_Get_count)) +$(_doc_external(:MPI_Fetch_and_op)) """ -function MPI_Get_count(status, datatype, count) - @mpichk ccall((:MPI_Get_count, libmpi), Cint, (Ptr{MPI_Status}, MPI_Datatype, Ptr{Cint}), status, datatype, count) +function MPI_Fetch_and_op(origin_addr, result_addr, datatype, target_rank, target_disp, op, win) + @mpichk ccall((:MPI_Fetch_and_op, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Datatype, Cint, MPI_Aint, MPI_Op, MPI_Win), origin_addr, result_addr, datatype, target_rank, target_disp, op, win) end """ - MPI_Get_elements(status, datatype, count) + MPI_File_c2f(file) -$(_doc_external(:MPI_Get_elements)) +$(_doc_external(:MPI_File_c2f)) """ -function MPI_Get_elements(status, datatype, count) - @mpichk ccall((:MPI_Get_elements, libmpi), Cint, (Ptr{MPI_Status}, MPI_Datatype, Ptr{Cint}), status, datatype, count) +function MPI_File_c2f(file) + @mpichk ccall((:MPI_File_c2f, libmpi), MPI_Fint, (MPI_File,), file) end """ - MPI_Get_elements_x(status, datatype, count) + MPI_File_call_errhandler(fh, errorcode) -$(_doc_external(:MPI_Get_elements_x)) +$(_doc_external(:MPI_File_call_errhandler)) """ -function MPI_Get_elements_x(status, datatype, count) - @mpichk ccall((:MPI_Get_elements_x, libmpi), Cint, (Ptr{MPI_Status}, MPI_Datatype, Ptr{MPI_Count}), status, datatype, count) +function MPI_File_call_errhandler(fh, errorcode) + @mpichk ccall((:MPI_File_call_errhandler, libmpi), Cint, (MPI_File, Cint), fh, errorcode) end """ - MPI_Pack(inbuf, incount, datatype, outbuf, outsize, position, comm) + MPI_File_close(fh) -$(_doc_external(:MPI_Pack)) +$(_doc_external(:MPI_File_close)) """ -function MPI_Pack(inbuf, incount, datatype, outbuf, outsize, position, comm) - @mpichk ccall((:MPI_Pack, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, Ptr{Cint}, MPI_Comm), inbuf, incount, datatype, outbuf, outsize, position, comm) +function MPI_File_close(fh) + @mpichk ccall((:MPI_File_close, libmpi), Cint, (Ptr{MPI_File},), fh) end """ - MPI_Pack_external(datarep, inbuf, incount, datatype, outbuf, outsize, position) + MPI_File_create_errhandler(file_errhandler_fn, errhandler) -$(_doc_external(:MPI_Pack_external)) +$(_doc_external(:MPI_File_create_errhandler)) """ -function MPI_Pack_external(datarep, inbuf, incount, datatype, outbuf, outsize, position) - @mpichk ccall((:MPI_Pack_external, libmpi), Cint, (Ptr{Cchar}, MPIPtr, Cint, MPI_Datatype, MPIPtr, MPI_Aint, Ptr{MPI_Aint}), datarep, inbuf, incount, datatype, outbuf, outsize, position) +function MPI_File_create_errhandler(file_errhandler_fn, errhandler) + @mpichk ccall((:MPI_File_create_errhandler, libmpi), Cint, (Ptr{MPI_File_errhandler_function}, Ptr{MPI_Errhandler}), file_errhandler_fn, errhandler) end """ - MPI_Pack_external_size(datarep, incount, datatype, size) + MPI_File_delete(filename, info) -$(_doc_external(:MPI_Pack_external_size)) +$(_doc_external(:MPI_File_delete)) """ -function MPI_Pack_external_size(datarep, incount, datatype, size) - @mpichk ccall((:MPI_Pack_external_size, libmpi), Cint, (Ptr{Cchar}, Cint, MPI_Datatype, Ptr{MPI_Aint}), datarep, incount, datatype, size) +function MPI_File_delete(filename, info) + @mpichk ccall((:MPI_File_delete, libmpi), Cint, (Ptr{Cchar}, MPI_Info), filename, info) end """ - MPI_Pack_size(incount, datatype, comm, size) + MPI_File_f2c(file) -$(_doc_external(:MPI_Pack_size)) +$(_doc_external(:MPI_File_f2c)) """ -function MPI_Pack_size(incount, datatype, comm, size) - @mpichk ccall((:MPI_Pack_size, libmpi), Cint, (Cint, MPI_Datatype, MPI_Comm, Ptr{Cint}), incount, datatype, comm, size) +function MPI_File_f2c(file) + @mpichk ccall((:MPI_File_f2c, libmpi), MPI_File, (MPI_Fint,), file) end """ - MPI_Status_set_elements(status, datatype, count) + MPI_File_fromint(file) -$(_doc_external(:MPI_Status_set_elements)) +$(_doc_external(:MPI_File_fromint)) """ -function MPI_Status_set_elements(status, datatype, count) - @mpichk ccall((:MPI_Status_set_elements, libmpi), Cint, (Ptr{MPI_Status}, MPI_Datatype, Cint), status, datatype, count) +function MPI_File_fromint(file) + @mpichk ccall((:MPI_File_fromint, libmpi), MPI_File, (Cint,), file) end """ - MPI_Status_set_elements_x(status, datatype, count) + MPI_File_get_amode(fh, amode) -$(_doc_external(:MPI_Status_set_elements_x)) +$(_doc_external(:MPI_File_get_amode)) """ -function MPI_Status_set_elements_x(status, datatype, count) - @mpichk ccall((:MPI_Status_set_elements_x, libmpi), Cint, (Ptr{MPI_Status}, MPI_Datatype, MPI_Count), status, datatype, count) +function MPI_File_get_amode(fh, amode) + @mpichk ccall((:MPI_File_get_amode, libmpi), Cint, (MPI_File, Ptr{Cint}), fh, amode) end """ - MPI_Type_commit(datatype) + MPI_File_get_atomicity(fh, flag) -$(_doc_external(:MPI_Type_commit)) +$(_doc_external(:MPI_File_get_atomicity)) """ -function MPI_Type_commit(datatype) - @mpichk ccall((:MPI_Type_commit, libmpi), Cint, (Ptr{MPI_Datatype},), datatype) +function MPI_File_get_atomicity(fh, flag) + @mpichk ccall((:MPI_File_get_atomicity, libmpi), Cint, (MPI_File, Ptr{Cint}), fh, flag) end """ - MPI_Type_contiguous(count, oldtype, newtype) + MPI_File_get_byte_offset(fh, offset, disp) -$(_doc_external(:MPI_Type_contiguous)) +$(_doc_external(:MPI_File_get_byte_offset)) """ -function MPI_Type_contiguous(count, oldtype, newtype) - @mpichk ccall((:MPI_Type_contiguous, libmpi), Cint, (Cint, MPI_Datatype, Ptr{MPI_Datatype}), count, oldtype, newtype) +function MPI_File_get_byte_offset(fh, offset, disp) + @mpichk ccall((:MPI_File_get_byte_offset, libmpi), Cint, (MPI_File, MPI_Offset, Ptr{MPI_Offset}), fh, offset, disp) end """ - MPI_Type_create_darray(size, rank, ndims, array_of_gsizes, array_of_distribs, array_of_dargs, array_of_psizes, order, oldtype, newtype) + MPI_File_get_errhandler(file, errhandler) -$(_doc_external(:MPI_Type_create_darray)) +$(_doc_external(:MPI_File_get_errhandler)) """ -function MPI_Type_create_darray(size, rank, ndims, array_of_gsizes, array_of_distribs, array_of_dargs, array_of_psizes, order, oldtype, newtype) - @mpichk ccall((:MPI_Type_create_darray, libmpi), Cint, (Cint, Cint, Cint, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}, Cint, MPI_Datatype, Ptr{MPI_Datatype}), size, rank, ndims, array_of_gsizes, array_of_distribs, array_of_dargs, array_of_psizes, order, oldtype, newtype) +function MPI_File_get_errhandler(file, errhandler) + @mpichk ccall((:MPI_File_get_errhandler, libmpi), Cint, (MPI_File, Ptr{MPI_Errhandler}), file, errhandler) end """ - MPI_Type_create_f90_complex(p, r, newtype) + MPI_File_get_group(fh, group) -$(_doc_external(:MPI_Type_create_f90_complex)) +$(_doc_external(:MPI_File_get_group)) """ -function MPI_Type_create_f90_complex(p, r, newtype) - @mpichk ccall((:MPI_Type_create_f90_complex, libmpi), Cint, (Cint, Cint, Ptr{MPI_Datatype}), p, r, newtype) +function MPI_File_get_group(fh, group) + @mpichk ccall((:MPI_File_get_group, libmpi), Cint, (MPI_File, Ptr{MPI_Group}), fh, group) end """ - MPI_Type_create_f90_integer(r, newtype) + MPI_File_get_info(fh, info_used) -$(_doc_external(:MPI_Type_create_f90_integer)) +$(_doc_external(:MPI_File_get_info)) """ -function MPI_Type_create_f90_integer(r, newtype) - @mpichk ccall((:MPI_Type_create_f90_integer, libmpi), Cint, (Cint, Ptr{MPI_Datatype}), r, newtype) +function MPI_File_get_info(fh, info_used) + @mpichk ccall((:MPI_File_get_info, libmpi), Cint, (MPI_File, Ptr{MPI_Info}), fh, info_used) end """ - MPI_Type_create_f90_real(p, r, newtype) + MPI_File_get_position(fh, offset) -$(_doc_external(:MPI_Type_create_f90_real)) +$(_doc_external(:MPI_File_get_position)) """ -function MPI_Type_create_f90_real(p, r, newtype) - @mpichk ccall((:MPI_Type_create_f90_real, libmpi), Cint, (Cint, Cint, Ptr{MPI_Datatype}), p, r, newtype) +function MPI_File_get_position(fh, offset) + @mpichk ccall((:MPI_File_get_position, libmpi), Cint, (MPI_File, Ptr{MPI_Offset}), fh, offset) end """ - MPI_Type_create_hindexed(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) + MPI_File_get_position_shared(fh, offset) -$(_doc_external(:MPI_Type_create_hindexed)) +$(_doc_external(:MPI_File_get_position_shared)) """ -function MPI_Type_create_hindexed(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) - @mpichk ccall((:MPI_Type_create_hindexed, libmpi), Cint, (Cint, Ptr{Cint}, Ptr{MPI_Aint}, MPI_Datatype, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, oldtype, newtype) +function MPI_File_get_position_shared(fh, offset) + @mpichk ccall((:MPI_File_get_position_shared, libmpi), Cint, (MPI_File, Ptr{MPI_Offset}), fh, offset) end """ - MPI_Type_hindexed(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) + MPI_File_get_size(fh, size) -$(_doc_external(:MPI_Type_hindexed)) +$(_doc_external(:MPI_File_get_size)) """ -function MPI_Type_hindexed(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) - @mpichk ccall((:MPI_Type_hindexed, libmpi), Cint, (Cint, Ptr{Cint}, Ptr{MPI_Aint}, MPI_Datatype, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, oldtype, newtype) +function MPI_File_get_size(fh, size) + @mpichk ccall((:MPI_File_get_size, libmpi), Cint, (MPI_File, Ptr{MPI_Offset}), fh, size) end """ - MPI_Type_create_hindexed_block(count, blocklength, array_of_displacements, oldtype, newtype) + MPI_File_get_type_extent(fh, datatype, extent) -$(_doc_external(:MPI_Type_create_hindexed_block)) +$(_doc_external(:MPI_File_get_type_extent)) """ -function MPI_Type_create_hindexed_block(count, blocklength, array_of_displacements, oldtype, newtype) - @mpichk ccall((:MPI_Type_create_hindexed_block, libmpi), Cint, (Cint, Cint, Ptr{MPI_Aint}, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, array_of_displacements, oldtype, newtype) +function MPI_File_get_type_extent(fh, datatype, extent) + @mpichk ccall((:MPI_File_get_type_extent, libmpi), Cint, (MPI_File, MPI_Datatype, Ptr{MPI_Aint}), fh, datatype, extent) end """ - MPI_Type_create_hvector(count, blocklength, stride, oldtype, newtype) + MPI_File_get_type_extent_c(fh, datatype, extent) -$(_doc_external(:MPI_Type_create_hvector)) +$(_doc_external(:MPI_File_get_type_extent_c)) """ -function MPI_Type_create_hvector(count, blocklength, stride, oldtype, newtype) - @mpichk ccall((:MPI_Type_create_hvector, libmpi), Cint, (Cint, Cint, MPI_Aint, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, stride, oldtype, newtype) +function MPI_File_get_type_extent_c(fh, datatype, extent) + @mpichk ccall((:MPI_File_get_type_extent_c, libmpi), Cint, (MPI_File, MPI_Datatype, Ptr{MPI_Count}), fh, datatype, extent) end """ - MPI_Type_hvector(count, blocklength, stride, oldtype, newtype) + MPI_File_get_view(fh, disp, etype, filetype, datarep) -$(_doc_external(:MPI_Type_hvector)) +$(_doc_external(:MPI_File_get_view)) """ -function MPI_Type_hvector(count, blocklength, stride, oldtype, newtype) - @mpichk ccall((:MPI_Type_hvector, libmpi), Cint, (Cint, Cint, MPI_Aint, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, stride, oldtype, newtype) +function MPI_File_get_view(fh, disp, etype, filetype, datarep) + @mpichk ccall((:MPI_File_get_view, libmpi), Cint, (MPI_File, Ptr{MPI_Offset}, Ptr{MPI_Datatype}, Ptr{MPI_Datatype}, Ptr{Cchar}), fh, disp, etype, filetype, datarep) end """ - MPI_Type_create_indexed_block(count, blocklength, array_of_displacements, oldtype, newtype) + MPI_File_iread(fh, buf, count, datatype, request) -$(_doc_external(:MPI_Type_create_indexed_block)) +$(_doc_external(:MPI_File_iread)) """ -function MPI_Type_create_indexed_block(count, blocklength, array_of_displacements, oldtype, newtype) - @mpichk ccall((:MPI_Type_create_indexed_block, libmpi), Cint, (Cint, Cint, Ptr{Cint}, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, array_of_displacements, oldtype, newtype) +function MPI_File_iread(fh, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iread, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) end """ - MPI_Type_create_resized(oldtype, lb, extent, newtype) + MPI_File_iread_all(fh, buf, count, datatype, request) -$(_doc_external(:MPI_Type_create_resized)) +$(_doc_external(:MPI_File_iread_all)) """ -function MPI_Type_create_resized(oldtype, lb, extent, newtype) - @mpichk ccall((:MPI_Type_create_resized, libmpi), Cint, (MPI_Datatype, MPI_Aint, MPI_Aint, Ptr{MPI_Datatype}), oldtype, lb, extent, newtype) +function MPI_File_iread_all(fh, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iread_all, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) end """ - MPI_Type_create_struct(count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) + MPI_File_iread_all_c(fh, buf, count, datatype, request) -$(_doc_external(:MPI_Type_create_struct)) +$(_doc_external(:MPI_File_iread_all_c)) """ -function MPI_Type_create_struct(count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) - @mpichk ccall((:MPI_Type_create_struct, libmpi), Cint, (Cint, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) +function MPI_File_iread_all_c(fh, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iread_all_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) end """ - MPI_Type_struct(count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) + MPI_File_iread_at(fh, offset, buf, count, datatype, request) -$(_doc_external(:MPI_Type_struct)) +$(_doc_external(:MPI_File_iread_at)) """ -function MPI_Type_struct(count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) - @mpichk ccall((:MPI_Type_struct, libmpi), Cint, (Cint, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) +function MPI_File_iread_at(fh, offset, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iread_at, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) end """ - MPI_Type_create_subarray(ndims, array_of_sizes, array_of_subsizes, array_of_starts, order, oldtype, newtype) + MPI_File_iread_at_all(fh, offset, buf, count, datatype, request) -$(_doc_external(:MPI_Type_create_subarray)) +$(_doc_external(:MPI_File_iread_at_all)) """ -function MPI_Type_create_subarray(ndims, array_of_sizes, array_of_subsizes, array_of_starts, order, oldtype, newtype) - @mpichk ccall((:MPI_Type_create_subarray, libmpi), Cint, (Cint, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}, Cint, MPI_Datatype, Ptr{MPI_Datatype}), ndims, array_of_sizes, array_of_subsizes, array_of_starts, order, oldtype, newtype) +function MPI_File_iread_at_all(fh, offset, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iread_at_all, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) end """ - MPI_Type_dup(oldtype, newtype) + MPI_File_iread_at_all_c(fh, offset, buf, count, datatype, request) -$(_doc_external(:MPI_Type_dup)) +$(_doc_external(:MPI_File_iread_at_all_c)) """ -function MPI_Type_dup(oldtype, newtype) - @mpichk ccall((:MPI_Type_dup, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Datatype}), oldtype, newtype) +function MPI_File_iread_at_all_c(fh, offset, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iread_at_all_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) end """ - MPI_Type_free(datatype) + MPI_File_iread_at_c(fh, offset, buf, count, datatype, request) -$(_doc_external(:MPI_Type_free)) +$(_doc_external(:MPI_File_iread_at_c)) """ -function MPI_Type_free(datatype) - @mpichk ccall((:MPI_Type_free, libmpi), Cint, (Ptr{MPI_Datatype},), datatype) +function MPI_File_iread_at_c(fh, offset, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iread_at_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) end """ - MPI_Type_get_contents(datatype, max_integers, max_addresses, max_datatypes, array_of_integers, array_of_addresses, array_of_datatypes) + MPI_File_iread_c(fh, buf, count, datatype, request) -$(_doc_external(:MPI_Type_get_contents)) +$(_doc_external(:MPI_File_iread_c)) """ -function MPI_Type_get_contents(datatype, max_integers, max_addresses, max_datatypes, array_of_integers, array_of_addresses, array_of_datatypes) - @mpichk ccall((:MPI_Type_get_contents, libmpi), Cint, (MPI_Datatype, Cint, Cint, Cint, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}), datatype, max_integers, max_addresses, max_datatypes, array_of_integers, array_of_addresses, array_of_datatypes) +function MPI_File_iread_c(fh, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iread_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) end """ - MPI_Type_get_envelope(datatype, num_integers, num_addresses, num_datatypes, combiner) + MPI_File_iread_shared(fh, buf, count, datatype, request) -$(_doc_external(:MPI_Type_get_envelope)) +$(_doc_external(:MPI_File_iread_shared)) """ -function MPI_Type_get_envelope(datatype, num_integers, num_addresses, num_datatypes, combiner) - @mpichk ccall((:MPI_Type_get_envelope, libmpi), Cint, (MPI_Datatype, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}), datatype, num_integers, num_addresses, num_datatypes, combiner) +function MPI_File_iread_shared(fh, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iread_shared, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) end """ - MPI_Type_get_extent(datatype, lb, extent) + MPI_File_iread_shared_c(fh, buf, count, datatype, request) -$(_doc_external(:MPI_Type_get_extent)) +$(_doc_external(:MPI_File_iread_shared_c)) """ -function MPI_Type_get_extent(datatype, lb, extent) - @mpichk ccall((:MPI_Type_get_extent, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Aint}, Ptr{MPI_Aint}), datatype, lb, extent) +function MPI_File_iread_shared_c(fh, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iread_shared_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) end """ - MPI_Type_get_extent_x(datatype, lb, extent) + MPI_File_iwrite(fh, buf, count, datatype, request) -$(_doc_external(:MPI_Type_get_extent_x)) +$(_doc_external(:MPI_File_iwrite)) """ -function MPI_Type_get_extent_x(datatype, lb, extent) - @mpichk ccall((:MPI_Type_get_extent_x, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Count}, Ptr{MPI_Count}), datatype, lb, extent) +function MPI_File_iwrite(fh, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iwrite, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) end """ - MPI_Type_get_name(datatype, type_name, resultlen) + MPI_File_iwrite_all(fh, buf, count, datatype, request) -$(_doc_external(:MPI_Type_get_name)) +$(_doc_external(:MPI_File_iwrite_all)) """ -function MPI_Type_get_name(datatype, type_name, resultlen) - @mpichk ccall((:MPI_Type_get_name, libmpi), Cint, (MPI_Datatype, Ptr{Cchar}, Ptr{Cint}), datatype, type_name, resultlen) +function MPI_File_iwrite_all(fh, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iwrite_all, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) end """ - MPI_Type_get_true_extent(datatype, true_lb, true_extent) + MPI_File_iwrite_all_c(fh, buf, count, datatype, request) -$(_doc_external(:MPI_Type_get_true_extent)) +$(_doc_external(:MPI_File_iwrite_all_c)) """ -function MPI_Type_get_true_extent(datatype, true_lb, true_extent) - @mpichk ccall((:MPI_Type_get_true_extent, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Aint}, Ptr{MPI_Aint}), datatype, true_lb, true_extent) +function MPI_File_iwrite_all_c(fh, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iwrite_all_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) end """ - MPI_Type_get_true_extent_x(datatype, true_lb, true_extent) + MPI_File_iwrite_at(fh, offset, buf, count, datatype, request) -$(_doc_external(:MPI_Type_get_true_extent_x)) +$(_doc_external(:MPI_File_iwrite_at)) """ -function MPI_Type_get_true_extent_x(datatype, true_lb, true_extent) - @mpichk ccall((:MPI_Type_get_true_extent_x, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Count}, Ptr{MPI_Count}), datatype, true_lb, true_extent) +function MPI_File_iwrite_at(fh, offset, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iwrite_at, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) end """ - MPI_Type_get_value_index(value_type, index_type, pair_type) + MPI_File_iwrite_at_all(fh, offset, buf, count, datatype, request) -$(_doc_external(:MPI_Type_get_value_index)) +$(_doc_external(:MPI_File_iwrite_at_all)) """ -function MPI_Type_get_value_index(value_type, index_type, pair_type) - @mpichk ccall((:MPI_Type_get_value_index, libmpi), Cint, (MPI_Datatype, MPI_Datatype, Ptr{MPI_Datatype}), value_type, index_type, pair_type) +function MPI_File_iwrite_at_all(fh, offset, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iwrite_at_all, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) end """ - MPI_Type_indexed(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) + MPI_File_iwrite_at_all_c(fh, offset, buf, count, datatype, request) -$(_doc_external(:MPI_Type_indexed)) +$(_doc_external(:MPI_File_iwrite_at_all_c)) """ -function MPI_Type_indexed(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) - @mpichk ccall((:MPI_Type_indexed, libmpi), Cint, (Cint, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, oldtype, newtype) +function MPI_File_iwrite_at_all_c(fh, offset, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iwrite_at_all_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) end """ - MPI_Type_match_size(typeclass, size, datatype) + MPI_File_iwrite_at_c(fh, offset, buf, count, datatype, request) -$(_doc_external(:MPI_Type_match_size)) +$(_doc_external(:MPI_File_iwrite_at_c)) """ -function MPI_Type_match_size(typeclass, size, datatype) - @mpichk ccall((:MPI_Type_match_size, libmpi), Cint, (Cint, Cint, Ptr{MPI_Datatype}), typeclass, size, datatype) +function MPI_File_iwrite_at_c(fh, offset, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iwrite_at_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) end """ - MPI_Type_set_name(datatype, type_name) + MPI_File_iwrite_c(fh, buf, count, datatype, request) -$(_doc_external(:MPI_Type_set_name)) +$(_doc_external(:MPI_File_iwrite_c)) """ -function MPI_Type_set_name(datatype, type_name) - @mpichk ccall((:MPI_Type_set_name, libmpi), Cint, (MPI_Datatype, Ptr{Cchar}), datatype, type_name) +function MPI_File_iwrite_c(fh, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iwrite_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) end """ - MPI_Type_size(datatype, size) + MPI_File_iwrite_shared(fh, buf, count, datatype, request) -$(_doc_external(:MPI_Type_size)) +$(_doc_external(:MPI_File_iwrite_shared)) """ -function MPI_Type_size(datatype, size) - @mpichk ccall((:MPI_Type_size, libmpi), Cint, (MPI_Datatype, Ptr{Cint}), datatype, size) +function MPI_File_iwrite_shared(fh, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iwrite_shared, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) end """ - MPI_Type_size_x(datatype, size) + MPI_File_iwrite_shared_c(fh, buf, count, datatype, request) -$(_doc_external(:MPI_Type_size_x)) +$(_doc_external(:MPI_File_iwrite_shared_c)) """ -function MPI_Type_size_x(datatype, size) - @mpichk ccall((:MPI_Type_size_x, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Count}), datatype, size) +function MPI_File_iwrite_shared_c(fh, buf, count, datatype, request) + @mpichk ccall((:MPI_File_iwrite_shared_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) end """ - MPI_Type_vector(count, blocklength, stride, oldtype, newtype) + MPI_File_open(comm, filename, amode, info, fh) -$(_doc_external(:MPI_Type_vector)) +$(_doc_external(:MPI_File_open)) """ -function MPI_Type_vector(count, blocklength, stride, oldtype, newtype) - @mpichk ccall((:MPI_Type_vector, libmpi), Cint, (Cint, Cint, Cint, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, stride, oldtype, newtype) +function MPI_File_open(comm, filename, amode, info, fh) + @mpichk ccall((:MPI_File_open, libmpi), Cint, (MPI_Comm, Ptr{Cchar}, Cint, MPI_Info, Ptr{MPI_File}), comm, filename, amode, info, fh) end """ - MPI_Unpack(inbuf, insize, position, outbuf, outcount, datatype, comm) + MPI_File_preallocate(fh, size) -$(_doc_external(:MPI_Unpack)) +$(_doc_external(:MPI_File_preallocate)) """ -function MPI_Unpack(inbuf, insize, position, outbuf, outcount, datatype, comm) - @mpichk ccall((:MPI_Unpack, libmpi), Cint, (MPIPtr, Cint, Ptr{Cint}, MPIPtr, Cint, MPI_Datatype, MPI_Comm), inbuf, insize, position, outbuf, outcount, datatype, comm) +function MPI_File_preallocate(fh, size) + @mpichk ccall((:MPI_File_preallocate, libmpi), Cint, (MPI_File, MPI_Offset), fh, size) end """ - MPI_Unpack_external(datarep, inbuf, insize, position, outbuf, outcount, datatype) + MPI_File_read(fh, buf, count, datatype, status) -$(_doc_external(:MPI_Unpack_external)) +$(_doc_external(:MPI_File_read)) """ -function MPI_Unpack_external(datarep, inbuf, insize, position, outbuf, outcount, datatype) - @mpichk ccall((:MPI_Unpack_external, libmpi), Cint, (Ptr{Cchar}, MPIPtr, MPI_Aint, Ptr{MPI_Aint}, MPIPtr, Cint, MPI_Datatype), datarep, inbuf, insize, position, outbuf, outcount, datatype) +function MPI_File_read(fh, buf, count, datatype, status) + @mpichk ccall((:MPI_File_read, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) end """ - MPI_Type_extent(datatype, extent) + MPI_File_read_all(fh, buf, count, datatype, status) -$(_doc_external(:MPI_Type_extent)) +$(_doc_external(:MPI_File_read_all)) """ -function MPI_Type_extent(datatype, extent) - @mpichk ccall((:MPI_Type_extent, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Aint}), datatype, extent) +function MPI_File_read_all(fh, buf, count, datatype, status) + @mpichk ccall((:MPI_File_read_all, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) end """ - MPI_Type_lb(datatype, displacement) + MPI_File_read_all_begin(fh, buf, count, datatype) -$(_doc_external(:MPI_Type_lb)) +$(_doc_external(:MPI_File_read_all_begin)) """ -function MPI_Type_lb(datatype, displacement) - @mpichk ccall((:MPI_Type_lb, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Aint}), datatype, displacement) +function MPI_File_read_all_begin(fh, buf, count, datatype) + @mpichk ccall((:MPI_File_read_all_begin, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype), fh, buf, count, datatype) end """ - MPI_Type_ub(datatype, displacement) + MPI_File_read_all_begin_c(fh, buf, count, datatype) -$(_doc_external(:MPI_Type_ub)) +$(_doc_external(:MPI_File_read_all_begin_c)) """ -function MPI_Type_ub(datatype, displacement) - @mpichk ccall((:MPI_Type_ub, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Aint}), datatype, displacement) +function MPI_File_read_all_begin_c(fh, buf, count, datatype) + @mpichk ccall((:MPI_File_read_all_begin_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype), fh, buf, count, datatype) end """ - MPI_Add_error_class(errorclass) + MPI_File_read_all_c(fh, buf, count, datatype, status) -$(_doc_external(:MPI_Add_error_class)) +$(_doc_external(:MPI_File_read_all_c)) """ -function MPI_Add_error_class(errorclass) - @mpichk ccall((:MPI_Add_error_class, libmpi), Cint, (Ptr{Cint},), errorclass) +function MPI_File_read_all_c(fh, buf, count, datatype, status) + @mpichk ccall((:MPI_File_read_all_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) end """ - MPI_Add_error_code(errorclass, errorcode) + MPI_File_read_all_end(fh, buf, status) -$(_doc_external(:MPI_Add_error_code)) +$(_doc_external(:MPI_File_read_all_end)) """ -function MPI_Add_error_code(errorclass, errorcode) - @mpichk ccall((:MPI_Add_error_code, libmpi), Cint, (Cint, Ptr{Cint}), errorclass, errorcode) +function MPI_File_read_all_end(fh, buf, status) + @mpichk ccall((:MPI_File_read_all_end, libmpi), Cint, (MPI_File, MPIPtr, Ptr{MPI_Status}), fh, buf, status) end """ - MPI_Add_error_string(errorcode, string) + MPI_File_read_at(fh, offset, buf, count, datatype, status) -$(_doc_external(:MPI_Add_error_string)) +$(_doc_external(:MPI_File_read_at)) """ -function MPI_Add_error_string(errorcode, string) - @mpichk ccall((:MPI_Add_error_string, libmpi), Cint, (Cint, Ptr{Cchar}), errorcode, string) +function MPI_File_read_at(fh, offset, buf, count, datatype, status) + @mpichk ccall((:MPI_File_read_at, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, offset, buf, count, datatype, status) end """ - MPI_Comm_call_errhandler(comm, errorcode) + MPI_File_read_at_all(fh, offset, buf, count, datatype, status) -$(_doc_external(:MPI_Comm_call_errhandler)) +$(_doc_external(:MPI_File_read_at_all)) """ -function MPI_Comm_call_errhandler(comm, errorcode) - @mpichk ccall((:MPI_Comm_call_errhandler, libmpi), Cint, (MPI_Comm, Cint), comm, errorcode) +function MPI_File_read_at_all(fh, offset, buf, count, datatype, status) + @mpichk ccall((:MPI_File_read_at_all, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, offset, buf, count, datatype, status) end """ - MPI_Comm_create_errhandler(comm_errhandler_fn, errhandler) + MPI_File_read_at_all_begin(fh, offset, buf, count, datatype) -$(_doc_external(:MPI_Comm_create_errhandler)) +$(_doc_external(:MPI_File_read_at_all_begin)) """ -function MPI_Comm_create_errhandler(comm_errhandler_fn, errhandler) - @mpichk ccall((:MPI_Comm_create_errhandler, libmpi), Cint, (Ptr{MPI_Comm_errhandler_function}, Ptr{MPI_Errhandler}), comm_errhandler_fn, errhandler) +function MPI_File_read_at_all_begin(fh, offset, buf, count, datatype) + @mpichk ccall((:MPI_File_read_at_all_begin, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype), fh, offset, buf, count, datatype) end """ - MPI_Errhandler_create(comm_errhandler_fn, errhandler) + MPI_File_read_at_all_begin_c(fh, offset, buf, count, datatype) -$(_doc_external(:MPI_Errhandler_create)) +$(_doc_external(:MPI_File_read_at_all_begin_c)) """ -function MPI_Errhandler_create(comm_errhandler_fn, errhandler) - @mpichk ccall((:MPI_Errhandler_create, libmpi), Cint, (Ptr{MPI_Comm_errhandler_function}, Ptr{MPI_Errhandler}), comm_errhandler_fn, errhandler) +function MPI_File_read_at_all_begin_c(fh, offset, buf, count, datatype) + @mpichk ccall((:MPI_File_read_at_all_begin_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype), fh, offset, buf, count, datatype) end """ - MPI_Comm_get_errhandler(comm, errhandler) + MPI_File_read_at_all_c(fh, offset, buf, count, datatype, status) -$(_doc_external(:MPI_Comm_get_errhandler)) +$(_doc_external(:MPI_File_read_at_all_c)) """ -function MPI_Comm_get_errhandler(comm, errhandler) - @mpichk ccall((:MPI_Comm_get_errhandler, libmpi), Cint, (MPI_Comm, Ptr{MPI_Errhandler}), comm, errhandler) +function MPI_File_read_at_all_c(fh, offset, buf, count, datatype, status) + @mpichk ccall((:MPI_File_read_at_all_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Status}), fh, offset, buf, count, datatype, status) end """ - MPI_Errhandler_get(comm, errhandler) + MPI_File_read_at_all_end(fh, buf, status) -$(_doc_external(:MPI_Errhandler_get)) +$(_doc_external(:MPI_File_read_at_all_end)) """ -function MPI_Errhandler_get(comm, errhandler) - @mpichk ccall((:MPI_Errhandler_get, libmpi), Cint, (MPI_Comm, Ptr{MPI_Errhandler}), comm, errhandler) +function MPI_File_read_at_all_end(fh, buf, status) + @mpichk ccall((:MPI_File_read_at_all_end, libmpi), Cint, (MPI_File, MPIPtr, Ptr{MPI_Status}), fh, buf, status) end """ - MPI_Comm_set_errhandler(comm, errhandler) + MPI_File_read_at_c(fh, offset, buf, count, datatype, status) -$(_doc_external(:MPI_Comm_set_errhandler)) +$(_doc_external(:MPI_File_read_at_c)) """ -function MPI_Comm_set_errhandler(comm, errhandler) - @mpichk ccall((:MPI_Comm_set_errhandler, libmpi), Cint, (MPI_Comm, MPI_Errhandler), comm, errhandler) +function MPI_File_read_at_c(fh, offset, buf, count, datatype, status) + @mpichk ccall((:MPI_File_read_at_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Status}), fh, offset, buf, count, datatype, status) end """ - MPI_Errhandler_set(comm, errhandler) + MPI_File_read_c(fh, buf, count, datatype, status) -$(_doc_external(:MPI_Errhandler_set)) +$(_doc_external(:MPI_File_read_c)) """ -function MPI_Errhandler_set(comm, errhandler) - @mpichk ccall((:MPI_Errhandler_set, libmpi), Cint, (MPI_Comm, MPI_Errhandler), comm, errhandler) +function MPI_File_read_c(fh, buf, count, datatype, status) + @mpichk ccall((:MPI_File_read_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) end """ - MPI_Errhandler_free(errhandler) + MPI_File_read_ordered(fh, buf, count, datatype, status) -$(_doc_external(:MPI_Errhandler_free)) +$(_doc_external(:MPI_File_read_ordered)) """ -function MPI_Errhandler_free(errhandler) - @mpichk ccall((:MPI_Errhandler_free, libmpi), Cint, (Ptr{MPI_Errhandler},), errhandler) +function MPI_File_read_ordered(fh, buf, count, datatype, status) + @mpichk ccall((:MPI_File_read_ordered, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) end """ - MPI_Error_class(errorcode, errorclass) + MPI_File_read_ordered_begin(fh, buf, count, datatype) -$(_doc_external(:MPI_Error_class)) +$(_doc_external(:MPI_File_read_ordered_begin)) """ -function MPI_Error_class(errorcode, errorclass) - @mpichk ccall((:MPI_Error_class, libmpi), Cint, (Cint, Ptr{Cint}), errorcode, errorclass) +function MPI_File_read_ordered_begin(fh, buf, count, datatype) + @mpichk ccall((:MPI_File_read_ordered_begin, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype), fh, buf, count, datatype) end """ - MPI_Error_string(errorcode, string, resultlen) + MPI_File_read_ordered_begin_c(fh, buf, count, datatype) -$(_doc_external(:MPI_Error_string)) +$(_doc_external(:MPI_File_read_ordered_begin_c)) """ -function MPI_Error_string(errorcode, string, resultlen) - @mpichk ccall((:MPI_Error_string, libmpi), Cint, (Cint, Ptr{Cchar}, Ptr{Cint}), errorcode, string, resultlen) +function MPI_File_read_ordered_begin_c(fh, buf, count, datatype) + @mpichk ccall((:MPI_File_read_ordered_begin_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype), fh, buf, count, datatype) end """ - MPI_File_call_errhandler(fh, errorcode) + MPI_File_read_ordered_c(fh, buf, count, datatype, status) -$(_doc_external(:MPI_File_call_errhandler)) +$(_doc_external(:MPI_File_read_ordered_c)) """ -function MPI_File_call_errhandler(fh, errorcode) - @mpichk ccall((:MPI_File_call_errhandler, libmpi), Cint, (MPI_File, Cint), fh, errorcode) +function MPI_File_read_ordered_c(fh, buf, count, datatype, status) + @mpichk ccall((:MPI_File_read_ordered_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) end """ - MPI_File_create_errhandler(file_errhandler_fn, errhandler) + MPI_File_read_ordered_end(fh, buf, status) -$(_doc_external(:MPI_File_create_errhandler)) +$(_doc_external(:MPI_File_read_ordered_end)) """ -function MPI_File_create_errhandler(file_errhandler_fn, errhandler) - @mpichk ccall((:MPI_File_create_errhandler, libmpi), Cint, (Ptr{MPI_File_errhandler_function}, Ptr{MPI_Errhandler}), file_errhandler_fn, errhandler) +function MPI_File_read_ordered_end(fh, buf, status) + @mpichk ccall((:MPI_File_read_ordered_end, libmpi), Cint, (MPI_File, MPIPtr, Ptr{MPI_Status}), fh, buf, status) end """ - MPI_File_get_errhandler(file, errhandler) + MPI_File_read_shared(fh, buf, count, datatype, status) -$(_doc_external(:MPI_File_get_errhandler)) +$(_doc_external(:MPI_File_read_shared)) """ -function MPI_File_get_errhandler(file, errhandler) - @mpichk ccall((:MPI_File_get_errhandler, libmpi), Cint, (MPI_File, Ptr{MPI_Errhandler}), file, errhandler) +function MPI_File_read_shared(fh, buf, count, datatype, status) + @mpichk ccall((:MPI_File_read_shared, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) end """ - MPI_File_set_errhandler(file, errhandler) + MPI_File_read_shared_c(fh, buf, count, datatype, status) -$(_doc_external(:MPI_File_set_errhandler)) +$(_doc_external(:MPI_File_read_shared_c)) """ -function MPI_File_set_errhandler(file, errhandler) - @mpichk ccall((:MPI_File_set_errhandler, libmpi), Cint, (MPI_File, MPI_Errhandler), file, errhandler) +function MPI_File_read_shared_c(fh, buf, count, datatype, status) + @mpichk ccall((:MPI_File_read_shared_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) end """ - MPI_Remove_error_class(errorclass) + MPI_File_seek(fh, offset, whence) -$(_doc_external(:MPI_Remove_error_class)) +$(_doc_external(:MPI_File_seek)) """ -function MPI_Remove_error_class(errorclass) - @mpichk ccall((:MPI_Remove_error_class, libmpi), Cint, (Cint,), errorclass) +function MPI_File_seek(fh, offset, whence) + @mpichk ccall((:MPI_File_seek, libmpi), Cint, (MPI_File, MPI_Offset, Cint), fh, offset, whence) end """ - MPI_Remove_error_code(errorcode) + MPI_File_seek_shared(fh, offset, whence) -$(_doc_external(:MPI_Remove_error_code)) +$(_doc_external(:MPI_File_seek_shared)) """ -function MPI_Remove_error_code(errorcode) - @mpichk ccall((:MPI_Remove_error_code, libmpi), Cint, (Cint,), errorcode) +function MPI_File_seek_shared(fh, offset, whence) + @mpichk ccall((:MPI_File_seek_shared, libmpi), Cint, (MPI_File, MPI_Offset, Cint), fh, offset, whence) end """ - MPI_Remove_error_string(errorcode) + MPI_File_set_atomicity(fh, flag) -$(_doc_external(:MPI_Remove_error_string)) +$(_doc_external(:MPI_File_set_atomicity)) """ -function MPI_Remove_error_string(errorcode) - @mpichk ccall((:MPI_Remove_error_string, libmpi), Cint, (Cint,), errorcode) +function MPI_File_set_atomicity(fh, flag) + @mpichk ccall((:MPI_File_set_atomicity, libmpi), Cint, (MPI_File, Cint), fh, flag) end """ - MPI_Win_call_errhandler(win, errorcode) + MPI_File_set_errhandler(file, errhandler) -$(_doc_external(:MPI_Win_call_errhandler)) +$(_doc_external(:MPI_File_set_errhandler)) """ -function MPI_Win_call_errhandler(win, errorcode) - @mpichk ccall((:MPI_Win_call_errhandler, libmpi), Cint, (MPI_Win, Cint), win, errorcode) +function MPI_File_set_errhandler(file, errhandler) + @mpichk ccall((:MPI_File_set_errhandler, libmpi), Cint, (MPI_File, MPI_Errhandler), file, errhandler) end """ - MPI_Win_create_errhandler(win_errhandler_fn, errhandler) + MPI_File_set_info(fh, info) -$(_doc_external(:MPI_Win_create_errhandler)) +$(_doc_external(:MPI_File_set_info)) """ -function MPI_Win_create_errhandler(win_errhandler_fn, errhandler) - @mpichk ccall((:MPI_Win_create_errhandler, libmpi), Cint, (Ptr{MPI_Win_errhandler_function}, Ptr{MPI_Errhandler}), win_errhandler_fn, errhandler) +function MPI_File_set_info(fh, info) + @mpichk ccall((:MPI_File_set_info, libmpi), Cint, (MPI_File, MPI_Info), fh, info) end """ - MPI_Win_get_errhandler(win, errhandler) + MPI_File_set_size(fh, size) -$(_doc_external(:MPI_Win_get_errhandler)) +$(_doc_external(:MPI_File_set_size)) """ -function MPI_Win_get_errhandler(win, errhandler) - @mpichk ccall((:MPI_Win_get_errhandler, libmpi), Cint, (MPI_Win, Ptr{MPI_Errhandler}), win, errhandler) +function MPI_File_set_size(fh, size) + @mpichk ccall((:MPI_File_set_size, libmpi), Cint, (MPI_File, MPI_Offset), fh, size) end """ - MPI_Win_set_errhandler(win, errhandler) + MPI_File_set_view(fh, disp, etype, filetype, datarep, info) -$(_doc_external(:MPI_Win_set_errhandler)) +$(_doc_external(:MPI_File_set_view)) """ -function MPI_Win_set_errhandler(win, errhandler) - @mpichk ccall((:MPI_Win_set_errhandler, libmpi), Cint, (MPI_Win, MPI_Errhandler), win, errhandler) +function MPI_File_set_view(fh, disp, etype, filetype, datarep, info) + @mpichk ccall((:MPI_File_set_view, libmpi), Cint, (MPI_File, MPI_Offset, MPI_Datatype, MPI_Datatype, Ptr{Cchar}, MPI_Info), fh, disp, etype, filetype, datarep, info) end """ - MPI_Status_c2f(c_status, f_status) + MPI_File_sync(fh) -$(_doc_external(:MPI_Status_c2f)) +$(_doc_external(:MPI_File_sync)) """ -function MPI_Status_c2f(c_status, f_status) - @mpichk ccall((:MPI_Status_c2f, libmpi), Cint, (Ptr{MPI_Status}, Ptr{MPI_Fint}), c_status, f_status) +function MPI_File_sync(fh) + @mpichk ccall((:MPI_File_sync, libmpi), Cint, (MPI_File,), fh) end """ - MPI_Status_f2c(f_status, c_status) + MPI_File_toint(file) -$(_doc_external(:MPI_Status_f2c)) +$(_doc_external(:MPI_File_toint)) """ -function MPI_Status_f2c(f_status, c_status) - @mpichk ccall((:MPI_Status_f2c, libmpi), Cint, (Ptr{MPI_Fint}, Ptr{MPI_Status}), f_status, c_status) +function MPI_File_toint(file) + @mpichk ccall((:MPI_File_toint, libmpi), Cint, (MPI_File,), file) end """ - MPI_Group_compare(group1, group2, result) + MPI_File_write(fh, buf, count, datatype, status) -$(_doc_external(:MPI_Group_compare)) +$(_doc_external(:MPI_File_write)) """ -function MPI_Group_compare(group1, group2, result) - @mpichk ccall((:MPI_Group_compare, libmpi), Cint, (MPI_Group, MPI_Group, Ptr{Cint}), group1, group2, result) +function MPI_File_write(fh, buf, count, datatype, status) + @mpichk ccall((:MPI_File_write, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) end """ - MPI_Group_difference(group1, group2, newgroup) + MPI_File_write_all(fh, buf, count, datatype, status) -$(_doc_external(:MPI_Group_difference)) +$(_doc_external(:MPI_File_write_all)) """ -function MPI_Group_difference(group1, group2, newgroup) - @mpichk ccall((:MPI_Group_difference, libmpi), Cint, (MPI_Group, MPI_Group, Ptr{MPI_Group}), group1, group2, newgroup) +function MPI_File_write_all(fh, buf, count, datatype, status) + @mpichk ccall((:MPI_File_write_all, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) end """ - MPI_Group_excl(group, n, ranks, newgroup) + MPI_File_write_all_begin(fh, buf, count, datatype) -$(_doc_external(:MPI_Group_excl)) +$(_doc_external(:MPI_File_write_all_begin)) """ -function MPI_Group_excl(group, n, ranks, newgroup) - @mpichk ccall((:MPI_Group_excl, libmpi), Cint, (MPI_Group, Cint, Ptr{Cint}, Ptr{MPI_Group}), group, n, ranks, newgroup) +function MPI_File_write_all_begin(fh, buf, count, datatype) + @mpichk ccall((:MPI_File_write_all_begin, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype), fh, buf, count, datatype) end """ - MPI_Group_free(group) + MPI_File_write_all_begin_c(fh, buf, count, datatype) -$(_doc_external(:MPI_Group_free)) +$(_doc_external(:MPI_File_write_all_begin_c)) """ -function MPI_Group_free(group) - @mpichk ccall((:MPI_Group_free, libmpi), Cint, (Ptr{MPI_Group},), group) +function MPI_File_write_all_begin_c(fh, buf, count, datatype) + @mpichk ccall((:MPI_File_write_all_begin_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype), fh, buf, count, datatype) end """ - MPI_Group_incl(group, n, ranks, newgroup) + MPI_File_write_all_c(fh, buf, count, datatype, status) -$(_doc_external(:MPI_Group_incl)) +$(_doc_external(:MPI_File_write_all_c)) """ -function MPI_Group_incl(group, n, ranks, newgroup) - @mpichk ccall((:MPI_Group_incl, libmpi), Cint, (MPI_Group, Cint, Ptr{Cint}, Ptr{MPI_Group}), group, n, ranks, newgroup) +function MPI_File_write_all_c(fh, buf, count, datatype, status) + @mpichk ccall((:MPI_File_write_all_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) end """ - MPI_Group_intersection(group1, group2, newgroup) + MPI_File_write_all_end(fh, buf, status) -$(_doc_external(:MPI_Group_intersection)) +$(_doc_external(:MPI_File_write_all_end)) """ -function MPI_Group_intersection(group1, group2, newgroup) - @mpichk ccall((:MPI_Group_intersection, libmpi), Cint, (MPI_Group, MPI_Group, Ptr{MPI_Group}), group1, group2, newgroup) +function MPI_File_write_all_end(fh, buf, status) + @mpichk ccall((:MPI_File_write_all_end, libmpi), Cint, (MPI_File, MPIPtr, Ptr{MPI_Status}), fh, buf, status) end """ - MPI_Group_range_excl(group, n, ranges, newgroup) + MPI_File_write_at(fh, offset, buf, count, datatype, status) -$(_doc_external(:MPI_Group_range_excl)) +$(_doc_external(:MPI_File_write_at)) """ -function MPI_Group_range_excl(group, n, ranges, newgroup) - @mpichk ccall((:MPI_Group_range_excl, libmpi), Cint, (MPI_Group, Cint, Ptr{NTuple{3, Cint}}, Ptr{MPI_Group}), group, n, ranges, newgroup) +function MPI_File_write_at(fh, offset, buf, count, datatype, status) + @mpichk ccall((:MPI_File_write_at, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, offset, buf, count, datatype, status) end """ - MPI_Group_range_incl(group, n, ranges, newgroup) + MPI_File_write_at_all(fh, offset, buf, count, datatype, status) -$(_doc_external(:MPI_Group_range_incl)) +$(_doc_external(:MPI_File_write_at_all)) """ -function MPI_Group_range_incl(group, n, ranges, newgroup) - @mpichk ccall((:MPI_Group_range_incl, libmpi), Cint, (MPI_Group, Cint, Ptr{NTuple{3, Cint}}, Ptr{MPI_Group}), group, n, ranges, newgroup) +function MPI_File_write_at_all(fh, offset, buf, count, datatype, status) + @mpichk ccall((:MPI_File_write_at_all, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, offset, buf, count, datatype, status) end """ - MPI_Group_rank(group, rank) + MPI_File_write_at_all_begin(fh, offset, buf, count, datatype) -$(_doc_external(:MPI_Group_rank)) +$(_doc_external(:MPI_File_write_at_all_begin)) """ -function MPI_Group_rank(group, rank) - @mpichk ccall((:MPI_Group_rank, libmpi), Cint, (MPI_Group, Ptr{Cint}), group, rank) +function MPI_File_write_at_all_begin(fh, offset, buf, count, datatype) + @mpichk ccall((:MPI_File_write_at_all_begin, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype), fh, offset, buf, count, datatype) end """ - MPI_Group_size(group, size) + MPI_File_write_at_all_begin_c(fh, offset, buf, count, datatype) -$(_doc_external(:MPI_Group_size)) +$(_doc_external(:MPI_File_write_at_all_begin_c)) """ -function MPI_Group_size(group, size) - @mpichk ccall((:MPI_Group_size, libmpi), Cint, (MPI_Group, Ptr{Cint}), group, size) +function MPI_File_write_at_all_begin_c(fh, offset, buf, count, datatype) + @mpichk ccall((:MPI_File_write_at_all_begin_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype), fh, offset, buf, count, datatype) end """ - MPI_Group_translate_ranks(group1, n, ranks1, group2, ranks2) + MPI_File_write_at_all_c(fh, offset, buf, count, datatype, status) -$(_doc_external(:MPI_Group_translate_ranks)) +$(_doc_external(:MPI_File_write_at_all_c)) """ -function MPI_Group_translate_ranks(group1, n, ranks1, group2, ranks2) - @mpichk ccall((:MPI_Group_translate_ranks, libmpi), Cint, (MPI_Group, Cint, Ptr{Cint}, MPI_Group, Ptr{Cint}), group1, n, ranks1, group2, ranks2) +function MPI_File_write_at_all_c(fh, offset, buf, count, datatype, status) + @mpichk ccall((:MPI_File_write_at_all_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Status}), fh, offset, buf, count, datatype, status) end """ - MPI_Group_union(group1, group2, newgroup) + MPI_File_write_at_all_end(fh, buf, status) -$(_doc_external(:MPI_Group_union)) +$(_doc_external(:MPI_File_write_at_all_end)) """ -function MPI_Group_union(group1, group2, newgroup) - @mpichk ccall((:MPI_Group_union, libmpi), Cint, (MPI_Group, MPI_Group, Ptr{MPI_Group}), group1, group2, newgroup) +function MPI_File_write_at_all_end(fh, buf, status) + @mpichk ccall((:MPI_File_write_at_all_end, libmpi), Cint, (MPI_File, MPIPtr, Ptr{MPI_Status}), fh, buf, status) end """ - MPI_Info_create(info) + MPI_File_write_at_c(fh, offset, buf, count, datatype, status) -$(_doc_external(:MPI_Info_create)) +$(_doc_external(:MPI_File_write_at_c)) """ -function MPI_Info_create(info) - @mpichk ccall((:MPI_Info_create, libmpi), Cint, (Ptr{MPI_Info},), info) +function MPI_File_write_at_c(fh, offset, buf, count, datatype, status) + @mpichk ccall((:MPI_File_write_at_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Status}), fh, offset, buf, count, datatype, status) end """ - MPI_Info_create_env(argc, argv, info) + MPI_File_write_c(fh, buf, count, datatype, status) -$(_doc_external(:MPI_Info_create_env)) +$(_doc_external(:MPI_File_write_c)) """ -function MPI_Info_create_env(argc, argv, info) - @mpichk ccall((:MPI_Info_create_env, libmpi), Cint, (Cint, Ptr{Ptr{Cchar}}, Ptr{MPI_Info}), argc, argv, info) +function MPI_File_write_c(fh, buf, count, datatype, status) + @mpichk ccall((:MPI_File_write_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) end """ - MPI_Info_delete(info, key) + MPI_File_write_ordered(fh, buf, count, datatype, status) -$(_doc_external(:MPI_Info_delete)) +$(_doc_external(:MPI_File_write_ordered)) """ -function MPI_Info_delete(info, key) - @mpichk ccall((:MPI_Info_delete, libmpi), Cint, (MPI_Info, Ptr{Cchar}), info, key) +function MPI_File_write_ordered(fh, buf, count, datatype, status) + @mpichk ccall((:MPI_File_write_ordered, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) end """ - MPI_Info_dup(info, newinfo) + MPI_File_write_ordered_begin(fh, buf, count, datatype) -$(_doc_external(:MPI_Info_dup)) +$(_doc_external(:MPI_File_write_ordered_begin)) """ -function MPI_Info_dup(info, newinfo) - @mpichk ccall((:MPI_Info_dup, libmpi), Cint, (MPI_Info, Ptr{MPI_Info}), info, newinfo) +function MPI_File_write_ordered_begin(fh, buf, count, datatype) + @mpichk ccall((:MPI_File_write_ordered_begin, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype), fh, buf, count, datatype) end """ - MPI_Info_free(info) + MPI_File_write_ordered_begin_c(fh, buf, count, datatype) -$(_doc_external(:MPI_Info_free)) +$(_doc_external(:MPI_File_write_ordered_begin_c)) """ -function MPI_Info_free(info) - @mpichk ccall((:MPI_Info_free, libmpi), Cint, (Ptr{MPI_Info},), info) +function MPI_File_write_ordered_begin_c(fh, buf, count, datatype) + @mpichk ccall((:MPI_File_write_ordered_begin_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype), fh, buf, count, datatype) end """ - MPI_Info_get(info, key, valuelen, value, flag) + MPI_File_write_ordered_c(fh, buf, count, datatype, status) -$(_doc_external(:MPI_Info_get)) +$(_doc_external(:MPI_File_write_ordered_c)) """ -function MPI_Info_get(info, key, valuelen, value, flag) - @mpichk ccall((:MPI_Info_get, libmpi), Cint, (MPI_Info, Ptr{Cchar}, Cint, Ptr{Cchar}, Ptr{Cint}), info, key, valuelen, value, flag) +function MPI_File_write_ordered_c(fh, buf, count, datatype, status) + @mpichk ccall((:MPI_File_write_ordered_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) end """ - MPI_Info_get_nkeys(info, nkeys) + MPI_File_write_ordered_end(fh, buf, status) -$(_doc_external(:MPI_Info_get_nkeys)) +$(_doc_external(:MPI_File_write_ordered_end)) """ -function MPI_Info_get_nkeys(info, nkeys) - @mpichk ccall((:MPI_Info_get_nkeys, libmpi), Cint, (MPI_Info, Ptr{Cint}), info, nkeys) +function MPI_File_write_ordered_end(fh, buf, status) + @mpichk ccall((:MPI_File_write_ordered_end, libmpi), Cint, (MPI_File, MPIPtr, Ptr{MPI_Status}), fh, buf, status) end """ - MPI_Info_get_nthkey(info, n, key) + MPI_File_write_shared(fh, buf, count, datatype, status) -$(_doc_external(:MPI_Info_get_nthkey)) +$(_doc_external(:MPI_File_write_shared)) """ -function MPI_Info_get_nthkey(info, n, key) - @mpichk ccall((:MPI_Info_get_nthkey, libmpi), Cint, (MPI_Info, Cint, Ptr{Cchar}), info, n, key) +function MPI_File_write_shared(fh, buf, count, datatype, status) + @mpichk ccall((:MPI_File_write_shared, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) end """ - MPI_Info_get_string(info, key, buflen, value, flag) + MPI_File_write_shared_c(fh, buf, count, datatype, status) -$(_doc_external(:MPI_Info_get_string)) +$(_doc_external(:MPI_File_write_shared_c)) """ -function MPI_Info_get_string(info, key, buflen, value, flag) - @mpichk ccall((:MPI_Info_get_string, libmpi), Cint, (MPI_Info, Ptr{Cchar}, Ptr{Cint}, Ptr{Cchar}, Ptr{Cint}), info, key, buflen, value, flag) +function MPI_File_write_shared_c(fh, buf, count, datatype, status) + @mpichk ccall((:MPI_File_write_shared_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) end """ - MPI_Info_get_valuelen(info, key, valuelen, flag) + MPI_Finalize() -$(_doc_external(:MPI_Info_get_valuelen)) +$(_doc_external(:MPI_Finalize)) """ -function MPI_Info_get_valuelen(info, key, valuelen, flag) - @mpichk ccall((:MPI_Info_get_valuelen, libmpi), Cint, (MPI_Info, Ptr{Cchar}, Ptr{Cint}, Ptr{Cint}), info, key, valuelen, flag) +function MPI_Finalize() + @mpichk ccall((:MPI_Finalize, libmpi), Cint, ()) end """ - MPI_Info_set(info, key, value) + MPI_Finalized(flag) -$(_doc_external(:MPI_Info_set)) +$(_doc_external(:MPI_Finalized)) """ -function MPI_Info_set(info, key, value) - @mpichk ccall((:MPI_Info_set, libmpi), Cint, (MPI_Info, Ptr{Cchar}, Ptr{Cchar}), info, key, value) +function MPI_Finalized(flag) + @mpichk ccall((:MPI_Finalized, libmpi), Cint, (Ptr{Cint},), flag) end """ - MPI_Abort(comm, errorcode) + MPI_Free_mem(base) -$(_doc_external(:MPI_Abort)) +$(_doc_external(:MPI_Free_mem)) """ -function MPI_Abort(comm, errorcode) - @mpichk ccall((:MPI_Abort, libmpi), Cint, (MPI_Comm, Cint), comm, errorcode) +function MPI_Free_mem(base) + @mpichk ccall((:MPI_Free_mem, libmpi), Cint, (MPIPtr,), base) end """ - MPI_Comm_create_from_group(group, stringtag, info, errhandler, newcomm) + MPI_Gather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) -$(_doc_external(:MPI_Comm_create_from_group)) +$(_doc_external(:MPI_Gather)) """ -function MPI_Comm_create_from_group(group, stringtag, info, errhandler, newcomm) - @mpichk ccall((:MPI_Comm_create_from_group, libmpi), Cint, (MPI_Group, Ptr{Cchar}, MPI_Info, MPI_Errhandler, Ptr{MPI_Comm}), group, stringtag, info, errhandler, newcomm) +function MPI_Gather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) + @mpichk ccall((:MPI_Gather, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) end """ - MPI_Finalize() + MPI_Gather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) -$(_doc_external(:MPI_Finalize)) +$(_doc_external(:MPI_Gather_c)) """ -function MPI_Finalize() - @mpichk ccall((:MPI_Finalize, libmpi), Cint, ()) +function MPI_Gather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) + @mpichk ccall((:MPI_Gather_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) end """ - MPI_Finalized(flag) + MPI_Gather_init(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) -$(_doc_external(:MPI_Finalized)) +$(_doc_external(:MPI_Gather_init)) """ -function MPI_Finalized(flag) - @mpichk ccall((:MPI_Finalized, libmpi), Cint, (Ptr{Cint},), flag) +function MPI_Gather_init(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) + @mpichk ccall((:MPI_Gather_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) end """ - MPI_Init(argc, argv) + MPI_Gather_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) -$(_doc_external(:MPI_Init)) +$(_doc_external(:MPI_Gather_init_c)) """ -function MPI_Init(argc, argv) - @mpichk ccall((:MPI_Init, libmpi), Cint, (Ptr{Cint}, Ptr{Ptr{Ptr{Cchar}}}), argc, argv) +function MPI_Gather_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) + @mpichk ccall((:MPI_Gather_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) end """ - MPI_Init_thread(argc, argv, required, provided) + MPI_Gatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm) -$(_doc_external(:MPI_Init_thread)) +$(_doc_external(:MPI_Gatherv)) """ -function MPI_Init_thread(argc, argv, required, provided) - @mpichk ccall((:MPI_Init_thread, libmpi), Cint, (Ptr{Cint}, Ptr{Ptr{Ptr{Cchar}}}, Cint, Ptr{Cint}), argc, argv, required, provided) +function MPI_Gatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm) + @mpichk ccall((:MPI_Gatherv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm) end """ - MPI_Initialized(flag) + MPI_Gatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm) -$(_doc_external(:MPI_Initialized)) +$(_doc_external(:MPI_Gatherv_c)) """ -function MPI_Initialized(flag) - @mpichk ccall((:MPI_Initialized, libmpi), Cint, (Ptr{Cint},), flag) +function MPI_Gatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm) + @mpichk ccall((:MPI_Gatherv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm) end """ - MPI_Is_thread_main(flag) + MPI_Gatherv_init(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, info, request) -$(_doc_external(:MPI_Is_thread_main)) +$(_doc_external(:MPI_Gatherv_init)) """ -function MPI_Is_thread_main(flag) - @mpichk ccall((:MPI_Is_thread_main, libmpi), Cint, (Ptr{Cint},), flag) +function MPI_Gatherv_init(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, info, request) + @mpichk ccall((:MPI_Gatherv_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, info, request) end """ - MPI_Query_thread(provided) + MPI_Gatherv_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, info, request) -$(_doc_external(:MPI_Query_thread)) +$(_doc_external(:MPI_Gatherv_init_c)) """ -function MPI_Query_thread(provided) - @mpichk ccall((:MPI_Query_thread, libmpi), Cint, (Ptr{Cint},), provided) +function MPI_Gatherv_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, info, request) + @mpichk ccall((:MPI_Gatherv_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, info, request) end """ - MPI_Aint_add(base, disp) + MPI_Get(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) -$(_doc_external(:MPI_Aint_add)) +$(_doc_external(:MPI_Get)) """ -function MPI_Aint_add(base, disp) - @mpichk ccall((:MPI_Aint_add, libmpi), MPI_Aint, (MPI_Aint, MPI_Aint), base, disp) +function MPI_Get(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) + @mpichk ccall((:MPI_Get, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, MPI_Aint, Cint, MPI_Datatype, MPI_Win), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) end """ - MPI_Aint_diff(addr1, addr2) + MPI_Get_accumulate(origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win) -$(_doc_external(:MPI_Aint_diff)) +$(_doc_external(:MPI_Get_accumulate)) """ -function MPI_Aint_diff(addr1, addr2) - @mpichk ccall((:MPI_Aint_diff, libmpi), MPI_Aint, (MPI_Aint, MPI_Aint), addr1, addr2) +function MPI_Get_accumulate(origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win) + @mpichk ccall((:MPI_Get_accumulate, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Aint, Cint, MPI_Datatype, MPI_Op, MPI_Win), origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win) end """ - MPI_Get_library_version(version, resultlen) + MPI_Get_accumulate_c(origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win) -$(_doc_external(:MPI_Get_library_version)) +$(_doc_external(:MPI_Get_accumulate_c)) """ -function MPI_Get_library_version(version, resultlen) - @mpicall ccall((:MPI_Get_library_version, libmpi), Cint, (Ptr{Cchar}, Ptr{Cint}), version, resultlen) +function MPI_Get_accumulate_c(origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win) + @mpichk ccall((:MPI_Get_accumulate_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Op, MPI_Win), origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win) end """ - MPI_Get_processor_name(name, resultlen) + MPI_Get_address(location, address) -$(_doc_external(:MPI_Get_processor_name)) +$(_doc_external(:MPI_Get_address)) """ -function MPI_Get_processor_name(name, resultlen) - @mpicall ccall((:MPI_Get_processor_name, libmpi), Cint, (Ptr{Cchar}, Ptr{Cint}), name, resultlen) +function MPI_Get_address(location, address) + @mpichk ccall((:MPI_Get_address, libmpi), Cint, (MPIPtr, Ptr{MPI_Aint}), location, address) end """ - MPI_Get_version(version, subversion) + MPI_Get_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) -$(_doc_external(:MPI_Get_version)) +$(_doc_external(:MPI_Get_c)) """ -function MPI_Get_version(version, subversion) - @mpicall ccall((:MPI_Get_version, libmpi), Cint, (Ptr{Cint}, Ptr{Cint}), version, subversion) +function MPI_Get_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) + @mpichk ccall((:MPI_Get_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Win), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) end """ - MPI_Op_commutative(op, commute) + MPI_Get_count(status, datatype, count) -$(_doc_external(:MPI_Op_commutative)) +$(_doc_external(:MPI_Get_count)) """ -function MPI_Op_commutative(op, commute) - @mpichk ccall((:MPI_Op_commutative, libmpi), Cint, (MPI_Op, Ptr{Cint}), op, commute) +function MPI_Get_count(status, datatype, count) + @mpichk ccall((:MPI_Get_count, libmpi), Cint, (Ptr{MPI_Status}, MPI_Datatype, Ptr{Cint}), status, datatype, count) end """ - MPI_Op_create(user_fn, commute, op) + MPI_Get_count_c(status, datatype, count) -$(_doc_external(:MPI_Op_create)) +$(_doc_external(:MPI_Get_count_c)) """ -function MPI_Op_create(user_fn, commute, op) - @mpichk ccall((:MPI_Op_create, libmpi), Cint, (Ptr{MPI_User_function}, Cint, Ptr{MPI_Op}), user_fn, commute, op) +function MPI_Get_count_c(status, datatype, count) + @mpichk ccall((:MPI_Get_count_c, libmpi), Cint, (Ptr{MPI_Status}, MPI_Datatype, Ptr{MPI_Count}), status, datatype, count) end """ - MPI_Op_free(op) + MPI_Get_elements(status, datatype, count) -$(_doc_external(:MPI_Op_free)) +$(_doc_external(:MPI_Get_elements)) """ -function MPI_Op_free(op) - @mpichk ccall((:MPI_Op_free, libmpi), Cint, (Ptr{MPI_Op},), op) +function MPI_Get_elements(status, datatype, count) + @mpichk ccall((:MPI_Get_elements, libmpi), Cint, (Ptr{MPI_Status}, MPI_Datatype, Ptr{Cint}), status, datatype, count) end """ - MPI_Parrived(request, partition, flag) + MPI_Get_elements_c(status, datatype, count) -$(_doc_external(:MPI_Parrived)) +$(_doc_external(:MPI_Get_elements_c)) """ -function MPI_Parrived(request, partition, flag) - @mpichk ccall((:MPI_Parrived, libmpi), Cint, (MPI_Request, Cint, Ptr{Cint}), request, partition, flag) +function MPI_Get_elements_c(status, datatype, count) + @mpichk ccall((:MPI_Get_elements_c, libmpi), Cint, (Ptr{MPI_Status}, MPI_Datatype, Ptr{MPI_Count}), status, datatype, count) end """ - MPI_Pready(partition, request) + MPI_Get_elements_x(status, datatype, count) -$(_doc_external(:MPI_Pready)) +$(_doc_external(:MPI_Get_elements_x)) """ -function MPI_Pready(partition, request) - @mpichk ccall((:MPI_Pready, libmpi), Cint, (Cint, MPI_Request), partition, request) +function MPI_Get_elements_x(status, datatype, count) + @mpichk ccall((:MPI_Get_elements_x, libmpi), Cint, (Ptr{MPI_Status}, MPI_Datatype, Ptr{MPI_Count}), status, datatype, count) end """ - MPI_Pready_list(length, array_of_partitions, request) + MPI_Get_hw_resource_info(hw_info) -$(_doc_external(:MPI_Pready_list)) +$(_doc_external(:MPI_Get_hw_resource_info)) """ -function MPI_Pready_list(length, array_of_partitions, request) - @mpichk ccall((:MPI_Pready_list, libmpi), Cint, (Cint, Ptr{Cint}, MPI_Request), length, array_of_partitions, request) +function MPI_Get_hw_resource_info(hw_info) + @mpichk ccall((:MPI_Get_hw_resource_info, libmpi), Cint, (Ptr{MPI_Info},), hw_info) end """ - MPI_Pready_range(partition_low, partition_high, request) + MPI_Get_library_version(version, resultlen) -$(_doc_external(:MPI_Pready_range)) +$(_doc_external(:MPI_Get_library_version)) """ -function MPI_Pready_range(partition_low, partition_high, request) - @mpichk ccall((:MPI_Pready_range, libmpi), Cint, (Cint, Cint, MPI_Request), partition_low, partition_high, request) +function MPI_Get_library_version(version, resultlen) + @mpicall ccall((:MPI_Get_library_version, libmpi), Cint, (Ptr{Cchar}, Ptr{Cint}), version, resultlen) end """ - MPI_Precv_init(buf, partitions, count, datatype, dest, tag, comm, info, request) + MPI_Get_processor_name(name, resultlen) -$(_doc_external(:MPI_Precv_init)) +$(_doc_external(:MPI_Get_processor_name)) """ -function MPI_Precv_init(buf, partitions, count, datatype, dest, tag, comm, info, request) - @mpichk ccall((:MPI_Precv_init, libmpi), Cint, (MPIPtr, Cint, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), buf, partitions, count, datatype, dest, tag, comm, info, request) +function MPI_Get_processor_name(name, resultlen) + @mpicall ccall((:MPI_Get_processor_name, libmpi), Cint, (Ptr{Cchar}, Ptr{Cint}), name, resultlen) end """ - MPI_Psend_init(buf, partitions, count, datatype, dest, tag, comm, info, request) + MPI_Get_version(version, subversion) -$(_doc_external(:MPI_Psend_init)) +$(_doc_external(:MPI_Get_version)) """ -function MPI_Psend_init(buf, partitions, count, datatype, dest, tag, comm, info, request) - @mpichk ccall((:MPI_Psend_init, libmpi), Cint, (MPIPtr, Cint, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), buf, partitions, count, datatype, dest, tag, comm, info, request) +function MPI_Get_version(version, subversion) + @mpicall ccall((:MPI_Get_version, libmpi), Cint, (Ptr{Cint}, Ptr{Cint}), version, subversion) end """ - MPI_Bsend(buf, count, datatype, dest, tag, comm) + MPI_Graph_create(comm_old, nnodes, indx, edges, reorder, comm_graph) -$(_doc_external(:MPI_Bsend)) +$(_doc_external(:MPI_Graph_create)) """ -function MPI_Bsend(buf, count, datatype, dest, tag, comm) - @mpichk ccall((:MPI_Bsend, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) +function MPI_Graph_create(comm_old, nnodes, indx, edges, reorder, comm_graph) + @mpichk ccall((:MPI_Graph_create, libmpi), Cint, (MPI_Comm, Cint, Ptr{Cint}, Ptr{Cint}, Cint, Ptr{MPI_Comm}), comm_old, nnodes, indx, edges, reorder, comm_graph) end """ - MPI_Bsend_init(buf, count, datatype, dest, tag, comm, request) + MPI_Graph_get(comm, maxindex, maxedges, indx, edges) -$(_doc_external(:MPI_Bsend_init)) +$(_doc_external(:MPI_Graph_get)) """ -function MPI_Bsend_init(buf, count, datatype, dest, tag, comm, request) - @mpichk ccall((:MPI_Bsend_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) +function MPI_Graph_get(comm, maxindex, maxedges, indx, edges) + @mpichk ccall((:MPI_Graph_get, libmpi), Cint, (MPI_Comm, Cint, Cint, Ptr{Cint}, Ptr{Cint}), comm, maxindex, maxedges, indx, edges) end """ - MPI_Buffer_attach(buffer, size) + MPI_Graph_map(comm, nnodes, indx, edges, newrank) -$(_doc_external(:MPI_Buffer_attach)) +$(_doc_external(:MPI_Graph_map)) """ -function MPI_Buffer_attach(buffer, size) - @mpichk ccall((:MPI_Buffer_attach, libmpi), Cint, (MPIPtr, Cint), buffer, size) +function MPI_Graph_map(comm, nnodes, indx, edges, newrank) + @mpichk ccall((:MPI_Graph_map, libmpi), Cint, (MPI_Comm, Cint, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}), comm, nnodes, indx, edges, newrank) end """ - MPI_Buffer_detach(buffer_addr, size) + MPI_Graph_neighbors(comm, rank, maxneighbors, neighbors) -$(_doc_external(:MPI_Buffer_detach)) +$(_doc_external(:MPI_Graph_neighbors)) """ -function MPI_Buffer_detach(buffer_addr, size) - @mpichk ccall((:MPI_Buffer_detach, libmpi), Cint, (MPIPtr, Ptr{Cint}), buffer_addr, size) +function MPI_Graph_neighbors(comm, rank, maxneighbors, neighbors) + @mpichk ccall((:MPI_Graph_neighbors, libmpi), Cint, (MPI_Comm, Cint, Cint, Ptr{Cint}), comm, rank, maxneighbors, neighbors) end """ - MPI_Buffer_flush() + MPI_Graph_neighbors_count(comm, rank, nneighbors) -$(_doc_external(:MPI_Buffer_flush)) +$(_doc_external(:MPI_Graph_neighbors_count)) """ -function MPI_Buffer_flush() - @mpichk ccall((:MPI_Buffer_flush, libmpi), Cint, ()) +function MPI_Graph_neighbors_count(comm, rank, nneighbors) + @mpichk ccall((:MPI_Graph_neighbors_count, libmpi), Cint, (MPI_Comm, Cint, Ptr{Cint}), comm, rank, nneighbors) end """ - MPI_Buffer_iflush(request) + MPI_Graphdims_get(comm, nnodes, nedges) -$(_doc_external(:MPI_Buffer_iflush)) +$(_doc_external(:MPI_Graphdims_get)) """ -function MPI_Buffer_iflush(request) - @mpichk ccall((:MPI_Buffer_iflush, libmpi), Cint, (Ptr{MPI_Request},), request) +function MPI_Graphdims_get(comm, nnodes, nedges) + @mpichk ccall((:MPI_Graphdims_get, libmpi), Cint, (MPI_Comm, Ptr{Cint}, Ptr{Cint}), comm, nnodes, nedges) end """ - MPI_Comm_attach_buffer(comm, buffer, size) + MPI_Grequest_complete(request) -$(_doc_external(:MPI_Comm_attach_buffer)) +$(_doc_external(:MPI_Grequest_complete)) """ -function MPI_Comm_attach_buffer(comm, buffer, size) - @mpichk ccall((:MPI_Comm_attach_buffer, libmpi), Cint, (MPI_Comm, MPIPtr, Cint), comm, buffer, size) +function MPI_Grequest_complete(request) + @mpichk ccall((:MPI_Grequest_complete, libmpi), Cint, (MPI_Request,), request) end """ - MPI_Comm_detach_buffer(comm, buffer_addr, size) + MPI_Grequest_start(query_fn, free_fn, cancel_fn, extra_state, request) -$(_doc_external(:MPI_Comm_detach_buffer)) +$(_doc_external(:MPI_Grequest_start)) """ -function MPI_Comm_detach_buffer(comm, buffer_addr, size) - @mpichk ccall((:MPI_Comm_detach_buffer, libmpi), Cint, (MPI_Comm, MPIPtr, Ptr{Cint}), comm, buffer_addr, size) +function MPI_Grequest_start(query_fn, free_fn, cancel_fn, extra_state, request) + @mpichk ccall((:MPI_Grequest_start, libmpi), Cint, (Ptr{MPI_Grequest_query_function}, Ptr{MPI_Grequest_free_function}, Ptr{MPI_Grequest_cancel_function}, MPIPtr, Ptr{MPI_Request}), query_fn, free_fn, cancel_fn, extra_state, request) end """ - MPI_Comm_flush_buffer(comm) + MPI_Group_compare(group1, group2, result) -$(_doc_external(:MPI_Comm_flush_buffer)) +$(_doc_external(:MPI_Group_compare)) """ -function MPI_Comm_flush_buffer(comm) - @mpichk ccall((:MPI_Comm_flush_buffer, libmpi), Cint, (MPI_Comm,), comm) +function MPI_Group_compare(group1, group2, result) + @mpichk ccall((:MPI_Group_compare, libmpi), Cint, (MPI_Group, MPI_Group, Ptr{Cint}), group1, group2, result) end """ - MPI_Comm_iflush_buffer(comm, request) + MPI_Group_difference(group1, group2, newgroup) -$(_doc_external(:MPI_Comm_iflush_buffer)) +$(_doc_external(:MPI_Group_difference)) """ -function MPI_Comm_iflush_buffer(comm, request) - @mpichk ccall((:MPI_Comm_iflush_buffer, libmpi), Cint, (MPI_Comm, Ptr{MPI_Request}), comm, request) +function MPI_Group_difference(group1, group2, newgroup) + @mpichk ccall((:MPI_Group_difference, libmpi), Cint, (MPI_Group, MPI_Group, Ptr{MPI_Group}), group1, group2, newgroup) end """ - MPI_Ibsend(buf, count, datatype, dest, tag, comm, request) + MPI_Group_excl(group, n, ranks, newgroup) -$(_doc_external(:MPI_Ibsend)) +$(_doc_external(:MPI_Group_excl)) """ -function MPI_Ibsend(buf, count, datatype, dest, tag, comm, request) - @mpichk ccall((:MPI_Ibsend, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) +function MPI_Group_excl(group, n, ranks, newgroup) + @mpichk ccall((:MPI_Group_excl, libmpi), Cint, (MPI_Group, Cint, Ptr{Cint}, Ptr{MPI_Group}), group, n, ranks, newgroup) end """ - MPI_Improbe(source, tag, comm, flag, message, status) + MPI_Group_free(group) -$(_doc_external(:MPI_Improbe)) +$(_doc_external(:MPI_Group_free)) """ -function MPI_Improbe(source, tag, comm, flag, message, status) - @mpichk ccall((:MPI_Improbe, libmpi), Cint, (Cint, Cint, MPI_Comm, Ptr{Cint}, Ptr{MPI_Message}, Ptr{MPI_Status}), source, tag, comm, flag, message, status) +function MPI_Group_free(group) + @mpichk ccall((:MPI_Group_free, libmpi), Cint, (Ptr{MPI_Group},), group) end """ - MPI_Imrecv(buf, count, datatype, message, request) + MPI_Group_fromint(group) -$(_doc_external(:MPI_Imrecv)) +$(_doc_external(:MPI_Group_fromint)) """ -function MPI_Imrecv(buf, count, datatype, message, request) - @mpichk ccall((:MPI_Imrecv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Message}, Ptr{MPI_Request}), buf, count, datatype, message, request) +function MPI_Group_fromint(group) + @mpichk ccall((:MPI_Group_fromint, libmpi), MPI_Group, (Cint,), group) end """ - MPI_Iprobe(source, tag, comm, flag, status) + MPI_Group_incl(group, n, ranks, newgroup) -$(_doc_external(:MPI_Iprobe)) +$(_doc_external(:MPI_Group_incl)) """ -function MPI_Iprobe(source, tag, comm, flag, status) - @mpichk ccall((:MPI_Iprobe, libmpi), Cint, (Cint, Cint, MPI_Comm, Ptr{Cint}, Ptr{MPI_Status}), source, tag, comm, flag, status) +function MPI_Group_incl(group, n, ranks, newgroup) + @mpichk ccall((:MPI_Group_incl, libmpi), Cint, (MPI_Group, Cint, Ptr{Cint}, Ptr{MPI_Group}), group, n, ranks, newgroup) end """ - MPI_Irecv(buf, count, datatype, source, tag, comm, request) + MPI_Group_intersection(group1, group2, newgroup) -$(_doc_external(:MPI_Irecv)) +$(_doc_external(:MPI_Group_intersection)) """ -function MPI_Irecv(buf, count, datatype, source, tag, comm, request) - @mpichk ccall((:MPI_Irecv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, source, tag, comm, request) +function MPI_Group_intersection(group1, group2, newgroup) + @mpichk ccall((:MPI_Group_intersection, libmpi), Cint, (MPI_Group, MPI_Group, Ptr{MPI_Group}), group1, group2, newgroup) end """ - MPI_Irsend(buf, count, datatype, dest, tag, comm, request) + MPI_Group_range_excl(group, n, ranges, newgroup) -$(_doc_external(:MPI_Irsend)) +$(_doc_external(:MPI_Group_range_excl)) """ -function MPI_Irsend(buf, count, datatype, dest, tag, comm, request) - @mpichk ccall((:MPI_Irsend, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) +function MPI_Group_range_excl(group, n, ranges, newgroup) + @mpichk ccall((:MPI_Group_range_excl, libmpi), Cint, (MPI_Group, Cint, Ptr{NTuple{3, Cint}}, Ptr{MPI_Group}), group, n, ranges, newgroup) end """ - MPI_Isend(buf, count, datatype, dest, tag, comm, request) + MPI_Group_range_incl(group, n, ranges, newgroup) -$(_doc_external(:MPI_Isend)) +$(_doc_external(:MPI_Group_range_incl)) """ -function MPI_Isend(buf, count, datatype, dest, tag, comm, request) - @mpichk ccall((:MPI_Isend, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) +function MPI_Group_range_incl(group, n, ranges, newgroup) + @mpichk ccall((:MPI_Group_range_incl, libmpi), Cint, (MPI_Group, Cint, Ptr{NTuple{3, Cint}}, Ptr{MPI_Group}), group, n, ranges, newgroup) end """ - MPI_Isendrecv(sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, request) + MPI_Group_rank(group, rank) -$(_doc_external(:MPI_Isendrecv)) +$(_doc_external(:MPI_Group_rank)) """ -function MPI_Isendrecv(sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, request) - @mpichk ccall((:MPI_Isendrecv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, request) +function MPI_Group_rank(group, rank) + @mpichk ccall((:MPI_Group_rank, libmpi), Cint, (MPI_Group, Ptr{Cint}), group, rank) end """ - MPI_Isendrecv_replace(buf, count, datatype, dest, sendtag, source, recvtag, comm, request) + MPI_Group_size(group, size) -$(_doc_external(:MPI_Isendrecv_replace)) +$(_doc_external(:MPI_Group_size)) """ -function MPI_Isendrecv_replace(buf, count, datatype, dest, sendtag, source, recvtag, comm, request) - @mpichk ccall((:MPI_Isendrecv_replace, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, sendtag, source, recvtag, comm, request) +function MPI_Group_size(group, size) + @mpichk ccall((:MPI_Group_size, libmpi), Cint, (MPI_Group, Ptr{Cint}), group, size) end """ - MPI_Issend(buf, count, datatype, dest, tag, comm, request) + MPI_Group_toint(group) -$(_doc_external(:MPI_Issend)) +$(_doc_external(:MPI_Group_toint)) """ -function MPI_Issend(buf, count, datatype, dest, tag, comm, request) - @mpichk ccall((:MPI_Issend, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) +function MPI_Group_toint(group) + @mpichk ccall((:MPI_Group_toint, libmpi), Cint, (MPI_Group,), group) end """ - MPI_Mprobe(source, tag, comm, message, status) + MPI_Group_translate_ranks(group1, n, ranks1, group2, ranks2) -$(_doc_external(:MPI_Mprobe)) +$(_doc_external(:MPI_Group_translate_ranks)) """ -function MPI_Mprobe(source, tag, comm, message, status) - @mpichk ccall((:MPI_Mprobe, libmpi), Cint, (Cint, Cint, MPI_Comm, Ptr{MPI_Message}, Ptr{MPI_Status}), source, tag, comm, message, status) +function MPI_Group_translate_ranks(group1, n, ranks1, group2, ranks2) + @mpichk ccall((:MPI_Group_translate_ranks, libmpi), Cint, (MPI_Group, Cint, Ptr{Cint}, MPI_Group, Ptr{Cint}), group1, n, ranks1, group2, ranks2) end """ - MPI_Mrecv(buf, count, datatype, message, status) + MPI_Group_union(group1, group2, newgroup) -$(_doc_external(:MPI_Mrecv)) +$(_doc_external(:MPI_Group_union)) """ -function MPI_Mrecv(buf, count, datatype, message, status) - @mpichk ccall((:MPI_Mrecv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Message}, Ptr{MPI_Status}), buf, count, datatype, message, status) +function MPI_Group_union(group1, group2, newgroup) + @mpichk ccall((:MPI_Group_union, libmpi), Cint, (MPI_Group, MPI_Group, Ptr{MPI_Group}), group1, group2, newgroup) end """ - MPI_Probe(source, tag, comm, status) + MPI_Iallgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) -$(_doc_external(:MPI_Probe)) +$(_doc_external(:MPI_Iallgather)) """ -function MPI_Probe(source, tag, comm, status) - @mpichk ccall((:MPI_Probe, libmpi), Cint, (Cint, Cint, MPI_Comm, Ptr{MPI_Status}), source, tag, comm, status) +function MPI_Iallgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) + @mpichk ccall((:MPI_Iallgather, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) end """ - MPI_Recv(buf, count, datatype, source, tag, comm, status) + MPI_Iallgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) -$(_doc_external(:MPI_Recv)) +$(_doc_external(:MPI_Iallgather_c)) """ -function MPI_Recv(buf, count, datatype, source, tag, comm, status) - @mpichk ccall((:MPI_Recv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Status}), buf, count, datatype, source, tag, comm, status) +function MPI_Iallgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) + @mpichk ccall((:MPI_Iallgather_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) end """ - MPI_Recv_init(buf, count, datatype, source, tag, comm, request) + MPI_Iallgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) -$(_doc_external(:MPI_Recv_init)) +$(_doc_external(:MPI_Iallgatherv)) """ -function MPI_Recv_init(buf, count, datatype, source, tag, comm, request) - @mpichk ccall((:MPI_Recv_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, source, tag, comm, request) +function MPI_Iallgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) + @mpichk ccall((:MPI_Iallgatherv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) end """ - MPI_Rsend(buf, count, datatype, dest, tag, comm) + MPI_Iallgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) -$(_doc_external(:MPI_Rsend)) +$(_doc_external(:MPI_Iallgatherv_c)) """ -function MPI_Rsend(buf, count, datatype, dest, tag, comm) - @mpichk ccall((:MPI_Rsend, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) +function MPI_Iallgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) + @mpichk ccall((:MPI_Iallgatherv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) end """ - MPI_Rsend_init(buf, count, datatype, dest, tag, comm, request) + MPI_Iallreduce(sendbuf, recvbuf, count, datatype, op, comm, request) -$(_doc_external(:MPI_Rsend_init)) +$(_doc_external(:MPI_Iallreduce)) """ -function MPI_Rsend_init(buf, count, datatype, dest, tag, comm, request) - @mpichk ccall((:MPI_Rsend_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) +function MPI_Iallreduce(sendbuf, recvbuf, count, datatype, op, comm, request) + @mpichk ccall((:MPI_Iallreduce, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, request) end """ - MPI_Send(buf, count, datatype, dest, tag, comm) + MPI_Iallreduce_c(sendbuf, recvbuf, count, datatype, op, comm, request) -$(_doc_external(:MPI_Send)) +$(_doc_external(:MPI_Iallreduce_c)) """ -function MPI_Send(buf, count, datatype, dest, tag, comm) - @mpichk ccall((:MPI_Send, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) +function MPI_Iallreduce_c(sendbuf, recvbuf, count, datatype, op, comm, request) + @mpichk ccall((:MPI_Iallreduce_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, request) end """ - MPI_Send_init(buf, count, datatype, dest, tag, comm, request) + MPI_Ialltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) -$(_doc_external(:MPI_Send_init)) +$(_doc_external(:MPI_Ialltoall)) """ -function MPI_Send_init(buf, count, datatype, dest, tag, comm, request) - @mpichk ccall((:MPI_Send_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) +function MPI_Ialltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) + @mpichk ccall((:MPI_Ialltoall, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) end """ - MPI_Sendrecv(sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, status) + MPI_Ialltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) -$(_doc_external(:MPI_Sendrecv)) +$(_doc_external(:MPI_Ialltoall_c)) """ -function MPI_Sendrecv(sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, status) - @mpichk ccall((:MPI_Sendrecv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Status}), sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, status) +function MPI_Ialltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) + @mpichk ccall((:MPI_Ialltoall_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) end """ - MPI_Sendrecv_replace(buf, count, datatype, dest, sendtag, source, recvtag, comm, status) + MPI_Ialltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) -$(_doc_external(:MPI_Sendrecv_replace)) +$(_doc_external(:MPI_Ialltoallv)) """ -function MPI_Sendrecv_replace(buf, count, datatype, dest, sendtag, source, recvtag, comm, status) - @mpichk ccall((:MPI_Sendrecv_replace, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, Cint, Cint, MPI_Comm, Ptr{MPI_Status}), buf, count, datatype, dest, sendtag, source, recvtag, comm, status) +function MPI_Ialltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) + @mpichk ccall((:MPI_Ialltoallv, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) end """ - MPI_Ssend(buf, count, datatype, dest, tag, comm) + MPI_Ialltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) -$(_doc_external(:MPI_Ssend)) +$(_doc_external(:MPI_Ialltoallv_c)) """ -function MPI_Ssend(buf, count, datatype, dest, tag, comm) - @mpichk ccall((:MPI_Ssend, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) +function MPI_Ialltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) + @mpichk ccall((:MPI_Ialltoallv_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) end """ - MPI_Ssend_init(buf, count, datatype, dest, tag, comm, request) + MPI_Ialltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) -$(_doc_external(:MPI_Ssend_init)) +$(_doc_external(:MPI_Ialltoallw)) """ -function MPI_Ssend_init(buf, count, datatype, dest, tag, comm, request) - @mpichk ccall((:MPI_Ssend_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) +function MPI_Ialltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) + @mpichk ccall((:MPI_Ialltoallw, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Datatype}, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) end """ - MPI_Cancel(request) + MPI_Ialltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) -$(_doc_external(:MPI_Cancel)) +$(_doc_external(:MPI_Ialltoallw_c)) """ -function MPI_Cancel(request) - @mpichk ccall((:MPI_Cancel, libmpi), Cint, (Ptr{MPI_Request},), request) +function MPI_Ialltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) + @mpichk ccall((:MPI_Ialltoallw_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) end """ - MPI_Grequest_complete(request) + MPI_Ibarrier(comm, request) -$(_doc_external(:MPI_Grequest_complete)) +$(_doc_external(:MPI_Ibarrier)) """ -function MPI_Grequest_complete(request) - @mpichk ccall((:MPI_Grequest_complete, libmpi), Cint, (MPI_Request,), request) +function MPI_Ibarrier(comm, request) + @mpichk ccall((:MPI_Ibarrier, libmpi), Cint, (MPI_Comm, Ptr{MPI_Request}), comm, request) end """ - MPI_Grequest_start(query_fn, free_fn, cancel_fn, extra_state, request) + MPI_Ibcast(buffer, count, datatype, root, comm, request) -$(_doc_external(:MPI_Grequest_start)) +$(_doc_external(:MPI_Ibcast)) """ -function MPI_Grequest_start(query_fn, free_fn, cancel_fn, extra_state, request) - @mpichk ccall((:MPI_Grequest_start, libmpi), Cint, (Ptr{MPI_Grequest_query_function}, Ptr{MPI_Grequest_free_function}, Ptr{MPI_Grequest_cancel_function}, MPIPtr, Ptr{MPI_Request}), query_fn, free_fn, cancel_fn, extra_state, request) +function MPI_Ibcast(buffer, count, datatype, root, comm, request) + @mpichk ccall((:MPI_Ibcast, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), buffer, count, datatype, root, comm, request) end """ - MPI_Request_free(request) + MPI_Ibcast_c(buffer, count, datatype, root, comm, request) -$(_doc_external(:MPI_Request_free)) +$(_doc_external(:MPI_Ibcast_c)) """ -function MPI_Request_free(request) - @mpichk ccall((:MPI_Request_free, libmpi), Cint, (Ptr{MPI_Request},), request) +function MPI_Ibcast_c(buffer, count, datatype, root, comm, request) + @mpichk ccall((:MPI_Ibcast_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), buffer, count, datatype, root, comm, request) end """ - MPI_Request_get_status(request, flag, status) + MPI_Ibsend(buf, count, datatype, dest, tag, comm, request) -$(_doc_external(:MPI_Request_get_status)) +$(_doc_external(:MPI_Ibsend)) """ -function MPI_Request_get_status(request, flag, status) - @mpichk ccall((:MPI_Request_get_status, libmpi), Cint, (MPI_Request, Ptr{Cint}, Ptr{MPI_Status}), request, flag, status) +function MPI_Ibsend(buf, count, datatype, dest, tag, comm, request) + @mpichk ccall((:MPI_Ibsend, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) end """ - MPI_Request_get_status_all(count, array_of_requests, flag, array_of_statuses) + MPI_Ibsend_c(buf, count, datatype, dest, tag, comm, request) -$(_doc_external(:MPI_Request_get_status_all)) +$(_doc_external(:MPI_Ibsend_c)) """ -function MPI_Request_get_status_all(count, array_of_requests, flag, array_of_statuses) - @mpichk ccall((:MPI_Request_get_status_all, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{Cint}, Ptr{MPI_Status}), count, array_of_requests, flag, array_of_statuses) +function MPI_Ibsend_c(buf, count, datatype, dest, tag, comm, request) + @mpichk ccall((:MPI_Ibsend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) end """ - MPI_Request_get_status_any(count, array_of_requests, indx, flag, status) + MPI_Iexscan(sendbuf, recvbuf, count, datatype, op, comm, request) -$(_doc_external(:MPI_Request_get_status_any)) +$(_doc_external(:MPI_Iexscan)) """ -function MPI_Request_get_status_any(count, array_of_requests, indx, flag, status) - @mpichk ccall((:MPI_Request_get_status_any, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Status}), count, array_of_requests, indx, flag, status) +function MPI_Iexscan(sendbuf, recvbuf, count, datatype, op, comm, request) + @mpichk ccall((:MPI_Iexscan, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, request) end """ - MPI_Request_get_status_some(incount, array_of_requests, outcount, array_of_indices, array_of_statuses) + MPI_Iexscan_c(sendbuf, recvbuf, count, datatype, op, comm, request) -$(_doc_external(:MPI_Request_get_status_some)) +$(_doc_external(:MPI_Iexscan_c)) """ -function MPI_Request_get_status_some(incount, array_of_requests, outcount, array_of_indices, array_of_statuses) - @mpichk ccall((:MPI_Request_get_status_some, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Status}), incount, array_of_requests, outcount, array_of_indices, array_of_statuses) +function MPI_Iexscan_c(sendbuf, recvbuf, count, datatype, op, comm, request) + @mpichk ccall((:MPI_Iexscan_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, request) end """ - MPI_Start(request) + MPI_Igather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) -$(_doc_external(:MPI_Start)) +$(_doc_external(:MPI_Igather)) """ -function MPI_Start(request) - @mpichk ccall((:MPI_Start, libmpi), Cint, (Ptr{MPI_Request},), request) +function MPI_Igather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) + @mpichk ccall((:MPI_Igather, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) end """ - MPI_Startall(count, array_of_requests) + MPI_Igather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) -$(_doc_external(:MPI_Startall)) +$(_doc_external(:MPI_Igather_c)) """ -function MPI_Startall(count, array_of_requests) - @mpichk ccall((:MPI_Startall, libmpi), Cint, (Cint, Ptr{MPI_Request}), count, array_of_requests) +function MPI_Igather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) + @mpichk ccall((:MPI_Igather_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) end """ - MPI_Status_get_error(status, error) + MPI_Igatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, request) -$(_doc_external(:MPI_Status_get_error)) +$(_doc_external(:MPI_Igatherv)) """ -function MPI_Status_get_error(status, error) - @mpichk ccall((:MPI_Status_get_error, libmpi), Cint, (Ptr{MPI_Status}, Ptr{Cint}), status, error) +function MPI_Igatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, request) + @mpichk ccall((:MPI_Igatherv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, request) end """ - MPI_Status_get_source(status, source) + MPI_Igatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, request) -$(_doc_external(:MPI_Status_get_source)) +$(_doc_external(:MPI_Igatherv_c)) """ -function MPI_Status_get_source(status, source) - @mpichk ccall((:MPI_Status_get_source, libmpi), Cint, (Ptr{MPI_Status}, Ptr{Cint}), status, source) +function MPI_Igatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, request) + @mpichk ccall((:MPI_Igatherv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, request) end """ - MPI_Status_get_tag(status, tag) + MPI_Improbe(source, tag, comm, flag, message, status) -$(_doc_external(:MPI_Status_get_tag)) +$(_doc_external(:MPI_Improbe)) """ -function MPI_Status_get_tag(status, tag) - @mpichk ccall((:MPI_Status_get_tag, libmpi), Cint, (Ptr{MPI_Status}, Ptr{Cint}), status, tag) +function MPI_Improbe(source, tag, comm, flag, message, status) + @mpichk ccall((:MPI_Improbe, libmpi), Cint, (Cint, Cint, MPI_Comm, Ptr{Cint}, Ptr{MPI_Message}, Ptr{MPI_Status}), source, tag, comm, flag, message, status) end """ - MPI_Status_set_error(status, error) + MPI_Imrecv(buf, count, datatype, message, request) -$(_doc_external(:MPI_Status_set_error)) +$(_doc_external(:MPI_Imrecv)) """ -function MPI_Status_set_error(status, error) - @mpichk ccall((:MPI_Status_set_error, libmpi), Cint, (Ptr{MPI_Status}, Cint), status, error) +function MPI_Imrecv(buf, count, datatype, message, request) + @mpichk ccall((:MPI_Imrecv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Message}, Ptr{MPI_Request}), buf, count, datatype, message, request) end """ - MPI_Status_set_source(status, source) + MPI_Imrecv_c(buf, count, datatype, message, request) -$(_doc_external(:MPI_Status_set_source)) +$(_doc_external(:MPI_Imrecv_c)) """ -function MPI_Status_set_source(status, source) - @mpichk ccall((:MPI_Status_set_source, libmpi), Cint, (Ptr{MPI_Status}, Cint), status, source) +function MPI_Imrecv_c(buf, count, datatype, message, request) + @mpichk ccall((:MPI_Imrecv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Message}, Ptr{MPI_Request}), buf, count, datatype, message, request) end """ - MPI_Status_set_tag(status, tag) + MPI_Ineighbor_allgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) -$(_doc_external(:MPI_Status_set_tag)) +$(_doc_external(:MPI_Ineighbor_allgather)) """ -function MPI_Status_set_tag(status, tag) - @mpichk ccall((:MPI_Status_set_tag, libmpi), Cint, (Ptr{MPI_Status}, Cint), status, tag) +function MPI_Ineighbor_allgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) + @mpichk ccall((:MPI_Ineighbor_allgather, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) end """ - MPI_Status_set_cancelled(status, flag) + MPI_Ineighbor_allgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) -$(_doc_external(:MPI_Status_set_cancelled)) +$(_doc_external(:MPI_Ineighbor_allgather_c)) """ -function MPI_Status_set_cancelled(status, flag) - @mpichk ccall((:MPI_Status_set_cancelled, libmpi), Cint, (Ptr{MPI_Status}, Cint), status, flag) +function MPI_Ineighbor_allgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) + @mpichk ccall((:MPI_Ineighbor_allgather_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) end """ - MPI_Test(request, flag, status) + MPI_Ineighbor_allgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) -$(_doc_external(:MPI_Test)) +$(_doc_external(:MPI_Ineighbor_allgatherv)) """ -function MPI_Test(request, flag, status) - @mpichk ccall((:MPI_Test, libmpi), Cint, (Ptr{MPI_Request}, Ptr{Cint}, Ptr{MPI_Status}), request, flag, status) +function MPI_Ineighbor_allgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) + @mpichk ccall((:MPI_Ineighbor_allgatherv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) end """ - MPI_Test_cancelled(status, flag) + MPI_Ineighbor_allgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) -$(_doc_external(:MPI_Test_cancelled)) +$(_doc_external(:MPI_Ineighbor_allgatherv_c)) """ -function MPI_Test_cancelled(status, flag) - @mpichk ccall((:MPI_Test_cancelled, libmpi), Cint, (Ptr{MPI_Status}, Ptr{Cint}), status, flag) +function MPI_Ineighbor_allgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) + @mpichk ccall((:MPI_Ineighbor_allgatherv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) end """ - MPI_Testall(count, array_of_requests, flag, array_of_statuses) + MPI_Ineighbor_alltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) -$(_doc_external(:MPI_Testall)) +$(_doc_external(:MPI_Ineighbor_alltoall)) """ -function MPI_Testall(count, array_of_requests, flag, array_of_statuses) - @mpichk ccall((:MPI_Testall, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{Cint}, Ptr{MPI_Status}), count, array_of_requests, flag, array_of_statuses) +function MPI_Ineighbor_alltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) + @mpichk ccall((:MPI_Ineighbor_alltoall, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) end """ - MPI_Testany(count, array_of_requests, indx, flag, status) + MPI_Ineighbor_alltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) -$(_doc_external(:MPI_Testany)) +$(_doc_external(:MPI_Ineighbor_alltoall_c)) """ -function MPI_Testany(count, array_of_requests, indx, flag, status) - @mpichk ccall((:MPI_Testany, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Status}), count, array_of_requests, indx, flag, status) +function MPI_Ineighbor_alltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) + @mpichk ccall((:MPI_Ineighbor_alltoall_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) end """ - MPI_Testsome(incount, array_of_requests, outcount, array_of_indices, array_of_statuses) + MPI_Ineighbor_alltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) -$(_doc_external(:MPI_Testsome)) +$(_doc_external(:MPI_Ineighbor_alltoallv)) """ -function MPI_Testsome(incount, array_of_requests, outcount, array_of_indices, array_of_statuses) - @mpichk ccall((:MPI_Testsome, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Status}), incount, array_of_requests, outcount, array_of_indices, array_of_statuses) +function MPI_Ineighbor_alltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) + @mpichk ccall((:MPI_Ineighbor_alltoallv, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) end """ - MPI_Wait(request, status) + MPI_Ineighbor_alltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) -$(_doc_external(:MPI_Wait)) +$(_doc_external(:MPI_Ineighbor_alltoallv_c)) """ -function MPI_Wait(request, status) - @mpichk gc_safe=true ccall((:MPI_Wait, libmpi), Cint, (Ptr{MPI_Request}, Ptr{MPI_Status}), request, status) +function MPI_Ineighbor_alltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) + @mpichk ccall((:MPI_Ineighbor_alltoallv_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) end """ - MPI_Waitall(count, array_of_requests, array_of_statuses) + MPI_Ineighbor_alltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) -$(_doc_external(:MPI_Waitall)) +$(_doc_external(:MPI_Ineighbor_alltoallw)) """ -function MPI_Waitall(count, array_of_requests, array_of_statuses) - @mpichk ccall((:MPI_Waitall, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{MPI_Status}), count, array_of_requests, array_of_statuses) +function MPI_Ineighbor_alltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) + @mpichk ccall((:MPI_Ineighbor_alltoallw, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) end """ - MPI_Waitany(count, array_of_requests, indx, status) + MPI_Ineighbor_alltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) -$(_doc_external(:MPI_Waitany)) +$(_doc_external(:MPI_Ineighbor_alltoallw_c)) """ -function MPI_Waitany(count, array_of_requests, indx, status) - @mpichk ccall((:MPI_Waitany, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{Cint}, Ptr{MPI_Status}), count, array_of_requests, indx, status) +function MPI_Ineighbor_alltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) + @mpichk ccall((:MPI_Ineighbor_alltoallw_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) end """ - MPI_Waitsome(incount, array_of_requests, outcount, array_of_indices, array_of_statuses) + MPI_Info_create(info) -$(_doc_external(:MPI_Waitsome)) +$(_doc_external(:MPI_Info_create)) """ -function MPI_Waitsome(incount, array_of_requests, outcount, array_of_indices, array_of_statuses) - @mpichk ccall((:MPI_Waitsome, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Status}), incount, array_of_requests, outcount, array_of_indices, array_of_statuses) +function MPI_Info_create(info) + @mpichk ccall((:MPI_Info_create, libmpi), Cint, (Ptr{MPI_Info},), info) end """ - MPI_Accumulate(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win) + MPI_Info_create_env(argc, argv, info) -$(_doc_external(:MPI_Accumulate)) +$(_doc_external(:MPI_Info_create_env)) """ -function MPI_Accumulate(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win) - @mpichk ccall((:MPI_Accumulate, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, MPI_Aint, Cint, MPI_Datatype, MPI_Op, MPI_Win), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win) +function MPI_Info_create_env(argc, argv, info) + @mpichk ccall((:MPI_Info_create_env, libmpi), Cint, (Cint, Ptr{Ptr{Cchar}}, Ptr{MPI_Info}), argc, argv, info) end """ - MPI_Alloc_mem(size, info, baseptr) + MPI_Info_delete(info, key) -$(_doc_external(:MPI_Alloc_mem)) +$(_doc_external(:MPI_Info_delete)) """ -function MPI_Alloc_mem(size, info, baseptr) - @mpichk ccall((:MPI_Alloc_mem, libmpi), Cint, (MPI_Aint, MPI_Info, MPIPtr), size, info, baseptr) +function MPI_Info_delete(info, key) + @mpichk ccall((:MPI_Info_delete, libmpi), Cint, (MPI_Info, Ptr{Cchar}), info, key) end """ - MPI_Compare_and_swap(origin_addr, compare_addr, result_addr, datatype, target_rank, target_disp, win) + MPI_Info_dup(info, newinfo) -$(_doc_external(:MPI_Compare_and_swap)) +$(_doc_external(:MPI_Info_dup)) """ -function MPI_Compare_and_swap(origin_addr, compare_addr, result_addr, datatype, target_rank, target_disp, win) - @mpichk ccall((:MPI_Compare_and_swap, libmpi), Cint, (MPIPtr, MPIPtr, MPIPtr, MPI_Datatype, Cint, MPI_Aint, MPI_Win), origin_addr, compare_addr, result_addr, datatype, target_rank, target_disp, win) +function MPI_Info_dup(info, newinfo) + @mpichk ccall((:MPI_Info_dup, libmpi), Cint, (MPI_Info, Ptr{MPI_Info}), info, newinfo) end """ - MPI_Fetch_and_op(origin_addr, result_addr, datatype, target_rank, target_disp, op, win) + MPI_Info_free(info) -$(_doc_external(:MPI_Fetch_and_op)) +$(_doc_external(:MPI_Info_free)) """ -function MPI_Fetch_and_op(origin_addr, result_addr, datatype, target_rank, target_disp, op, win) - @mpichk ccall((:MPI_Fetch_and_op, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Datatype, Cint, MPI_Aint, MPI_Op, MPI_Win), origin_addr, result_addr, datatype, target_rank, target_disp, op, win) +function MPI_Info_free(info) + @mpichk ccall((:MPI_Info_free, libmpi), Cint, (Ptr{MPI_Info},), info) end """ - MPI_Free_mem(base) + MPI_Info_fromint(info) -$(_doc_external(:MPI_Free_mem)) +$(_doc_external(:MPI_Info_fromint)) """ -function MPI_Free_mem(base) - @mpichk ccall((:MPI_Free_mem, libmpi), Cint, (MPIPtr,), base) +function MPI_Info_fromint(info) + @mpichk ccall((:MPI_Info_fromint, libmpi), MPI_Info, (Cint,), info) end """ - MPI_Get(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) + MPI_Info_get(info, key, valuelen, value, flag) -$(_doc_external(:MPI_Get)) +$(_doc_external(:MPI_Info_get)) """ -function MPI_Get(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) - @mpichk ccall((:MPI_Get, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, MPI_Aint, Cint, MPI_Datatype, MPI_Win), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) +function MPI_Info_get(info, key, valuelen, value, flag) + @mpichk ccall((:MPI_Info_get, libmpi), Cint, (MPI_Info, Ptr{Cchar}, Cint, Ptr{Cchar}, Ptr{Cint}), info, key, valuelen, value, flag) end """ - MPI_Get_accumulate(origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win) + MPI_Info_get_nkeys(info, nkeys) -$(_doc_external(:MPI_Get_accumulate)) +$(_doc_external(:MPI_Info_get_nkeys)) """ -function MPI_Get_accumulate(origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win) - @mpichk ccall((:MPI_Get_accumulate, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Aint, Cint, MPI_Datatype, MPI_Op, MPI_Win), origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win) +function MPI_Info_get_nkeys(info, nkeys) + @mpichk ccall((:MPI_Info_get_nkeys, libmpi), Cint, (MPI_Info, Ptr{Cint}), info, nkeys) end """ - MPI_Put(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) + MPI_Info_get_nthkey(info, n, key) -$(_doc_external(:MPI_Put)) +$(_doc_external(:MPI_Info_get_nthkey)) """ -function MPI_Put(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) - @mpichk ccall((:MPI_Put, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, MPI_Aint, Cint, MPI_Datatype, MPI_Win), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) +function MPI_Info_get_nthkey(info, n, key) + @mpichk ccall((:MPI_Info_get_nthkey, libmpi), Cint, (MPI_Info, Cint, Ptr{Cchar}), info, n, key) end """ - MPI_Raccumulate(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) + MPI_Info_get_string(info, key, buflen, value, flag) -$(_doc_external(:MPI_Raccumulate)) +$(_doc_external(:MPI_Info_get_string)) """ -function MPI_Raccumulate(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) - @mpichk ccall((:MPI_Raccumulate, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, MPI_Aint, Cint, MPI_Datatype, MPI_Op, MPI_Win, Ptr{MPI_Request}), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) +function MPI_Info_get_string(info, key, buflen, value, flag) + @mpichk ccall((:MPI_Info_get_string, libmpi), Cint, (MPI_Info, Ptr{Cchar}, Ptr{Cint}, Ptr{Cchar}, Ptr{Cint}), info, key, buflen, value, flag) end """ - MPI_Rget(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) + MPI_Info_get_valuelen(info, key, valuelen, flag) -$(_doc_external(:MPI_Rget)) +$(_doc_external(:MPI_Info_get_valuelen)) """ -function MPI_Rget(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) - @mpichk ccall((:MPI_Rget, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, MPI_Aint, Cint, MPI_Datatype, MPI_Win, Ptr{MPI_Request}), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) +function MPI_Info_get_valuelen(info, key, valuelen, flag) + @mpichk ccall((:MPI_Info_get_valuelen, libmpi), Cint, (MPI_Info, Ptr{Cchar}, Ptr{Cint}, Ptr{Cint}), info, key, valuelen, flag) end """ - MPI_Rget_accumulate(origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) + MPI_Info_set(info, key, value) -$(_doc_external(:MPI_Rget_accumulate)) +$(_doc_external(:MPI_Info_set)) """ -function MPI_Rget_accumulate(origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) - @mpichk ccall((:MPI_Rget_accumulate, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Aint, Cint, MPI_Datatype, MPI_Op, MPI_Win, Ptr{MPI_Request}), origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) +function MPI_Info_set(info, key, value) + @mpichk ccall((:MPI_Info_set, libmpi), Cint, (MPI_Info, Ptr{Cchar}, Ptr{Cchar}), info, key, value) end """ - MPI_Rput(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) + MPI_Info_toint(info) -$(_doc_external(:MPI_Rput)) +$(_doc_external(:MPI_Info_toint)) """ -function MPI_Rput(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) - @mpichk ccall((:MPI_Rput, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, MPI_Aint, Cint, MPI_Datatype, MPI_Win, Ptr{MPI_Request}), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) +function MPI_Info_toint(info) + @mpichk ccall((:MPI_Info_toint, libmpi), Cint, (MPI_Info,), info) end """ - MPI_Win_allocate(size, disp_unit, info, comm, baseptr, win) + MPI_Init(argc, argv) -$(_doc_external(:MPI_Win_allocate)) +$(_doc_external(:MPI_Init)) """ -function MPI_Win_allocate(size, disp_unit, info, comm, baseptr, win) - @mpichk ccall((:MPI_Win_allocate, libmpi), Cint, (MPI_Aint, Cint, MPI_Info, MPI_Comm, MPIPtr, Ptr{MPI_Win}), size, disp_unit, info, comm, baseptr, win) +function MPI_Init(argc, argv) + @mpichk ccall((:MPI_Init, libmpi), Cint, (Ptr{Cint}, Ptr{Ptr{Ptr{Cchar}}}), argc, argv) end """ - MPI_Win_allocate_shared(size, disp_unit, info, comm, baseptr, win) + MPI_Init_thread(argc, argv, required, provided) -$(_doc_external(:MPI_Win_allocate_shared)) +$(_doc_external(:MPI_Init_thread)) """ -function MPI_Win_allocate_shared(size, disp_unit, info, comm, baseptr, win) - @mpichk ccall((:MPI_Win_allocate_shared, libmpi), Cint, (MPI_Aint, Cint, MPI_Info, MPI_Comm, MPIPtr, Ptr{MPI_Win}), size, disp_unit, info, comm, baseptr, win) +function MPI_Init_thread(argc, argv, required, provided) + @mpichk ccall((:MPI_Init_thread, libmpi), Cint, (Ptr{Cint}, Ptr{Ptr{Ptr{Cchar}}}, Cint, Ptr{Cint}), argc, argv, required, provided) end """ - MPI_Win_attach(win, base, size) + MPI_Initialized(flag) -$(_doc_external(:MPI_Win_attach)) +$(_doc_external(:MPI_Initialized)) """ -function MPI_Win_attach(win, base, size) - @mpichk ccall((:MPI_Win_attach, libmpi), Cint, (MPI_Win, MPIPtr, MPI_Aint), win, base, size) +function MPI_Initialized(flag) + @mpichk ccall((:MPI_Initialized, libmpi), Cint, (Ptr{Cint},), flag) end """ - MPI_Win_complete(win) + MPI_Intercomm_create(local_comm, local_leader, peer_comm, remote_leader, tag, newintercomm) -$(_doc_external(:MPI_Win_complete)) +$(_doc_external(:MPI_Intercomm_create)) """ -function MPI_Win_complete(win) - @mpichk ccall((:MPI_Win_complete, libmpi), Cint, (MPI_Win,), win) +function MPI_Intercomm_create(local_comm, local_leader, peer_comm, remote_leader, tag, newintercomm) + @mpichk ccall((:MPI_Intercomm_create, libmpi), Cint, (MPI_Comm, Cint, MPI_Comm, Cint, Cint, Ptr{MPI_Comm}), local_comm, local_leader, peer_comm, remote_leader, tag, newintercomm) end """ - MPI_Win_create(base, size, disp_unit, info, comm, win) + MPI_Intercomm_create_from_groups(local_group, local_leader, remote_group, remote_leader, stringtag, info, errhandler, newintercomm) -$(_doc_external(:MPI_Win_create)) +$(_doc_external(:MPI_Intercomm_create_from_groups)) """ -function MPI_Win_create(base, size, disp_unit, info, comm, win) - @mpichk ccall((:MPI_Win_create, libmpi), Cint, (MPIPtr, MPI_Aint, Cint, MPI_Info, MPI_Comm, Ptr{MPI_Win}), base, size, disp_unit, info, comm, win) +function MPI_Intercomm_create_from_groups(local_group, local_leader, remote_group, remote_leader, stringtag, info, errhandler, newintercomm) + @mpichk ccall((:MPI_Intercomm_create_from_groups, libmpi), Cint, (MPI_Group, Cint, MPI_Group, Cint, Ptr{Cchar}, MPI_Info, MPI_Errhandler, Ptr{MPI_Comm}), local_group, local_leader, remote_group, remote_leader, stringtag, info, errhandler, newintercomm) end """ - MPI_Win_create_dynamic(info, comm, win) + MPI_Intercomm_merge(intercomm, high, newintracomm) -$(_doc_external(:MPI_Win_create_dynamic)) +$(_doc_external(:MPI_Intercomm_merge)) """ -function MPI_Win_create_dynamic(info, comm, win) - @mpichk ccall((:MPI_Win_create_dynamic, libmpi), Cint, (MPI_Info, MPI_Comm, Ptr{MPI_Win}), info, comm, win) +function MPI_Intercomm_merge(intercomm, high, newintracomm) + @mpichk ccall((:MPI_Intercomm_merge, libmpi), Cint, (MPI_Comm, Cint, Ptr{MPI_Comm}), intercomm, high, newintracomm) end """ - MPI_Win_detach(win, base) + MPI_Iprobe(source, tag, comm, flag, status) -$(_doc_external(:MPI_Win_detach)) +$(_doc_external(:MPI_Iprobe)) """ -function MPI_Win_detach(win, base) - @mpichk ccall((:MPI_Win_detach, libmpi), Cint, (MPI_Win, MPIPtr), win, base) +function MPI_Iprobe(source, tag, comm, flag, status) + @mpichk ccall((:MPI_Iprobe, libmpi), Cint, (Cint, Cint, MPI_Comm, Ptr{Cint}, Ptr{MPI_Status}), source, tag, comm, flag, status) end """ - MPI_Win_fence(assert, win) + MPI_Irecv(buf, count, datatype, source, tag, comm, request) -$(_doc_external(:MPI_Win_fence)) +$(_doc_external(:MPI_Irecv)) """ -function MPI_Win_fence(assert, win) - @mpichk ccall((:MPI_Win_fence, libmpi), Cint, (Cint, MPI_Win), assert, win) +function MPI_Irecv(buf, count, datatype, source, tag, comm, request) + @mpichk ccall((:MPI_Irecv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, source, tag, comm, request) end """ - MPI_Win_flush(rank, win) + MPI_Irecv_c(buf, count, datatype, source, tag, comm, request) -$(_doc_external(:MPI_Win_flush)) +$(_doc_external(:MPI_Irecv_c)) """ -function MPI_Win_flush(rank, win) - @mpichk ccall((:MPI_Win_flush, libmpi), Cint, (Cint, MPI_Win), rank, win) +function MPI_Irecv_c(buf, count, datatype, source, tag, comm, request) + @mpichk ccall((:MPI_Irecv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, source, tag, comm, request) end """ - MPI_Win_flush_all(win) + MPI_Ireduce(sendbuf, recvbuf, count, datatype, op, root, comm, request) -$(_doc_external(:MPI_Win_flush_all)) +$(_doc_external(:MPI_Ireduce)) """ -function MPI_Win_flush_all(win) - @mpichk ccall((:MPI_Win_flush_all, libmpi), Cint, (MPI_Win,), win) +function MPI_Ireduce(sendbuf, recvbuf, count, datatype, op, root, comm, request) + @mpichk ccall((:MPI_Ireduce, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, root, comm, request) end """ - MPI_Win_flush_local(rank, win) + MPI_Ireduce_c(sendbuf, recvbuf, count, datatype, op, root, comm, request) -$(_doc_external(:MPI_Win_flush_local)) +$(_doc_external(:MPI_Ireduce_c)) """ -function MPI_Win_flush_local(rank, win) - @mpichk ccall((:MPI_Win_flush_local, libmpi), Cint, (Cint, MPI_Win), rank, win) +function MPI_Ireduce_c(sendbuf, recvbuf, count, datatype, op, root, comm, request) + @mpichk ccall((:MPI_Ireduce_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, root, comm, request) end """ - MPI_Win_flush_local_all(win) + MPI_Ireduce_scatter(sendbuf, recvbuf, recvcounts, datatype, op, comm, request) -$(_doc_external(:MPI_Win_flush_local_all)) +$(_doc_external(:MPI_Ireduce_scatter)) """ -function MPI_Win_flush_local_all(win) - @mpichk ccall((:MPI_Win_flush_local_all, libmpi), Cint, (MPI_Win,), win) +function MPI_Ireduce_scatter(sendbuf, recvbuf, recvcounts, datatype, op, comm, request) + @mpichk ccall((:MPI_Ireduce_scatter, libmpi), Cint, (MPIPtr, MPIPtr, Ptr{Cint}, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, recvcounts, datatype, op, comm, request) end """ - MPI_Win_free(win) + MPI_Ireduce_scatter_block(sendbuf, recvbuf, recvcount, datatype, op, comm, request) -$(_doc_external(:MPI_Win_free)) +$(_doc_external(:MPI_Ireduce_scatter_block)) """ -function MPI_Win_free(win) - @mpichk ccall((:MPI_Win_free, libmpi), Cint, (Ptr{MPI_Win},), win) +function MPI_Ireduce_scatter_block(sendbuf, recvbuf, recvcount, datatype, op, comm, request) + @mpichk ccall((:MPI_Ireduce_scatter_block, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, recvcount, datatype, op, comm, request) end """ - MPI_Win_get_group(win, group) + MPI_Ireduce_scatter_block_c(sendbuf, recvbuf, recvcount, datatype, op, comm, request) -$(_doc_external(:MPI_Win_get_group)) +$(_doc_external(:MPI_Ireduce_scatter_block_c)) """ -function MPI_Win_get_group(win, group) - @mpichk ccall((:MPI_Win_get_group, libmpi), Cint, (MPI_Win, Ptr{MPI_Group}), win, group) +function MPI_Ireduce_scatter_block_c(sendbuf, recvbuf, recvcount, datatype, op, comm, request) + @mpichk ccall((:MPI_Ireduce_scatter_block_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, recvcount, datatype, op, comm, request) end """ - MPI_Win_get_info(win, info_used) + MPI_Ireduce_scatter_c(sendbuf, recvbuf, recvcounts, datatype, op, comm, request) -$(_doc_external(:MPI_Win_get_info)) +$(_doc_external(:MPI_Ireduce_scatter_c)) """ -function MPI_Win_get_info(win, info_used) - @mpichk ccall((:MPI_Win_get_info, libmpi), Cint, (MPI_Win, Ptr{MPI_Info}), win, info_used) +function MPI_Ireduce_scatter_c(sendbuf, recvbuf, recvcounts, datatype, op, comm, request) + @mpichk ccall((:MPI_Ireduce_scatter_c, libmpi), Cint, (MPIPtr, MPIPtr, Ptr{MPI_Count}, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, recvcounts, datatype, op, comm, request) end """ - MPI_Win_get_name(win, win_name, resultlen) + MPI_Irsend(buf, count, datatype, dest, tag, comm, request) -$(_doc_external(:MPI_Win_get_name)) +$(_doc_external(:MPI_Irsend)) """ -function MPI_Win_get_name(win, win_name, resultlen) - @mpichk ccall((:MPI_Win_get_name, libmpi), Cint, (MPI_Win, Ptr{Cchar}, Ptr{Cint}), win, win_name, resultlen) +function MPI_Irsend(buf, count, datatype, dest, tag, comm, request) + @mpichk ccall((:MPI_Irsend, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) end """ - MPI_Win_lock(lock_type, rank, assert, win) + MPI_Irsend_c(buf, count, datatype, dest, tag, comm, request) -$(_doc_external(:MPI_Win_lock)) +$(_doc_external(:MPI_Irsend_c)) """ -function MPI_Win_lock(lock_type, rank, assert, win) - @mpichk ccall((:MPI_Win_lock, libmpi), Cint, (Cint, Cint, Cint, MPI_Win), lock_type, rank, assert, win) +function MPI_Irsend_c(buf, count, datatype, dest, tag, comm, request) + @mpichk ccall((:MPI_Irsend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) end """ - MPI_Win_lock_all(assert, win) + MPI_Is_thread_main(flag) -$(_doc_external(:MPI_Win_lock_all)) +$(_doc_external(:MPI_Is_thread_main)) """ -function MPI_Win_lock_all(assert, win) - @mpichk ccall((:MPI_Win_lock_all, libmpi), Cint, (Cint, MPI_Win), assert, win) +function MPI_Is_thread_main(flag) + @mpichk ccall((:MPI_Is_thread_main, libmpi), Cint, (Ptr{Cint},), flag) end """ - MPI_Win_post(group, assert, win) + MPI_Iscan(sendbuf, recvbuf, count, datatype, op, comm, request) -$(_doc_external(:MPI_Win_post)) +$(_doc_external(:MPI_Iscan)) """ -function MPI_Win_post(group, assert, win) - @mpichk ccall((:MPI_Win_post, libmpi), Cint, (MPI_Group, Cint, MPI_Win), group, assert, win) +function MPI_Iscan(sendbuf, recvbuf, count, datatype, op, comm, request) + @mpichk ccall((:MPI_Iscan, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, request) end """ - MPI_Win_set_info(win, info) + MPI_Iscan_c(sendbuf, recvbuf, count, datatype, op, comm, request) -$(_doc_external(:MPI_Win_set_info)) +$(_doc_external(:MPI_Iscan_c)) """ -function MPI_Win_set_info(win, info) - @mpichk ccall((:MPI_Win_set_info, libmpi), Cint, (MPI_Win, MPI_Info), win, info) +function MPI_Iscan_c(sendbuf, recvbuf, count, datatype, op, comm, request) + @mpichk ccall((:MPI_Iscan_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, request) end """ - MPI_Win_set_name(win, win_name) + MPI_Iscatter(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) -$(_doc_external(:MPI_Win_set_name)) +$(_doc_external(:MPI_Iscatter)) """ -function MPI_Win_set_name(win, win_name) - @mpichk ccall((:MPI_Win_set_name, libmpi), Cint, (MPI_Win, Ptr{Cchar}), win, win_name) +function MPI_Iscatter(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) + @mpichk ccall((:MPI_Iscatter, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) end """ - MPI_Win_shared_query(win, rank, size, disp_unit, baseptr) + MPI_Iscatter_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) -$(_doc_external(:MPI_Win_shared_query)) +$(_doc_external(:MPI_Iscatter_c)) """ -function MPI_Win_shared_query(win, rank, size, disp_unit, baseptr) - @mpichk ccall((:MPI_Win_shared_query, libmpi), Cint, (MPI_Win, Cint, Ptr{MPI_Aint}, Ptr{Cint}, MPIPtr), win, rank, size, disp_unit, baseptr) +function MPI_Iscatter_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) + @mpichk ccall((:MPI_Iscatter_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) end """ - MPI_Win_start(group, assert, win) + MPI_Iscatterv(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, request) -$(_doc_external(:MPI_Win_start)) +$(_doc_external(:MPI_Iscatterv)) """ -function MPI_Win_start(group, assert, win) - @mpichk ccall((:MPI_Win_start, libmpi), Cint, (MPI_Group, Cint, MPI_Win), group, assert, win) +function MPI_Iscatterv(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, request) + @mpichk ccall((:MPI_Iscatterv, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, request) end """ - MPI_Win_sync(win) + MPI_Iscatterv_c(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, request) -$(_doc_external(:MPI_Win_sync)) +$(_doc_external(:MPI_Iscatterv_c)) """ -function MPI_Win_sync(win) - @mpichk ccall((:MPI_Win_sync, libmpi), Cint, (MPI_Win,), win) +function MPI_Iscatterv_c(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, request) + @mpichk ccall((:MPI_Iscatterv_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, request) end """ - MPI_Win_test(win, flag) + MPI_Isend(buf, count, datatype, dest, tag, comm, request) -$(_doc_external(:MPI_Win_test)) +$(_doc_external(:MPI_Isend)) """ -function MPI_Win_test(win, flag) - @mpichk ccall((:MPI_Win_test, libmpi), Cint, (MPI_Win, Ptr{Cint}), win, flag) +function MPI_Isend(buf, count, datatype, dest, tag, comm, request) + @mpichk ccall((:MPI_Isend, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) end """ - MPI_Win_unlock(rank, win) + MPI_Isend_c(buf, count, datatype, dest, tag, comm, request) -$(_doc_external(:MPI_Win_unlock)) +$(_doc_external(:MPI_Isend_c)) """ -function MPI_Win_unlock(rank, win) - @mpichk ccall((:MPI_Win_unlock, libmpi), Cint, (Cint, MPI_Win), rank, win) +function MPI_Isend_c(buf, count, datatype, dest, tag, comm, request) + @mpichk ccall((:MPI_Isend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) end """ - MPI_Win_unlock_all(win) + MPI_Isendrecv(sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, request) -$(_doc_external(:MPI_Win_unlock_all)) +$(_doc_external(:MPI_Isendrecv)) """ -function MPI_Win_unlock_all(win) - @mpichk ccall((:MPI_Win_unlock_all, libmpi), Cint, (MPI_Win,), win) +function MPI_Isendrecv(sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, request) + @mpichk ccall((:MPI_Isendrecv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, request) end """ - MPI_Win_wait(win) + MPI_Isendrecv_c(sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, request) -$(_doc_external(:MPI_Win_wait)) +$(_doc_external(:MPI_Isendrecv_c)) """ -function MPI_Win_wait(win) - @mpichk ccall((:MPI_Win_wait, libmpi), Cint, (MPI_Win,), win) +function MPI_Isendrecv_c(sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, request) + @mpichk ccall((:MPI_Isendrecv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, request) end """ - MPI_Close_port(port_name) + MPI_Isendrecv_replace(buf, count, datatype, dest, sendtag, source, recvtag, comm, request) -$(_doc_external(:MPI_Close_port)) +$(_doc_external(:MPI_Isendrecv_replace)) """ -function MPI_Close_port(port_name) - @mpichk ccall((:MPI_Close_port, libmpi), Cint, (Ptr{Cchar},), port_name) +function MPI_Isendrecv_replace(buf, count, datatype, dest, sendtag, source, recvtag, comm, request) + @mpichk ccall((:MPI_Isendrecv_replace, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, sendtag, source, recvtag, comm, request) end """ - MPI_Comm_accept(port_name, info, root, comm, newcomm) + MPI_Isendrecv_replace_c(buf, count, datatype, dest, sendtag, source, recvtag, comm, request) -$(_doc_external(:MPI_Comm_accept)) +$(_doc_external(:MPI_Isendrecv_replace_c)) """ -function MPI_Comm_accept(port_name, info, root, comm, newcomm) - @mpichk ccall((:MPI_Comm_accept, libmpi), Cint, (Ptr{Cchar}, MPI_Info, Cint, MPI_Comm, Ptr{MPI_Comm}), port_name, info, root, comm, newcomm) +function MPI_Isendrecv_replace_c(buf, count, datatype, dest, sendtag, source, recvtag, comm, request) + @mpichk ccall((:MPI_Isendrecv_replace_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, sendtag, source, recvtag, comm, request) end """ - MPI_Comm_connect(port_name, info, root, comm, newcomm) + MPI_Issend(buf, count, datatype, dest, tag, comm, request) -$(_doc_external(:MPI_Comm_connect)) +$(_doc_external(:MPI_Issend)) """ -function MPI_Comm_connect(port_name, info, root, comm, newcomm) - @mpichk ccall((:MPI_Comm_connect, libmpi), Cint, (Ptr{Cchar}, MPI_Info, Cint, MPI_Comm, Ptr{MPI_Comm}), port_name, info, root, comm, newcomm) +function MPI_Issend(buf, count, datatype, dest, tag, comm, request) + @mpichk ccall((:MPI_Issend, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) end """ - MPI_Comm_disconnect(comm) + MPI_Issend_c(buf, count, datatype, dest, tag, comm, request) -$(_doc_external(:MPI_Comm_disconnect)) +$(_doc_external(:MPI_Issend_c)) """ -function MPI_Comm_disconnect(comm) - @mpichk ccall((:MPI_Comm_disconnect, libmpi), Cint, (Ptr{MPI_Comm},), comm) +function MPI_Issend_c(buf, count, datatype, dest, tag, comm, request) + @mpichk ccall((:MPI_Issend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) end """ - MPI_Comm_get_parent(parent) + MPI_Keyval_create(copy_fn, delete_fn, keyval, extra_state) -$(_doc_external(:MPI_Comm_get_parent)) +$(_doc_external(:MPI_Keyval_create)) """ -function MPI_Comm_get_parent(parent) - @mpichk ccall((:MPI_Comm_get_parent, libmpi), Cint, (Ptr{MPI_Comm},), parent) +function MPI_Keyval_create(copy_fn, delete_fn, keyval, extra_state) + @mpichk ccall((:MPI_Keyval_create, libmpi), Cint, (Ptr{MPI_Copy_function}, Ptr{MPI_Delete_function}, Ptr{Cint}, MPIPtr), copy_fn, delete_fn, keyval, extra_state) end """ - MPI_Comm_join(fd, intercomm) + MPI_Keyval_free(keyval) -$(_doc_external(:MPI_Comm_join)) +$(_doc_external(:MPI_Keyval_free)) """ -function MPI_Comm_join(fd, intercomm) - @mpichk ccall((:MPI_Comm_join, libmpi), Cint, (Cint, Ptr{MPI_Comm}), fd, intercomm) +function MPI_Keyval_free(keyval) + @mpichk ccall((:MPI_Keyval_free, libmpi), Cint, (Ptr{Cint},), keyval) end """ - MPI_Comm_spawn(command, argv, maxprocs, info, root, comm, intercomm, array_of_errcodes) + MPI_Lookup_name(service_name, info, port_name) -$(_doc_external(:MPI_Comm_spawn)) +$(_doc_external(:MPI_Lookup_name)) """ -function MPI_Comm_spawn(command, argv, maxprocs, info, root, comm, intercomm, array_of_errcodes) - @mpichk ccall((:MPI_Comm_spawn, libmpi), Cint, (Ptr{Cchar}, Ptr{Ptr{Cchar}}, Cint, MPI_Info, Cint, MPI_Comm, Ptr{MPI_Comm}, Ptr{Cint}), command, argv, maxprocs, info, root, comm, intercomm, array_of_errcodes) +function MPI_Lookup_name(service_name, info, port_name) + @mpichk ccall((:MPI_Lookup_name, libmpi), Cint, (Ptr{Cchar}, MPI_Info, Ptr{Cchar}), service_name, info, port_name) end """ - MPI_Comm_spawn_multiple(count, array_of_commands, array_of_argv, array_of_maxprocs, array_of_info, root, comm, intercomm, array_of_errcodes) + MPI_Message_fromint(message) -$(_doc_external(:MPI_Comm_spawn_multiple)) +$(_doc_external(:MPI_Message_fromint)) """ -function MPI_Comm_spawn_multiple(count, array_of_commands, array_of_argv, array_of_maxprocs, array_of_info, root, comm, intercomm, array_of_errcodes) - @mpichk ccall((:MPI_Comm_spawn_multiple, libmpi), Cint, (Cint, Ptr{Ptr{Cchar}}, Ptr{Ptr{Ptr{Cchar}}}, Ptr{Cint}, Ptr{MPI_Info}, Cint, MPI_Comm, Ptr{MPI_Comm}, Ptr{Cint}), count, array_of_commands, array_of_argv, array_of_maxprocs, array_of_info, root, comm, intercomm, array_of_errcodes) +function MPI_Message_fromint(message) + @mpichk ccall((:MPI_Message_fromint, libmpi), MPI_Message, (Cint,), message) end """ - MPI_Lookup_name(service_name, info, port_name) + MPI_Message_toint(message) -$(_doc_external(:MPI_Lookup_name)) +$(_doc_external(:MPI_Message_toint)) """ -function MPI_Lookup_name(service_name, info, port_name) - @mpichk ccall((:MPI_Lookup_name, libmpi), Cint, (Ptr{Cchar}, MPI_Info, Ptr{Cchar}), service_name, info, port_name) +function MPI_Message_toint(message) + @mpichk ccall((:MPI_Message_toint, libmpi), Cint, (MPI_Message,), message) end """ - MPI_Open_port(info, port_name) + MPI_Mprobe(source, tag, comm, message, status) -$(_doc_external(:MPI_Open_port)) +$(_doc_external(:MPI_Mprobe)) """ -function MPI_Open_port(info, port_name) - @mpichk ccall((:MPI_Open_port, libmpi), Cint, (MPI_Info, Ptr{Cchar}), info, port_name) +function MPI_Mprobe(source, tag, comm, message, status) + @mpichk ccall((:MPI_Mprobe, libmpi), Cint, (Cint, Cint, MPI_Comm, Ptr{MPI_Message}, Ptr{MPI_Status}), source, tag, comm, message, status) end """ - MPI_Publish_name(service_name, info, port_name) + MPI_Mrecv(buf, count, datatype, message, status) -$(_doc_external(:MPI_Publish_name)) +$(_doc_external(:MPI_Mrecv)) """ -function MPI_Publish_name(service_name, info, port_name) - @mpichk ccall((:MPI_Publish_name, libmpi), Cint, (Ptr{Cchar}, MPI_Info, Ptr{Cchar}), service_name, info, port_name) +function MPI_Mrecv(buf, count, datatype, message, status) + @mpichk ccall((:MPI_Mrecv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Message}, Ptr{MPI_Status}), buf, count, datatype, message, status) end """ - MPI_Unpublish_name(service_name, info, port_name) + MPI_Mrecv_c(buf, count, datatype, message, status) -$(_doc_external(:MPI_Unpublish_name)) +$(_doc_external(:MPI_Mrecv_c)) """ -function MPI_Unpublish_name(service_name, info, port_name) - @mpichk ccall((:MPI_Unpublish_name, libmpi), Cint, (Ptr{Cchar}, MPI_Info, Ptr{Cchar}), service_name, info, port_name) +function MPI_Mrecv_c(buf, count, datatype, message, status) + @mpichk ccall((:MPI_Mrecv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Message}, Ptr{MPI_Status}), buf, count, datatype, message, status) end """ - MPI_Wtick() + MPI_Neighbor_allgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) -$(_doc_external(:MPI_Wtick)) +$(_doc_external(:MPI_Neighbor_allgather)) """ -function MPI_Wtick() - @mpicall ccall((:MPI_Wtick, libmpi), Cdouble, ()) +function MPI_Neighbor_allgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) + @mpichk ccall((:MPI_Neighbor_allgather, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) v"3.0.0" end """ - MPI_Wtime() + MPI_Neighbor_allgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) -$(_doc_external(:MPI_Wtime)) +$(_doc_external(:MPI_Neighbor_allgather_c)) """ -function MPI_Wtime() - @mpicall ccall((:MPI_Wtime, libmpi), Cdouble, ()) +function MPI_Neighbor_allgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) + @mpichk ccall((:MPI_Neighbor_allgather_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) end """ - MPI_Cart_coords(comm, rank, maxdims, coords) + MPI_Neighbor_allgather_init(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) -$(_doc_external(:MPI_Cart_coords)) +$(_doc_external(:MPI_Neighbor_allgather_init)) """ -function MPI_Cart_coords(comm, rank, maxdims, coords) - @mpichk ccall((:MPI_Cart_coords, libmpi), Cint, (MPI_Comm, Cint, Cint, Ptr{Cint}), comm, rank, maxdims, coords) +function MPI_Neighbor_allgather_init(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) + @mpichk ccall((:MPI_Neighbor_allgather_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) end """ - MPI_Cart_create(comm_old, ndims, dims, periods, reorder, comm_cart) + MPI_Neighbor_allgather_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) -$(_doc_external(:MPI_Cart_create)) +$(_doc_external(:MPI_Neighbor_allgather_init_c)) """ -function MPI_Cart_create(comm_old, ndims, dims, periods, reorder, comm_cart) - @mpichk ccall((:MPI_Cart_create, libmpi), Cint, (MPI_Comm, Cint, Ptr{Cint}, Ptr{Cint}, Cint, Ptr{MPI_Comm}), comm_old, ndims, dims, periods, reorder, comm_cart) +function MPI_Neighbor_allgather_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) + @mpichk ccall((:MPI_Neighbor_allgather_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) end """ - MPI_Cart_get(comm, maxdims, dims, periods, coords) + MPI_Neighbor_allgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) -$(_doc_external(:MPI_Cart_get)) +$(_doc_external(:MPI_Neighbor_allgatherv)) """ -function MPI_Cart_get(comm, maxdims, dims, periods, coords) - @mpichk ccall((:MPI_Cart_get, libmpi), Cint, (MPI_Comm, Cint, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}), comm, maxdims, dims, periods, coords) +function MPI_Neighbor_allgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) + @mpichk ccall((:MPI_Neighbor_allgatherv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) v"3.0.0" end """ - MPI_Cart_map(comm, ndims, dims, periods, newrank) + MPI_Neighbor_allgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) -$(_doc_external(:MPI_Cart_map)) +$(_doc_external(:MPI_Neighbor_allgatherv_c)) """ -function MPI_Cart_map(comm, ndims, dims, periods, newrank) - @mpichk ccall((:MPI_Cart_map, libmpi), Cint, (MPI_Comm, Cint, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}), comm, ndims, dims, periods, newrank) +function MPI_Neighbor_allgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) + @mpichk ccall((:MPI_Neighbor_allgatherv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) end """ - MPI_Cart_rank(comm, coords, rank) + MPI_Neighbor_allgatherv_init(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) -$(_doc_external(:MPI_Cart_rank)) +$(_doc_external(:MPI_Neighbor_allgatherv_init)) """ -function MPI_Cart_rank(comm, coords, rank) - @mpichk ccall((:MPI_Cart_rank, libmpi), Cint, (MPI_Comm, Ptr{Cint}, Ptr{Cint}), comm, coords, rank) +function MPI_Neighbor_allgatherv_init(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) + @mpichk ccall((:MPI_Neighbor_allgatherv_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) end """ - MPI_Cart_shift(comm, direction, disp, rank_source, rank_dest) + MPI_Neighbor_allgatherv_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) -$(_doc_external(:MPI_Cart_shift)) +$(_doc_external(:MPI_Neighbor_allgatherv_init_c)) """ -function MPI_Cart_shift(comm, direction, disp, rank_source, rank_dest) - @mpichk ccall((:MPI_Cart_shift, libmpi), Cint, (MPI_Comm, Cint, Cint, Ptr{Cint}, Ptr{Cint}), comm, direction, disp, rank_source, rank_dest) +function MPI_Neighbor_allgatherv_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) + @mpichk ccall((:MPI_Neighbor_allgatherv_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) end """ - MPI_Cart_sub(comm, remain_dims, newcomm) + MPI_Neighbor_alltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) -$(_doc_external(:MPI_Cart_sub)) +$(_doc_external(:MPI_Neighbor_alltoall)) """ -function MPI_Cart_sub(comm, remain_dims, newcomm) - @mpichk ccall((:MPI_Cart_sub, libmpi), Cint, (MPI_Comm, Ptr{Cint}, Ptr{MPI_Comm}), comm, remain_dims, newcomm) +function MPI_Neighbor_alltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) + @mpichk ccall((:MPI_Neighbor_alltoall, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) v"3.0.0" end """ - MPI_Cartdim_get(comm, ndims) + MPI_Neighbor_alltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) -$(_doc_external(:MPI_Cartdim_get)) +$(_doc_external(:MPI_Neighbor_alltoall_c)) """ -function MPI_Cartdim_get(comm, ndims) - @mpichk ccall((:MPI_Cartdim_get, libmpi), Cint, (MPI_Comm, Ptr{Cint}), comm, ndims) +function MPI_Neighbor_alltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) + @mpichk ccall((:MPI_Neighbor_alltoall_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) end """ - MPI_Dims_create(nnodes, ndims, dims) + MPI_Neighbor_alltoall_init(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) -$(_doc_external(:MPI_Dims_create)) +$(_doc_external(:MPI_Neighbor_alltoall_init)) """ -function MPI_Dims_create(nnodes, ndims, dims) - @mpichk ccall((:MPI_Dims_create, libmpi), Cint, (Cint, Cint, Ptr{Cint}), nnodes, ndims, dims) +function MPI_Neighbor_alltoall_init(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) + @mpichk ccall((:MPI_Neighbor_alltoall_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) end """ - MPI_Dist_graph_create(comm_old, n, sources, degrees, destinations, weights, info, reorder, comm_dist_graph) + MPI_Neighbor_alltoall_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) -$(_doc_external(:MPI_Dist_graph_create)) +$(_doc_external(:MPI_Neighbor_alltoall_init_c)) """ -function MPI_Dist_graph_create(comm_old, n, sources, degrees, destinations, weights, info, reorder, comm_dist_graph) - @mpichk ccall((:MPI_Dist_graph_create, libmpi), Cint, (MPI_Comm, Cint, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}, MPI_Info, Cint, Ptr{MPI_Comm}), comm_old, n, sources, degrees, destinations, weights, info, reorder, comm_dist_graph) v"2.2.0" +function MPI_Neighbor_alltoall_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) + @mpichk ccall((:MPI_Neighbor_alltoall_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) end """ - MPI_Dist_graph_create_adjacent(comm_old, indegree, sources, sourceweights, outdegree, destinations, destweights, info, reorder, comm_dist_graph) + MPI_Neighbor_alltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) -$(_doc_external(:MPI_Dist_graph_create_adjacent)) +$(_doc_external(:MPI_Neighbor_alltoallv)) """ -function MPI_Dist_graph_create_adjacent(comm_old, indegree, sources, sourceweights, outdegree, destinations, destweights, info, reorder, comm_dist_graph) - @mpichk ccall((:MPI_Dist_graph_create_adjacent, libmpi), Cint, (MPI_Comm, Cint, Ptr{Cint}, Ptr{Cint}, Cint, Ptr{Cint}, Ptr{Cint}, MPI_Info, Cint, Ptr{MPI_Comm}), comm_old, indegree, sources, sourceweights, outdegree, destinations, destweights, info, reorder, comm_dist_graph) v"2.2.0" +function MPI_Neighbor_alltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) + @mpichk ccall((:MPI_Neighbor_alltoallv, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) v"3.0.0" end """ - MPI_Dist_graph_neighbors(comm, maxindegree, sources, sourceweights, maxoutdegree, destinations, destweights) + MPI_Neighbor_alltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) -$(_doc_external(:MPI_Dist_graph_neighbors)) +$(_doc_external(:MPI_Neighbor_alltoallv_c)) """ -function MPI_Dist_graph_neighbors(comm, maxindegree, sources, sourceweights, maxoutdegree, destinations, destweights) - @mpichk ccall((:MPI_Dist_graph_neighbors, libmpi), Cint, (MPI_Comm, Cint, Ptr{Cint}, Ptr{Cint}, Cint, Ptr{Cint}, Ptr{Cint}), comm, maxindegree, sources, sourceweights, maxoutdegree, destinations, destweights) v"2.2.0" +function MPI_Neighbor_alltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) + @mpichk ccall((:MPI_Neighbor_alltoallv_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) end """ - MPI_Dist_graph_neighbors_count(comm, indegree, outdegree, weighted) + MPI_Neighbor_alltoallv_init(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) -$(_doc_external(:MPI_Dist_graph_neighbors_count)) +$(_doc_external(:MPI_Neighbor_alltoallv_init)) """ -function MPI_Dist_graph_neighbors_count(comm, indegree, outdegree, weighted) - @mpichk ccall((:MPI_Dist_graph_neighbors_count, libmpi), Cint, (MPI_Comm, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}), comm, indegree, outdegree, weighted) v"2.2.0" +function MPI_Neighbor_alltoallv_init(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) + @mpichk ccall((:MPI_Neighbor_alltoallv_init, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) end """ - MPI_Get_hw_resource_info(hw_info) + MPI_Neighbor_alltoallv_init_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) -$(_doc_external(:MPI_Get_hw_resource_info)) +$(_doc_external(:MPI_Neighbor_alltoallv_init_c)) """ -function MPI_Get_hw_resource_info(hw_info) - @mpichk ccall((:MPI_Get_hw_resource_info, libmpi), Cint, (Ptr{MPI_Info},), hw_info) +function MPI_Neighbor_alltoallv_init_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) + @mpichk ccall((:MPI_Neighbor_alltoallv_init_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) end """ - MPI_Graph_create(comm_old, nnodes, indx, edges, reorder, comm_graph) + MPI_Neighbor_alltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) -$(_doc_external(:MPI_Graph_create)) +$(_doc_external(:MPI_Neighbor_alltoallw)) """ -function MPI_Graph_create(comm_old, nnodes, indx, edges, reorder, comm_graph) - @mpichk ccall((:MPI_Graph_create, libmpi), Cint, (MPI_Comm, Cint, Ptr{Cint}, Ptr{Cint}, Cint, Ptr{MPI_Comm}), comm_old, nnodes, indx, edges, reorder, comm_graph) +function MPI_Neighbor_alltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) + @mpichk ccall((:MPI_Neighbor_alltoallw, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) end """ - MPI_Graph_get(comm, maxindex, maxedges, indx, edges) + MPI_Neighbor_alltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) -$(_doc_external(:MPI_Graph_get)) +$(_doc_external(:MPI_Neighbor_alltoallw_c)) """ -function MPI_Graph_get(comm, maxindex, maxedges, indx, edges) - @mpichk ccall((:MPI_Graph_get, libmpi), Cint, (MPI_Comm, Cint, Cint, Ptr{Cint}, Ptr{Cint}), comm, maxindex, maxedges, indx, edges) +function MPI_Neighbor_alltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) + @mpichk ccall((:MPI_Neighbor_alltoallw_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) end """ - MPI_Graph_map(comm, nnodes, indx, edges, newrank) + MPI_Neighbor_alltoallw_init(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) -$(_doc_external(:MPI_Graph_map)) +$(_doc_external(:MPI_Neighbor_alltoallw_init)) """ -function MPI_Graph_map(comm, nnodes, indx, edges, newrank) - @mpichk ccall((:MPI_Graph_map, libmpi), Cint, (MPI_Comm, Cint, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}), comm, nnodes, indx, edges, newrank) +function MPI_Neighbor_alltoallw_init(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) + @mpichk ccall((:MPI_Neighbor_alltoallw_init, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) end """ - MPI_Graph_neighbors(comm, rank, maxneighbors, neighbors) + MPI_Neighbor_alltoallw_init_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) -$(_doc_external(:MPI_Graph_neighbors)) +$(_doc_external(:MPI_Neighbor_alltoallw_init_c)) """ -function MPI_Graph_neighbors(comm, rank, maxneighbors, neighbors) - @mpichk ccall((:MPI_Graph_neighbors, libmpi), Cint, (MPI_Comm, Cint, Cint, Ptr{Cint}), comm, rank, maxneighbors, neighbors) +function MPI_Neighbor_alltoallw_init_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) + @mpichk ccall((:MPI_Neighbor_alltoallw_init_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) end """ - MPI_Graph_neighbors_count(comm, rank, nneighbors) + MPI_Op_commutative(op, commute) -$(_doc_external(:MPI_Graph_neighbors_count)) +$(_doc_external(:MPI_Op_commutative)) """ -function MPI_Graph_neighbors_count(comm, rank, nneighbors) - @mpichk ccall((:MPI_Graph_neighbors_count, libmpi), Cint, (MPI_Comm, Cint, Ptr{Cint}), comm, rank, nneighbors) +function MPI_Op_commutative(op, commute) + @mpichk ccall((:MPI_Op_commutative, libmpi), Cint, (MPI_Op, Ptr{Cint}), op, commute) end """ - MPI_Graphdims_get(comm, nnodes, nedges) + MPI_Op_create(user_fn, commute, op) -$(_doc_external(:MPI_Graphdims_get)) +$(_doc_external(:MPI_Op_create)) """ -function MPI_Graphdims_get(comm, nnodes, nedges) - @mpichk ccall((:MPI_Graphdims_get, libmpi), Cint, (MPI_Comm, Ptr{Cint}, Ptr{Cint}), comm, nnodes, nedges) +function MPI_Op_create(user_fn, commute, op) + @mpichk ccall((:MPI_Op_create, libmpi), Cint, (Ptr{MPI_User_function}, Cint, Ptr{MPI_Op}), user_fn, commute, op) end """ - MPI_Topo_test(comm, status) + MPI_Op_create_c(user_fn, commute, op) -$(_doc_external(:MPI_Topo_test)) +$(_doc_external(:MPI_Op_create_c)) """ -function MPI_Topo_test(comm, status) - @mpichk ccall((:MPI_Topo_test, libmpi), Cint, (MPI_Comm, Ptr{Cint}), comm, status) +function MPI_Op_create_c(user_fn, commute, op) + @mpichk ccall((:MPI_Op_create_c, libmpi), Cint, (Ptr{MPI_User_function_c}, Cint, Ptr{MPI_Op}), user_fn, commute, op) end """ - MPI_File_c2f(file) + MPI_Op_free(op) -$(_doc_external(:MPI_File_c2f)) +$(_doc_external(:MPI_Op_free)) """ -function MPI_File_c2f(file) - @mpichk ccall((:MPI_File_c2f, libmpi), MPI_Fint, (MPI_File,), file) +function MPI_Op_free(op) + @mpichk ccall((:MPI_Op_free, libmpi), Cint, (Ptr{MPI_Op},), op) end """ - MPI_File_close(fh) + MPI_Op_fromint(op) -$(_doc_external(:MPI_File_close)) +$(_doc_external(:MPI_Op_fromint)) """ -function MPI_File_close(fh) - @mpichk ccall((:MPI_File_close, libmpi), Cint, (Ptr{MPI_File},), fh) +function MPI_Op_fromint(op) + @mpichk ccall((:MPI_Op_fromint, libmpi), MPI_Op, (Cint,), op) end """ - MPI_File_delete(filename, info) + MPI_Op_toint(op) -$(_doc_external(:MPI_File_delete)) +$(_doc_external(:MPI_Op_toint)) """ -function MPI_File_delete(filename, info) - @mpichk ccall((:MPI_File_delete, libmpi), Cint, (Ptr{Cchar}, MPI_Info), filename, info) +function MPI_Op_toint(op) + @mpichk ccall((:MPI_Op_toint, libmpi), Cint, (MPI_Op,), op) end """ - MPI_File_f2c(file) + MPI_Open_port(info, port_name) -$(_doc_external(:MPI_File_f2c)) +$(_doc_external(:MPI_Open_port)) """ -function MPI_File_f2c(file) - @mpichk ccall((:MPI_File_f2c, libmpi), MPI_File, (MPI_Fint,), file) +function MPI_Open_port(info, port_name) + @mpichk ccall((:MPI_Open_port, libmpi), Cint, (MPI_Info, Ptr{Cchar}), info, port_name) end """ - MPI_File_get_amode(fh, amode) + MPI_Pack(inbuf, incount, datatype, outbuf, outsize, position, comm) -$(_doc_external(:MPI_File_get_amode)) +$(_doc_external(:MPI_Pack)) """ -function MPI_File_get_amode(fh, amode) - @mpichk ccall((:MPI_File_get_amode, libmpi), Cint, (MPI_File, Ptr{Cint}), fh, amode) +function MPI_Pack(inbuf, incount, datatype, outbuf, outsize, position, comm) + @mpichk ccall((:MPI_Pack, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, Ptr{Cint}, MPI_Comm), inbuf, incount, datatype, outbuf, outsize, position, comm) end """ - MPI_File_get_atomicity(fh, flag) + MPI_Pack_c(inbuf, incount, datatype, outbuf, outsize, position, comm) -$(_doc_external(:MPI_File_get_atomicity)) +$(_doc_external(:MPI_Pack_c)) """ -function MPI_File_get_atomicity(fh, flag) - @mpichk ccall((:MPI_File_get_atomicity, libmpi), Cint, (MPI_File, Ptr{Cint}), fh, flag) +function MPI_Pack_c(inbuf, incount, datatype, outbuf, outsize, position, comm) + @mpichk ccall((:MPI_Pack_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, Ptr{MPI_Count}, MPI_Comm), inbuf, incount, datatype, outbuf, outsize, position, comm) end """ - MPI_File_get_byte_offset(fh, offset, disp) + MPI_Pack_external(datarep, inbuf, incount, datatype, outbuf, outsize, position) -$(_doc_external(:MPI_File_get_byte_offset)) +$(_doc_external(:MPI_Pack_external)) """ -function MPI_File_get_byte_offset(fh, offset, disp) - @mpichk ccall((:MPI_File_get_byte_offset, libmpi), Cint, (MPI_File, MPI_Offset, Ptr{MPI_Offset}), fh, offset, disp) +function MPI_Pack_external(datarep, inbuf, incount, datatype, outbuf, outsize, position) + @mpichk ccall((:MPI_Pack_external, libmpi), Cint, (Ptr{Cchar}, MPIPtr, Cint, MPI_Datatype, MPIPtr, MPI_Aint, Ptr{MPI_Aint}), datarep, inbuf, incount, datatype, outbuf, outsize, position) end """ - MPI_File_get_group(fh, group) + MPI_Pack_external_c(datarep, inbuf, incount, datatype, outbuf, outsize, position) -$(_doc_external(:MPI_File_get_group)) +$(_doc_external(:MPI_Pack_external_c)) """ -function MPI_File_get_group(fh, group) - @mpichk ccall((:MPI_File_get_group, libmpi), Cint, (MPI_File, Ptr{MPI_Group}), fh, group) +function MPI_Pack_external_c(datarep, inbuf, incount, datatype, outbuf, outsize, position) + @mpichk ccall((:MPI_Pack_external_c, libmpi), Cint, (Ptr{Cchar}, MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, Ptr{MPI_Count}), datarep, inbuf, incount, datatype, outbuf, outsize, position) end """ - MPI_File_get_info(fh, info_used) + MPI_Pack_external_size(datarep, incount, datatype, size) -$(_doc_external(:MPI_File_get_info)) +$(_doc_external(:MPI_Pack_external_size)) """ -function MPI_File_get_info(fh, info_used) - @mpichk ccall((:MPI_File_get_info, libmpi), Cint, (MPI_File, Ptr{MPI_Info}), fh, info_used) +function MPI_Pack_external_size(datarep, incount, datatype, size) + @mpichk ccall((:MPI_Pack_external_size, libmpi), Cint, (Ptr{Cchar}, Cint, MPI_Datatype, Ptr{MPI_Aint}), datarep, incount, datatype, size) end """ - MPI_File_get_position(fh, offset) + MPI_Pack_external_size_c(datarep, incount, datatype, size) -$(_doc_external(:MPI_File_get_position)) +$(_doc_external(:MPI_Pack_external_size_c)) """ -function MPI_File_get_position(fh, offset) - @mpichk ccall((:MPI_File_get_position, libmpi), Cint, (MPI_File, Ptr{MPI_Offset}), fh, offset) +function MPI_Pack_external_size_c(datarep, incount, datatype, size) + @mpichk ccall((:MPI_Pack_external_size_c, libmpi), Cint, (Ptr{Cchar}, MPI_Count, MPI_Datatype, Ptr{MPI_Count}), datarep, incount, datatype, size) end """ - MPI_File_get_position_shared(fh, offset) + MPI_Pack_size(incount, datatype, comm, size) -$(_doc_external(:MPI_File_get_position_shared)) +$(_doc_external(:MPI_Pack_size)) """ -function MPI_File_get_position_shared(fh, offset) - @mpichk ccall((:MPI_File_get_position_shared, libmpi), Cint, (MPI_File, Ptr{MPI_Offset}), fh, offset) +function MPI_Pack_size(incount, datatype, comm, size) + @mpichk ccall((:MPI_Pack_size, libmpi), Cint, (Cint, MPI_Datatype, MPI_Comm, Ptr{Cint}), incount, datatype, comm, size) end """ - MPI_File_get_size(fh, size) + MPI_Pack_size_c(incount, datatype, comm, size) -$(_doc_external(:MPI_File_get_size)) +$(_doc_external(:MPI_Pack_size_c)) """ -function MPI_File_get_size(fh, size) - @mpichk ccall((:MPI_File_get_size, libmpi), Cint, (MPI_File, Ptr{MPI_Offset}), fh, size) +function MPI_Pack_size_c(incount, datatype, comm, size) + @mpichk ccall((:MPI_Pack_size_c, libmpi), Cint, (MPI_Count, MPI_Datatype, MPI_Comm, Ptr{MPI_Count}), incount, datatype, comm, size) end """ - MPI_File_get_type_extent(fh, datatype, extent) + MPI_Parrived(request, partition, flag) -$(_doc_external(:MPI_File_get_type_extent)) +$(_doc_external(:MPI_Parrived)) """ -function MPI_File_get_type_extent(fh, datatype, extent) - @mpichk ccall((:MPI_File_get_type_extent, libmpi), Cint, (MPI_File, MPI_Datatype, Ptr{MPI_Aint}), fh, datatype, extent) +function MPI_Parrived(request, partition, flag) + @mpichk ccall((:MPI_Parrived, libmpi), Cint, (MPI_Request, Cint, Ptr{Cint}), request, partition, flag) end """ - MPI_File_get_view(fh, disp, etype, filetype, datarep) + MPI_Pready(partition, request) -$(_doc_external(:MPI_File_get_view)) +$(_doc_external(:MPI_Pready)) """ -function MPI_File_get_view(fh, disp, etype, filetype, datarep) - @mpichk ccall((:MPI_File_get_view, libmpi), Cint, (MPI_File, Ptr{MPI_Offset}, Ptr{MPI_Datatype}, Ptr{MPI_Datatype}, Ptr{Cchar}), fh, disp, etype, filetype, datarep) +function MPI_Pready(partition, request) + @mpichk ccall((:MPI_Pready, libmpi), Cint, (Cint, MPI_Request), partition, request) end """ - MPI_File_iread(fh, buf, count, datatype, request) + MPI_Pready_list(length, array_of_partitions, request) -$(_doc_external(:MPI_File_iread)) +$(_doc_external(:MPI_Pready_list)) """ -function MPI_File_iread(fh, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iread, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) +function MPI_Pready_list(length, array_of_partitions, request) + @mpichk ccall((:MPI_Pready_list, libmpi), Cint, (Cint, Ptr{Cint}, MPI_Request), length, array_of_partitions, request) end """ - MPI_File_iread_all(fh, buf, count, datatype, request) + MPI_Pready_range(partition_low, partition_high, request) -$(_doc_external(:MPI_File_iread_all)) +$(_doc_external(:MPI_Pready_range)) """ -function MPI_File_iread_all(fh, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iread_all, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) +function MPI_Pready_range(partition_low, partition_high, request) + @mpichk ccall((:MPI_Pready_range, libmpi), Cint, (Cint, Cint, MPI_Request), partition_low, partition_high, request) end """ - MPI_File_iread_at(fh, offset, buf, count, datatype, request) + MPI_Precv_init(buf, partitions, count, datatype, dest, tag, comm, info, request) -$(_doc_external(:MPI_File_iread_at)) +$(_doc_external(:MPI_Precv_init)) """ -function MPI_File_iread_at(fh, offset, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iread_at, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) +function MPI_Precv_init(buf, partitions, count, datatype, dest, tag, comm, info, request) + @mpichk ccall((:MPI_Precv_init, libmpi), Cint, (MPIPtr, Cint, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), buf, partitions, count, datatype, dest, tag, comm, info, request) end """ - MPI_File_iread_at_all(fh, offset, buf, count, datatype, request) + MPI_Probe(source, tag, comm, status) -$(_doc_external(:MPI_File_iread_at_all)) +$(_doc_external(:MPI_Probe)) """ -function MPI_File_iread_at_all(fh, offset, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iread_at_all, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) +function MPI_Probe(source, tag, comm, status) + @mpichk ccall((:MPI_Probe, libmpi), Cint, (Cint, Cint, MPI_Comm, Ptr{MPI_Status}), source, tag, comm, status) end """ - MPI_File_iread_shared(fh, buf, count, datatype, request) + MPI_Psend_init(buf, partitions, count, datatype, dest, tag, comm, info, request) -$(_doc_external(:MPI_File_iread_shared)) +$(_doc_external(:MPI_Psend_init)) """ -function MPI_File_iread_shared(fh, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iread_shared, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) +function MPI_Psend_init(buf, partitions, count, datatype, dest, tag, comm, info, request) + @mpichk ccall((:MPI_Psend_init, libmpi), Cint, (MPIPtr, Cint, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), buf, partitions, count, datatype, dest, tag, comm, info, request) end """ - MPI_File_iwrite(fh, buf, count, datatype, request) + MPI_Publish_name(service_name, info, port_name) -$(_doc_external(:MPI_File_iwrite)) +$(_doc_external(:MPI_Publish_name)) """ -function MPI_File_iwrite(fh, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iwrite, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) +function MPI_Publish_name(service_name, info, port_name) + @mpichk ccall((:MPI_Publish_name, libmpi), Cint, (Ptr{Cchar}, MPI_Info, Ptr{Cchar}), service_name, info, port_name) end """ - MPI_File_iwrite_all(fh, buf, count, datatype, request) + MPI_Put(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) -$(_doc_external(:MPI_File_iwrite_all)) +$(_doc_external(:MPI_Put)) """ -function MPI_File_iwrite_all(fh, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iwrite_all, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) +function MPI_Put(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) + @mpichk ccall((:MPI_Put, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, MPI_Aint, Cint, MPI_Datatype, MPI_Win), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) end """ - MPI_File_iwrite_at(fh, offset, buf, count, datatype, request) + MPI_Put_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) -$(_doc_external(:MPI_File_iwrite_at)) +$(_doc_external(:MPI_Put_c)) """ -function MPI_File_iwrite_at(fh, offset, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iwrite_at, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) +function MPI_Put_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) + @mpichk ccall((:MPI_Put_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Win), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) end """ - MPI_File_iwrite_at_all(fh, offset, buf, count, datatype, request) + MPI_Query_thread(provided) -$(_doc_external(:MPI_File_iwrite_at_all)) +$(_doc_external(:MPI_Query_thread)) """ -function MPI_File_iwrite_at_all(fh, offset, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iwrite_at_all, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) +function MPI_Query_thread(provided) + @mpichk ccall((:MPI_Query_thread, libmpi), Cint, (Ptr{Cint},), provided) end """ - MPI_File_iwrite_shared(fh, buf, count, datatype, request) + MPI_Raccumulate(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) -$(_doc_external(:MPI_File_iwrite_shared)) +$(_doc_external(:MPI_Raccumulate)) """ -function MPI_File_iwrite_shared(fh, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iwrite_shared, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) +function MPI_Raccumulate(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) + @mpichk ccall((:MPI_Raccumulate, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, MPI_Aint, Cint, MPI_Datatype, MPI_Op, MPI_Win, Ptr{MPI_Request}), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) end """ - MPI_File_open(comm, filename, amode, info, fh) + MPI_Raccumulate_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) -$(_doc_external(:MPI_File_open)) +$(_doc_external(:MPI_Raccumulate_c)) """ -function MPI_File_open(comm, filename, amode, info, fh) - @mpichk ccall((:MPI_File_open, libmpi), Cint, (MPI_Comm, Ptr{Cchar}, Cint, MPI_Info, Ptr{MPI_File}), comm, filename, amode, info, fh) +function MPI_Raccumulate_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) + @mpichk ccall((:MPI_Raccumulate_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Op, MPI_Win, Ptr{MPI_Request}), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) end """ - MPI_File_preallocate(fh, size) + MPI_Recv(buf, count, datatype, source, tag, comm, status) -$(_doc_external(:MPI_File_preallocate)) +$(_doc_external(:MPI_Recv)) """ -function MPI_File_preallocate(fh, size) - @mpichk ccall((:MPI_File_preallocate, libmpi), Cint, (MPI_File, MPI_Offset), fh, size) +function MPI_Recv(buf, count, datatype, source, tag, comm, status) + @mpichk ccall((:MPI_Recv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Status}), buf, count, datatype, source, tag, comm, status) end """ - MPI_File_read(fh, buf, count, datatype, status) + MPI_Recv_c(buf, count, datatype, source, tag, comm, status) -$(_doc_external(:MPI_File_read)) +$(_doc_external(:MPI_Recv_c)) """ -function MPI_File_read(fh, buf, count, datatype, status) - @mpichk ccall((:MPI_File_read, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +function MPI_Recv_c(buf, count, datatype, source, tag, comm, status) + @mpichk ccall((:MPI_Recv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Status}), buf, count, datatype, source, tag, comm, status) end """ - MPI_File_read_all(fh, buf, count, datatype, status) + MPI_Recv_init(buf, count, datatype, source, tag, comm, request) -$(_doc_external(:MPI_File_read_all)) +$(_doc_external(:MPI_Recv_init)) """ -function MPI_File_read_all(fh, buf, count, datatype, status) - @mpichk ccall((:MPI_File_read_all, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +function MPI_Recv_init(buf, count, datatype, source, tag, comm, request) + @mpichk ccall((:MPI_Recv_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, source, tag, comm, request) end """ - MPI_File_read_all_begin(fh, buf, count, datatype) + MPI_Recv_init_c(buf, count, datatype, source, tag, comm, request) -$(_doc_external(:MPI_File_read_all_begin)) +$(_doc_external(:MPI_Recv_init_c)) """ -function MPI_File_read_all_begin(fh, buf, count, datatype) - @mpichk ccall((:MPI_File_read_all_begin, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype), fh, buf, count, datatype) +function MPI_Recv_init_c(buf, count, datatype, source, tag, comm, request) + @mpichk ccall((:MPI_Recv_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, source, tag, comm, request) end """ - MPI_File_read_all_end(fh, buf, status) + MPI_Reduce(sendbuf, recvbuf, count, datatype, op, root, comm) -$(_doc_external(:MPI_File_read_all_end)) +$(_doc_external(:MPI_Reduce)) """ -function MPI_File_read_all_end(fh, buf, status) - @mpichk ccall((:MPI_File_read_all_end, libmpi), Cint, (MPI_File, MPIPtr, Ptr{MPI_Status}), fh, buf, status) +function MPI_Reduce(sendbuf, recvbuf, count, datatype, op, root, comm) + @mpichk ccall((:MPI_Reduce, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, Cint, MPI_Comm), sendbuf, recvbuf, count, datatype, op, root, comm) end """ - MPI_File_read_at(fh, offset, buf, count, datatype, status) + MPI_Reduce_c(sendbuf, recvbuf, count, datatype, op, root, comm) -$(_doc_external(:MPI_File_read_at)) +$(_doc_external(:MPI_Reduce_c)) """ -function MPI_File_read_at(fh, offset, buf, count, datatype, status) - @mpichk ccall((:MPI_File_read_at, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, offset, buf, count, datatype, status) +function MPI_Reduce_c(sendbuf, recvbuf, count, datatype, op, root, comm) + @mpichk ccall((:MPI_Reduce_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, Cint, MPI_Comm), sendbuf, recvbuf, count, datatype, op, root, comm) end """ - MPI_File_read_at_all(fh, offset, buf, count, datatype, status) + MPI_Reduce_init(sendbuf, recvbuf, count, datatype, op, root, comm, info, request) -$(_doc_external(:MPI_File_read_at_all)) +$(_doc_external(:MPI_Reduce_init)) """ -function MPI_File_read_at_all(fh, offset, buf, count, datatype, status) - @mpichk ccall((:MPI_File_read_at_all, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, offset, buf, count, datatype, status) +function MPI_Reduce_init(sendbuf, recvbuf, count, datatype, op, root, comm, info, request) + @mpichk ccall((:MPI_Reduce_init, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, root, comm, info, request) end """ - MPI_File_read_at_all_begin(fh, offset, buf, count, datatype) + MPI_Reduce_init_c(sendbuf, recvbuf, count, datatype, op, root, comm, info, request) -$(_doc_external(:MPI_File_read_at_all_begin)) +$(_doc_external(:MPI_Reduce_init_c)) """ -function MPI_File_read_at_all_begin(fh, offset, buf, count, datatype) - @mpichk ccall((:MPI_File_read_at_all_begin, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype), fh, offset, buf, count, datatype) +function MPI_Reduce_init_c(sendbuf, recvbuf, count, datatype, op, root, comm, info, request) + @mpichk ccall((:MPI_Reduce_init_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, root, comm, info, request) end """ - MPI_File_read_at_all_end(fh, buf, status) + MPI_Reduce_local(inbuf, inoutbuf, count, datatype, op) -$(_doc_external(:MPI_File_read_at_all_end)) +$(_doc_external(:MPI_Reduce_local)) """ -function MPI_File_read_at_all_end(fh, buf, status) - @mpichk ccall((:MPI_File_read_at_all_end, libmpi), Cint, (MPI_File, MPIPtr, Ptr{MPI_Status}), fh, buf, status) +function MPI_Reduce_local(inbuf, inoutbuf, count, datatype, op) + @mpichk ccall((:MPI_Reduce_local, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op), inbuf, inoutbuf, count, datatype, op) end """ - MPI_File_read_ordered(fh, buf, count, datatype, status) + MPI_Reduce_local_c(inbuf, inoutbuf, count, datatype, op) -$(_doc_external(:MPI_File_read_ordered)) +$(_doc_external(:MPI_Reduce_local_c)) """ -function MPI_File_read_ordered(fh, buf, count, datatype, status) - @mpichk ccall((:MPI_File_read_ordered, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +function MPI_Reduce_local_c(inbuf, inoutbuf, count, datatype, op) + @mpichk ccall((:MPI_Reduce_local_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op), inbuf, inoutbuf, count, datatype, op) end """ - MPI_File_read_ordered_begin(fh, buf, count, datatype) + MPI_Reduce_scatter(sendbuf, recvbuf, recvcounts, datatype, op, comm) -$(_doc_external(:MPI_File_read_ordered_begin)) +$(_doc_external(:MPI_Reduce_scatter)) """ -function MPI_File_read_ordered_begin(fh, buf, count, datatype) - @mpichk ccall((:MPI_File_read_ordered_begin, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype), fh, buf, count, datatype) +function MPI_Reduce_scatter(sendbuf, recvbuf, recvcounts, datatype, op, comm) + @mpichk ccall((:MPI_Reduce_scatter, libmpi), Cint, (MPIPtr, MPIPtr, Ptr{Cint}, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, recvcounts, datatype, op, comm) end """ - MPI_File_read_ordered_end(fh, buf, status) + MPI_Reduce_scatter_block(sendbuf, recvbuf, recvcount, datatype, op, comm) -$(_doc_external(:MPI_File_read_ordered_end)) +$(_doc_external(:MPI_Reduce_scatter_block)) """ -function MPI_File_read_ordered_end(fh, buf, status) - @mpichk ccall((:MPI_File_read_ordered_end, libmpi), Cint, (MPI_File, MPIPtr, Ptr{MPI_Status}), fh, buf, status) +function MPI_Reduce_scatter_block(sendbuf, recvbuf, recvcount, datatype, op, comm) + @mpichk ccall((:MPI_Reduce_scatter_block, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, recvcount, datatype, op, comm) end """ - MPI_File_read_shared(fh, buf, count, datatype, status) + MPI_Reduce_scatter_block_c(sendbuf, recvbuf, recvcount, datatype, op, comm) -$(_doc_external(:MPI_File_read_shared)) +$(_doc_external(:MPI_Reduce_scatter_block_c)) """ -function MPI_File_read_shared(fh, buf, count, datatype, status) - @mpichk ccall((:MPI_File_read_shared, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +function MPI_Reduce_scatter_block_c(sendbuf, recvbuf, recvcount, datatype, op, comm) + @mpichk ccall((:MPI_Reduce_scatter_block_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, recvcount, datatype, op, comm) end """ - MPI_File_seek(fh, offset, whence) + MPI_Reduce_scatter_block_init(sendbuf, recvbuf, recvcount, datatype, op, comm, info, request) -$(_doc_external(:MPI_File_seek)) +$(_doc_external(:MPI_Reduce_scatter_block_init)) """ -function MPI_File_seek(fh, offset, whence) - @mpichk ccall((:MPI_File_seek, libmpi), Cint, (MPI_File, MPI_Offset, Cint), fh, offset, whence) +function MPI_Reduce_scatter_block_init(sendbuf, recvbuf, recvcount, datatype, op, comm, info, request) + @mpichk ccall((:MPI_Reduce_scatter_block_init, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, recvcount, datatype, op, comm, info, request) end """ - MPI_File_seek_shared(fh, offset, whence) + MPI_Reduce_scatter_block_init_c(sendbuf, recvbuf, recvcount, datatype, op, comm, info, request) -$(_doc_external(:MPI_File_seek_shared)) +$(_doc_external(:MPI_Reduce_scatter_block_init_c)) """ -function MPI_File_seek_shared(fh, offset, whence) - @mpichk ccall((:MPI_File_seek_shared, libmpi), Cint, (MPI_File, MPI_Offset, Cint), fh, offset, whence) +function MPI_Reduce_scatter_block_init_c(sendbuf, recvbuf, recvcount, datatype, op, comm, info, request) + @mpichk ccall((:MPI_Reduce_scatter_block_init_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, recvcount, datatype, op, comm, info, request) end """ - MPI_File_set_atomicity(fh, flag) + MPI_Reduce_scatter_c(sendbuf, recvbuf, recvcounts, datatype, op, comm) -$(_doc_external(:MPI_File_set_atomicity)) +$(_doc_external(:MPI_Reduce_scatter_c)) """ -function MPI_File_set_atomicity(fh, flag) - @mpichk ccall((:MPI_File_set_atomicity, libmpi), Cint, (MPI_File, Cint), fh, flag) +function MPI_Reduce_scatter_c(sendbuf, recvbuf, recvcounts, datatype, op, comm) + @mpichk ccall((:MPI_Reduce_scatter_c, libmpi), Cint, (MPIPtr, MPIPtr, Ptr{MPI_Count}, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, recvcounts, datatype, op, comm) end """ - MPI_File_set_info(fh, info) + MPI_Reduce_scatter_init(sendbuf, recvbuf, recvcounts, datatype, op, comm, info, request) -$(_doc_external(:MPI_File_set_info)) +$(_doc_external(:MPI_Reduce_scatter_init)) """ -function MPI_File_set_info(fh, info) - @mpichk ccall((:MPI_File_set_info, libmpi), Cint, (MPI_File, MPI_Info), fh, info) +function MPI_Reduce_scatter_init(sendbuf, recvbuf, recvcounts, datatype, op, comm, info, request) + @mpichk ccall((:MPI_Reduce_scatter_init, libmpi), Cint, (MPIPtr, MPIPtr, Ptr{Cint}, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, recvcounts, datatype, op, comm, info, request) end """ - MPI_File_set_size(fh, size) + MPI_Reduce_scatter_init_c(sendbuf, recvbuf, recvcounts, datatype, op, comm, info, request) -$(_doc_external(:MPI_File_set_size)) +$(_doc_external(:MPI_Reduce_scatter_init_c)) """ -function MPI_File_set_size(fh, size) - @mpichk ccall((:MPI_File_set_size, libmpi), Cint, (MPI_File, MPI_Offset), fh, size) +function MPI_Reduce_scatter_init_c(sendbuf, recvbuf, recvcounts, datatype, op, comm, info, request) + @mpichk ccall((:MPI_Reduce_scatter_init_c, libmpi), Cint, (MPIPtr, MPIPtr, Ptr{MPI_Count}, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, recvcounts, datatype, op, comm, info, request) end """ - MPI_File_set_view(fh, disp, etype, filetype, datarep, info) + MPI_Register_datarep(datarep, read_conversion_fn, write_conversion_fn, dtype_file_extent_fn, extra_state) -$(_doc_external(:MPI_File_set_view)) +$(_doc_external(:MPI_Register_datarep)) """ -function MPI_File_set_view(fh, disp, etype, filetype, datarep, info) - @mpichk ccall((:MPI_File_set_view, libmpi), Cint, (MPI_File, MPI_Offset, MPI_Datatype, MPI_Datatype, Ptr{Cchar}, MPI_Info), fh, disp, etype, filetype, datarep, info) +function MPI_Register_datarep(datarep, read_conversion_fn, write_conversion_fn, dtype_file_extent_fn, extra_state) + @mpichk ccall((:MPI_Register_datarep, libmpi), Cint, (Ptr{Cchar}, Ptr{MPI_Datarep_conversion_function}, Ptr{MPI_Datarep_conversion_function}, Ptr{MPI_Datarep_extent_function}, MPIPtr), datarep, read_conversion_fn, write_conversion_fn, dtype_file_extent_fn, extra_state) end """ - MPI_File_sync(fh) + MPI_Register_datarep_c(datarep, read_conversion_fn, write_conversion_fn, dtype_file_extent_fn, extra_state) -$(_doc_external(:MPI_File_sync)) +$(_doc_external(:MPI_Register_datarep_c)) """ -function MPI_File_sync(fh) - @mpichk ccall((:MPI_File_sync, libmpi), Cint, (MPI_File,), fh) +function MPI_Register_datarep_c(datarep, read_conversion_fn, write_conversion_fn, dtype_file_extent_fn, extra_state) + @mpichk ccall((:MPI_Register_datarep_c, libmpi), Cint, (Ptr{Cchar}, Ptr{MPI_Datarep_conversion_function_c}, Ptr{MPI_Datarep_conversion_function_c}, Ptr{MPI_Datarep_extent_function}, MPIPtr), datarep, read_conversion_fn, write_conversion_fn, dtype_file_extent_fn, extra_state) end """ - MPI_File_write(fh, buf, count, datatype, status) + MPI_Remove_error_class(errorclass) -$(_doc_external(:MPI_File_write)) +$(_doc_external(:MPI_Remove_error_class)) """ -function MPI_File_write(fh, buf, count, datatype, status) - @mpichk ccall((:MPI_File_write, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +function MPI_Remove_error_class(errorclass) + @mpichk ccall((:MPI_Remove_error_class, libmpi), Cint, (Cint,), errorclass) end """ - MPI_File_write_all(fh, buf, count, datatype, status) + MPI_Remove_error_code(errorcode) -$(_doc_external(:MPI_File_write_all)) +$(_doc_external(:MPI_Remove_error_code)) """ -function MPI_File_write_all(fh, buf, count, datatype, status) - @mpichk ccall((:MPI_File_write_all, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +function MPI_Remove_error_code(errorcode) + @mpichk ccall((:MPI_Remove_error_code, libmpi), Cint, (Cint,), errorcode) end """ - MPI_File_write_all_begin(fh, buf, count, datatype) + MPI_Remove_error_string(errorcode) -$(_doc_external(:MPI_File_write_all_begin)) +$(_doc_external(:MPI_Remove_error_string)) """ -function MPI_File_write_all_begin(fh, buf, count, datatype) - @mpichk ccall((:MPI_File_write_all_begin, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype), fh, buf, count, datatype) +function MPI_Remove_error_string(errorcode) + @mpichk ccall((:MPI_Remove_error_string, libmpi), Cint, (Cint,), errorcode) end """ - MPI_File_write_all_end(fh, buf, status) + MPI_Request_free(request) -$(_doc_external(:MPI_File_write_all_end)) +$(_doc_external(:MPI_Request_free)) """ -function MPI_File_write_all_end(fh, buf, status) - @mpichk ccall((:MPI_File_write_all_end, libmpi), Cint, (MPI_File, MPIPtr, Ptr{MPI_Status}), fh, buf, status) +function MPI_Request_free(request) + @mpichk ccall((:MPI_Request_free, libmpi), Cint, (Ptr{MPI_Request},), request) end """ - MPI_File_write_at(fh, offset, buf, count, datatype, status) + MPI_Request_fromint(request) -$(_doc_external(:MPI_File_write_at)) +$(_doc_external(:MPI_Request_fromint)) """ -function MPI_File_write_at(fh, offset, buf, count, datatype, status) - @mpichk ccall((:MPI_File_write_at, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, offset, buf, count, datatype, status) +function MPI_Request_fromint(request) + @mpichk ccall((:MPI_Request_fromint, libmpi), MPI_Request, (Cint,), request) end """ - MPI_File_write_at_all(fh, offset, buf, count, datatype, status) + MPI_Request_get_status(request, flag, status) -$(_doc_external(:MPI_File_write_at_all)) +$(_doc_external(:MPI_Request_get_status)) """ -function MPI_File_write_at_all(fh, offset, buf, count, datatype, status) - @mpichk ccall((:MPI_File_write_at_all, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, offset, buf, count, datatype, status) +function MPI_Request_get_status(request, flag, status) + @mpichk ccall((:MPI_Request_get_status, libmpi), Cint, (MPI_Request, Ptr{Cint}, Ptr{MPI_Status}), request, flag, status) end """ - MPI_File_write_at_all_begin(fh, offset, buf, count, datatype) + MPI_Request_get_status_all(count, array_of_requests, flag, array_of_statuses) -$(_doc_external(:MPI_File_write_at_all_begin)) +$(_doc_external(:MPI_Request_get_status_all)) """ -function MPI_File_write_at_all_begin(fh, offset, buf, count, datatype) - @mpichk ccall((:MPI_File_write_at_all_begin, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, Cint, MPI_Datatype), fh, offset, buf, count, datatype) +function MPI_Request_get_status_all(count, array_of_requests, flag, array_of_statuses) + @mpichk ccall((:MPI_Request_get_status_all, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{Cint}, Ptr{MPI_Status}), count, array_of_requests, flag, array_of_statuses) end """ - MPI_File_write_at_all_end(fh, buf, status) + MPI_Request_get_status_any(count, array_of_requests, indx, flag, status) -$(_doc_external(:MPI_File_write_at_all_end)) +$(_doc_external(:MPI_Request_get_status_any)) """ -function MPI_File_write_at_all_end(fh, buf, status) - @mpichk ccall((:MPI_File_write_at_all_end, libmpi), Cint, (MPI_File, MPIPtr, Ptr{MPI_Status}), fh, buf, status) +function MPI_Request_get_status_any(count, array_of_requests, indx, flag, status) + @mpichk ccall((:MPI_Request_get_status_any, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Status}), count, array_of_requests, indx, flag, status) end """ - MPI_File_write_ordered(fh, buf, count, datatype, status) + MPI_Request_get_status_some(incount, array_of_requests, outcount, array_of_indices, array_of_statuses) -$(_doc_external(:MPI_File_write_ordered)) +$(_doc_external(:MPI_Request_get_status_some)) """ -function MPI_File_write_ordered(fh, buf, count, datatype, status) - @mpichk ccall((:MPI_File_write_ordered, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +function MPI_Request_get_status_some(incount, array_of_requests, outcount, array_of_indices, array_of_statuses) + @mpichk ccall((:MPI_Request_get_status_some, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Status}), incount, array_of_requests, outcount, array_of_indices, array_of_statuses) end """ - MPI_File_write_ordered_begin(fh, buf, count, datatype) + MPI_Request_toint(request) -$(_doc_external(:MPI_File_write_ordered_begin)) +$(_doc_external(:MPI_Request_toint)) """ -function MPI_File_write_ordered_begin(fh, buf, count, datatype) - @mpichk ccall((:MPI_File_write_ordered_begin, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype), fh, buf, count, datatype) +function MPI_Request_toint(request) + @mpichk ccall((:MPI_Request_toint, libmpi), Cint, (MPI_Request,), request) end """ - MPI_File_write_ordered_end(fh, buf, status) + MPI_Rget(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) -$(_doc_external(:MPI_File_write_ordered_end)) +$(_doc_external(:MPI_Rget)) """ -function MPI_File_write_ordered_end(fh, buf, status) - @mpichk ccall((:MPI_File_write_ordered_end, libmpi), Cint, (MPI_File, MPIPtr, Ptr{MPI_Status}), fh, buf, status) +function MPI_Rget(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) + @mpichk ccall((:MPI_Rget, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, MPI_Aint, Cint, MPI_Datatype, MPI_Win, Ptr{MPI_Request}), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) end """ - MPI_File_write_shared(fh, buf, count, datatype, status) + MPI_Rget_accumulate(origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) -$(_doc_external(:MPI_File_write_shared)) +$(_doc_external(:MPI_Rget_accumulate)) """ -function MPI_File_write_shared(fh, buf, count, datatype, status) - @mpichk ccall((:MPI_File_write_shared, libmpi), Cint, (MPI_File, MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +function MPI_Rget_accumulate(origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) + @mpichk ccall((:MPI_Rget_accumulate, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Aint, Cint, MPI_Datatype, MPI_Op, MPI_Win, Ptr{MPI_Request}), origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) end """ - MPI_Register_datarep(datarep, read_conversion_fn, write_conversion_fn, dtype_file_extent_fn, extra_state) + MPI_Rget_accumulate_c(origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) -$(_doc_external(:MPI_Register_datarep)) +$(_doc_external(:MPI_Rget_accumulate_c)) """ -function MPI_Register_datarep(datarep, read_conversion_fn, write_conversion_fn, dtype_file_extent_fn, extra_state) - @mpichk ccall((:MPI_Register_datarep, libmpi), Cint, (Ptr{Cchar}, Ptr{MPI_Datarep_conversion_function}, Ptr{MPI_Datarep_conversion_function}, Ptr{MPI_Datarep_extent_function}, MPIPtr), datarep, read_conversion_fn, write_conversion_fn, dtype_file_extent_fn, extra_state) +function MPI_Rget_accumulate_c(origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) + @mpichk ccall((:MPI_Rget_accumulate_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Op, MPI_Win, Ptr{MPI_Request}), origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) end """ - MPI_File_toint(file) + MPI_Rget_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) -$(_doc_external(:MPI_File_toint)) +$(_doc_external(:MPI_Rget_c)) """ -function MPI_File_toint(file) - @mpichk ccall((:MPI_File_toint, libmpi), Cint, (MPI_File,), file) +function MPI_Rget_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) + @mpichk ccall((:MPI_Rget_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Win, Ptr{MPI_Request}), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) end """ - MPI_File_fromint(file) + MPI_Rput(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) -$(_doc_external(:MPI_File_fromint)) +$(_doc_external(:MPI_Rput)) """ -function MPI_File_fromint(file) - @mpichk ccall((:MPI_File_fromint, libmpi), MPI_File, (Cint,), file) +function MPI_Rput(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) + @mpichk ccall((:MPI_Rput, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, MPI_Aint, Cint, MPI_Datatype, MPI_Win, Ptr{MPI_Request}), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) end """ - MPI_Allgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) + MPI_Rput_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) -$(_doc_external(:MPI_Allgather_c)) +$(_doc_external(:MPI_Rput_c)) """ -function MPI_Allgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) - @mpichk ccall((:MPI_Allgather_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) +function MPI_Rput_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) + @mpichk ccall((:MPI_Rput_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Win, Ptr{MPI_Request}), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) end """ - MPI_Allgather_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) + MPI_Rsend(buf, count, datatype, dest, tag, comm) -$(_doc_external(:MPI_Allgather_init_c)) +$(_doc_external(:MPI_Rsend)) """ -function MPI_Allgather_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) - @mpichk ccall((:MPI_Allgather_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) +function MPI_Rsend(buf, count, datatype, dest, tag, comm) + @mpichk ccall((:MPI_Rsend, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) end """ - MPI_Allgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) + MPI_Rsend_c(buf, count, datatype, dest, tag, comm) -$(_doc_external(:MPI_Allgatherv_c)) +$(_doc_external(:MPI_Rsend_c)) """ -function MPI_Allgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) - @mpichk ccall((:MPI_Allgatherv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) +function MPI_Rsend_c(buf, count, datatype, dest, tag, comm) + @mpichk ccall((:MPI_Rsend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) end """ - MPI_Allgatherv_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) + MPI_Rsend_init(buf, count, datatype, dest, tag, comm, request) -$(_doc_external(:MPI_Allgatherv_init_c)) +$(_doc_external(:MPI_Rsend_init)) """ -function MPI_Allgatherv_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) - @mpichk ccall((:MPI_Allgatherv_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) +function MPI_Rsend_init(buf, count, datatype, dest, tag, comm, request) + @mpichk ccall((:MPI_Rsend_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) end """ - MPI_Allreduce_c(sendbuf, recvbuf, count, datatype, op, comm) + MPI_Rsend_init_c(buf, count, datatype, dest, tag, comm, request) -$(_doc_external(:MPI_Allreduce_c)) +$(_doc_external(:MPI_Rsend_init_c)) """ -function MPI_Allreduce_c(sendbuf, recvbuf, count, datatype, op, comm) - @mpichk ccall((:MPI_Allreduce_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, count, datatype, op, comm) +function MPI_Rsend_init_c(buf, count, datatype, dest, tag, comm, request) + @mpichk ccall((:MPI_Rsend_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) end """ - MPI_Allreduce_init_c(sendbuf, recvbuf, count, datatype, op, comm, info, request) + MPI_Scan(sendbuf, recvbuf, count, datatype, op, comm) -$(_doc_external(:MPI_Allreduce_init_c)) +$(_doc_external(:MPI_Scan)) """ -function MPI_Allreduce_init_c(sendbuf, recvbuf, count, datatype, op, comm, info, request) - @mpichk ccall((:MPI_Allreduce_init_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, info, request) +function MPI_Scan(sendbuf, recvbuf, count, datatype, op, comm) + @mpichk ccall((:MPI_Scan, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, count, datatype, op, comm) end """ - MPI_Alltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) + MPI_Scan_c(sendbuf, recvbuf, count, datatype, op, comm) -$(_doc_external(:MPI_Alltoall_c)) +$(_doc_external(:MPI_Scan_c)) """ -function MPI_Alltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) - @mpichk ccall((:MPI_Alltoall_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) +function MPI_Scan_c(sendbuf, recvbuf, count, datatype, op, comm) + @mpichk ccall((:MPI_Scan_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, count, datatype, op, comm) end """ - MPI_Alltoall_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) + MPI_Scan_init(sendbuf, recvbuf, count, datatype, op, comm, info, request) -$(_doc_external(:MPI_Alltoall_init_c)) +$(_doc_external(:MPI_Scan_init)) """ -function MPI_Alltoall_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) - @mpichk ccall((:MPI_Alltoall_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) +function MPI_Scan_init(sendbuf, recvbuf, count, datatype, op, comm, info, request) + @mpichk ccall((:MPI_Scan_init, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, info, request) end """ - MPI_Alltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) + MPI_Scan_init_c(sendbuf, recvbuf, count, datatype, op, comm, info, request) -$(_doc_external(:MPI_Alltoallv_c)) +$(_doc_external(:MPI_Scan_init_c)) """ -function MPI_Alltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) - @mpichk ccall((:MPI_Alltoallv_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) +function MPI_Scan_init_c(sendbuf, recvbuf, count, datatype, op, comm, info, request) + @mpichk ccall((:MPI_Scan_init_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, info, request) end """ - MPI_Alltoallv_init_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) + MPI_Scatter(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) -$(_doc_external(:MPI_Alltoallv_init_c)) +$(_doc_external(:MPI_Scatter)) """ -function MPI_Alltoallv_init_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) - @mpichk ccall((:MPI_Alltoallv_init_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) +function MPI_Scatter(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) + @mpichk ccall((:MPI_Scatter, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) end """ - MPI_Alltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) + MPI_Scatter_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) -$(_doc_external(:MPI_Alltoallw_c)) +$(_doc_external(:MPI_Scatter_c)) """ -function MPI_Alltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) - @mpichk ccall((:MPI_Alltoallw_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) +function MPI_Scatter_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) + @mpichk ccall((:MPI_Scatter_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) end """ - MPI_Alltoallw_init_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) + MPI_Scatter_init(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) -$(_doc_external(:MPI_Alltoallw_init_c)) +$(_doc_external(:MPI_Scatter_init)) """ -function MPI_Alltoallw_init_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) - @mpichk ccall((:MPI_Alltoallw_init_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) +function MPI_Scatter_init(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) + @mpichk ccall((:MPI_Scatter_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) end """ - MPI_Bcast_c(buffer, count, datatype, root, comm) + MPI_Scatter_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) -$(_doc_external(:MPI_Bcast_c)) +$(_doc_external(:MPI_Scatter_init_c)) """ -function MPI_Bcast_c(buffer, count, datatype, root, comm) - @mpichk ccall((:MPI_Bcast_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm), buffer, count, datatype, root, comm) +function MPI_Scatter_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) + @mpichk ccall((:MPI_Scatter_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) end """ - MPI_Bcast_init_c(buffer, count, datatype, root, comm, info, request) + MPI_Scatterv(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm) -$(_doc_external(:MPI_Bcast_init_c)) +$(_doc_external(:MPI_Scatterv)) """ -function MPI_Bcast_init_c(buffer, count, datatype, root, comm, info, request) - @mpichk ccall((:MPI_Bcast_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), buffer, count, datatype, root, comm, info, request) +function MPI_Scatterv(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm) + @mpichk ccall((:MPI_Scatterv, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm) end """ - MPI_Exscan_c(sendbuf, recvbuf, count, datatype, op, comm) + MPI_Scatterv_c(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm) -$(_doc_external(:MPI_Exscan_c)) +$(_doc_external(:MPI_Scatterv_c)) """ -function MPI_Exscan_c(sendbuf, recvbuf, count, datatype, op, comm) - @mpichk ccall((:MPI_Exscan_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, count, datatype, op, comm) +function MPI_Scatterv_c(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm) + @mpichk ccall((:MPI_Scatterv_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm) end """ - MPI_Exscan_init_c(sendbuf, recvbuf, count, datatype, op, comm, info, request) + MPI_Scatterv_init(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) -$(_doc_external(:MPI_Exscan_init_c)) +$(_doc_external(:MPI_Scatterv_init)) """ -function MPI_Exscan_init_c(sendbuf, recvbuf, count, datatype, op, comm, info, request) - @mpichk ccall((:MPI_Exscan_init_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, info, request) +function MPI_Scatterv_init(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) + @mpichk ccall((:MPI_Scatterv_init, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) end """ - MPI_Gather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) + MPI_Scatterv_init_c(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) -$(_doc_external(:MPI_Gather_c)) +$(_doc_external(:MPI_Scatterv_init_c)) """ -function MPI_Gather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) - @mpichk ccall((:MPI_Gather_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) +function MPI_Scatterv_init_c(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) + @mpichk ccall((:MPI_Scatterv_init_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) end """ - MPI_Gather_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) + MPI_Send(buf, count, datatype, dest, tag, comm) -$(_doc_external(:MPI_Gather_init_c)) +$(_doc_external(:MPI_Send)) """ -function MPI_Gather_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) - @mpichk ccall((:MPI_Gather_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) +function MPI_Send(buf, count, datatype, dest, tag, comm) + @mpichk ccall((:MPI_Send, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) end """ - MPI_Gatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm) + MPI_Send_c(buf, count, datatype, dest, tag, comm) -$(_doc_external(:MPI_Gatherv_c)) +$(_doc_external(:MPI_Send_c)) """ -function MPI_Gatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm) - @mpichk ccall((:MPI_Gatherv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm) +function MPI_Send_c(buf, count, datatype, dest, tag, comm) + @mpichk ccall((:MPI_Send_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) end """ - MPI_Gatherv_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, info, request) + MPI_Send_init(buf, count, datatype, dest, tag, comm, request) -$(_doc_external(:MPI_Gatherv_init_c)) +$(_doc_external(:MPI_Send_init)) """ -function MPI_Gatherv_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, info, request) - @mpichk ccall((:MPI_Gatherv_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, info, request) +function MPI_Send_init(buf, count, datatype, dest, tag, comm, request) + @mpichk ccall((:MPI_Send_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) end """ - MPI_Iallgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) + MPI_Send_init_c(buf, count, datatype, dest, tag, comm, request) -$(_doc_external(:MPI_Iallgather_c)) +$(_doc_external(:MPI_Send_init_c)) """ -function MPI_Iallgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) - @mpichk ccall((:MPI_Iallgather_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) +function MPI_Send_init_c(buf, count, datatype, dest, tag, comm, request) + @mpichk ccall((:MPI_Send_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) end """ - MPI_Iallgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) + MPI_Sendrecv(sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, status) -$(_doc_external(:MPI_Iallgatherv_c)) +$(_doc_external(:MPI_Sendrecv)) """ -function MPI_Iallgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) - @mpichk ccall((:MPI_Iallgatherv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) +function MPI_Sendrecv(sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, status) + @mpichk ccall((:MPI_Sendrecv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Status}), sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, status) end """ - MPI_Iallreduce_c(sendbuf, recvbuf, count, datatype, op, comm, request) + MPI_Sendrecv_c(sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, status) -$(_doc_external(:MPI_Iallreduce_c)) +$(_doc_external(:MPI_Sendrecv_c)) """ -function MPI_Iallreduce_c(sendbuf, recvbuf, count, datatype, op, comm, request) - @mpichk ccall((:MPI_Iallreduce_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, request) +function MPI_Sendrecv_c(sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, status) + @mpichk ccall((:MPI_Sendrecv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Status}), sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, status) end """ - MPI_Ialltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) + MPI_Sendrecv_replace(buf, count, datatype, dest, sendtag, source, recvtag, comm, status) -$(_doc_external(:MPI_Ialltoall_c)) +$(_doc_external(:MPI_Sendrecv_replace)) """ -function MPI_Ialltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) - @mpichk ccall((:MPI_Ialltoall_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) +function MPI_Sendrecv_replace(buf, count, datatype, dest, sendtag, source, recvtag, comm, status) + @mpichk ccall((:MPI_Sendrecv_replace, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, Cint, Cint, MPI_Comm, Ptr{MPI_Status}), buf, count, datatype, dest, sendtag, source, recvtag, comm, status) end """ - MPI_Ialltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) + MPI_Sendrecv_replace_c(buf, count, datatype, dest, sendtag, source, recvtag, comm, status) -$(_doc_external(:MPI_Ialltoallv_c)) +$(_doc_external(:MPI_Sendrecv_replace_c)) """ -function MPI_Ialltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) - @mpichk ccall((:MPI_Ialltoallv_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) +function MPI_Sendrecv_replace_c(buf, count, datatype, dest, sendtag, source, recvtag, comm, status) + @mpichk ccall((:MPI_Sendrecv_replace_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, Cint, Cint, MPI_Comm, Ptr{MPI_Status}), buf, count, datatype, dest, sendtag, source, recvtag, comm, status) end """ - MPI_Ialltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) + MPI_Ssend(buf, count, datatype, dest, tag, comm) -$(_doc_external(:MPI_Ialltoallw_c)) +$(_doc_external(:MPI_Ssend)) """ -function MPI_Ialltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) - @mpichk ccall((:MPI_Ialltoallw_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) +function MPI_Ssend(buf, count, datatype, dest, tag, comm) + @mpichk ccall((:MPI_Ssend, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) end """ - MPI_Ibcast_c(buffer, count, datatype, root, comm, request) + MPI_Ssend_c(buf, count, datatype, dest, tag, comm) -$(_doc_external(:MPI_Ibcast_c)) +$(_doc_external(:MPI_Ssend_c)) """ -function MPI_Ibcast_c(buffer, count, datatype, root, comm, request) - @mpichk ccall((:MPI_Ibcast_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), buffer, count, datatype, root, comm, request) +function MPI_Ssend_c(buf, count, datatype, dest, tag, comm) + @mpichk ccall((:MPI_Ssend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) end """ - MPI_Iexscan_c(sendbuf, recvbuf, count, datatype, op, comm, request) + MPI_Ssend_init(buf, count, datatype, dest, tag, comm, request) -$(_doc_external(:MPI_Iexscan_c)) +$(_doc_external(:MPI_Ssend_init)) """ -function MPI_Iexscan_c(sendbuf, recvbuf, count, datatype, op, comm, request) - @mpichk ccall((:MPI_Iexscan_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, request) +function MPI_Ssend_init(buf, count, datatype, dest, tag, comm, request) + @mpichk ccall((:MPI_Ssend_init, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) end """ - MPI_Igather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) + MPI_Ssend_init_c(buf, count, datatype, dest, tag, comm, request) -$(_doc_external(:MPI_Igather_c)) +$(_doc_external(:MPI_Ssend_init_c)) """ -function MPI_Igather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) - @mpichk ccall((:MPI_Igather_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) +function MPI_Ssend_init_c(buf, count, datatype, dest, tag, comm, request) + @mpichk ccall((:MPI_Ssend_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) end """ - MPI_Igatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, request) + MPI_Start(request) -$(_doc_external(:MPI_Igatherv_c)) +$(_doc_external(:MPI_Start)) """ -function MPI_Igatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, request) - @mpichk ccall((:MPI_Igatherv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm, request) +function MPI_Start(request) + @mpichk ccall((:MPI_Start, libmpi), Cint, (Ptr{MPI_Request},), request) end """ - MPI_Ineighbor_allgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) + MPI_Startall(count, array_of_requests) -$(_doc_external(:MPI_Ineighbor_allgather_c)) +$(_doc_external(:MPI_Startall)) """ -function MPI_Ineighbor_allgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) - @mpichk ccall((:MPI_Ineighbor_allgather_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) +function MPI_Startall(count, array_of_requests) + @mpichk ccall((:MPI_Startall, libmpi), Cint, (Cint, Ptr{MPI_Request}), count, array_of_requests) end """ - MPI_Ineighbor_allgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) + MPI_Status_c2f(c_status, f_status) -$(_doc_external(:MPI_Ineighbor_allgatherv_c)) +$(_doc_external(:MPI_Status_c2f)) """ -function MPI_Ineighbor_allgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) - @mpichk ccall((:MPI_Ineighbor_allgatherv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, request) +function MPI_Status_c2f(c_status, f_status) + @mpichk ccall((:MPI_Status_c2f, libmpi), Cint, (Ptr{MPI_Status}, Ptr{MPI_Fint}), c_status, f_status) end """ - MPI_Ineighbor_alltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) + MPI_Status_f2c(f_status, c_status) -$(_doc_external(:MPI_Ineighbor_alltoall_c)) +$(_doc_external(:MPI_Status_f2c)) """ -function MPI_Ineighbor_alltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) - @mpichk ccall((:MPI_Ineighbor_alltoall_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, request) +function MPI_Status_f2c(f_status, c_status) + @mpichk ccall((:MPI_Status_f2c, libmpi), Cint, (Ptr{MPI_Fint}, Ptr{MPI_Status}), f_status, c_status) end """ - MPI_Ineighbor_alltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) + MPI_Status_get_error(status, error) -$(_doc_external(:MPI_Ineighbor_alltoallv_c)) +$(_doc_external(:MPI_Status_get_error)) """ -function MPI_Ineighbor_alltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) - @mpichk ccall((:MPI_Ineighbor_alltoallv_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, request) +function MPI_Status_get_error(status, error) + @mpichk ccall((:MPI_Status_get_error, libmpi), Cint, (Ptr{MPI_Status}, Ptr{Cint}), status, error) end """ - MPI_Ineighbor_alltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) + MPI_Status_get_source(status, source) -$(_doc_external(:MPI_Ineighbor_alltoallw_c)) +$(_doc_external(:MPI_Status_get_source)) """ -function MPI_Ineighbor_alltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) - @mpichk ccall((:MPI_Ineighbor_alltoallw_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, request) +function MPI_Status_get_source(status, source) + @mpichk ccall((:MPI_Status_get_source, libmpi), Cint, (Ptr{MPI_Status}, Ptr{Cint}), status, source) end """ - MPI_Ireduce_c(sendbuf, recvbuf, count, datatype, op, root, comm, request) + MPI_Status_get_tag(status, tag) -$(_doc_external(:MPI_Ireduce_c)) +$(_doc_external(:MPI_Status_get_tag)) """ -function MPI_Ireduce_c(sendbuf, recvbuf, count, datatype, op, root, comm, request) - @mpichk ccall((:MPI_Ireduce_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, root, comm, request) +function MPI_Status_get_tag(status, tag) + @mpichk ccall((:MPI_Status_get_tag, libmpi), Cint, (Ptr{MPI_Status}, Ptr{Cint}), status, tag) end """ - MPI_Ireduce_scatter_c(sendbuf, recvbuf, recvcounts, datatype, op, comm, request) + MPI_Status_set_cancelled(status, flag) -$(_doc_external(:MPI_Ireduce_scatter_c)) +$(_doc_external(:MPI_Status_set_cancelled)) """ -function MPI_Ireduce_scatter_c(sendbuf, recvbuf, recvcounts, datatype, op, comm, request) - @mpichk ccall((:MPI_Ireduce_scatter_c, libmpi), Cint, (MPIPtr, MPIPtr, Ptr{MPI_Count}, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, recvcounts, datatype, op, comm, request) +function MPI_Status_set_cancelled(status, flag) + @mpichk ccall((:MPI_Status_set_cancelled, libmpi), Cint, (Ptr{MPI_Status}, Cint), status, flag) end """ - MPI_Ireduce_scatter_block_c(sendbuf, recvbuf, recvcount, datatype, op, comm, request) + MPI_Status_set_elements(status, datatype, count) -$(_doc_external(:MPI_Ireduce_scatter_block_c)) +$(_doc_external(:MPI_Status_set_elements)) """ -function MPI_Ireduce_scatter_block_c(sendbuf, recvbuf, recvcount, datatype, op, comm, request) - @mpichk ccall((:MPI_Ireduce_scatter_block_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, recvcount, datatype, op, comm, request) +function MPI_Status_set_elements(status, datatype, count) + @mpichk ccall((:MPI_Status_set_elements, libmpi), Cint, (Ptr{MPI_Status}, MPI_Datatype, Cint), status, datatype, count) end """ - MPI_Iscan_c(sendbuf, recvbuf, count, datatype, op, comm, request) + MPI_Status_set_elements_c(status, datatype, count) -$(_doc_external(:MPI_Iscan_c)) +$(_doc_external(:MPI_Status_set_elements_c)) """ -function MPI_Iscan_c(sendbuf, recvbuf, count, datatype, op, comm, request) - @mpichk ccall((:MPI_Iscan_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, request) +function MPI_Status_set_elements_c(status, datatype, count) + @mpichk ccall((:MPI_Status_set_elements_c, libmpi), Cint, (Ptr{MPI_Status}, MPI_Datatype, MPI_Count), status, datatype, count) end """ - MPI_Iscatter_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) + MPI_Status_set_elements_x(status, datatype, count) -$(_doc_external(:MPI_Iscatter_c)) +$(_doc_external(:MPI_Status_set_elements_x)) """ -function MPI_Iscatter_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) - @mpichk ccall((:MPI_Iscatter_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, request) +function MPI_Status_set_elements_x(status, datatype, count) + @mpichk ccall((:MPI_Status_set_elements_x, libmpi), Cint, (Ptr{MPI_Status}, MPI_Datatype, MPI_Count), status, datatype, count) end """ - MPI_Iscatterv_c(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, request) + MPI_Status_set_error(status, error) -$(_doc_external(:MPI_Iscatterv_c)) +$(_doc_external(:MPI_Status_set_error)) """ -function MPI_Iscatterv_c(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, request) - @mpichk ccall((:MPI_Iscatterv_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, request) +function MPI_Status_set_error(status, error) + @mpichk ccall((:MPI_Status_set_error, libmpi), Cint, (Ptr{MPI_Status}, Cint), status, error) end """ - MPI_Neighbor_allgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) + MPI_Status_set_source(status, source) -$(_doc_external(:MPI_Neighbor_allgather_c)) +$(_doc_external(:MPI_Status_set_source)) """ -function MPI_Neighbor_allgather_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) - @mpichk ccall((:MPI_Neighbor_allgather_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) +function MPI_Status_set_source(status, source) + @mpichk ccall((:MPI_Status_set_source, libmpi), Cint, (Ptr{MPI_Status}, Cint), status, source) end """ - MPI_Neighbor_allgather_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) + MPI_Status_set_tag(status, tag) -$(_doc_external(:MPI_Neighbor_allgather_init_c)) +$(_doc_external(:MPI_Status_set_tag)) """ -function MPI_Neighbor_allgather_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) - @mpichk ccall((:MPI_Neighbor_allgather_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) +function MPI_Status_set_tag(status, tag) + @mpichk ccall((:MPI_Status_set_tag, libmpi), Cint, (Ptr{MPI_Status}, Cint), status, tag) end """ - MPI_Neighbor_allgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) + MPI_Test(request, flag, status) -$(_doc_external(:MPI_Neighbor_allgatherv_c)) +$(_doc_external(:MPI_Test)) """ -function MPI_Neighbor_allgatherv_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) - @mpichk ccall((:MPI_Neighbor_allgatherv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) +function MPI_Test(request, flag, status) + @mpichk ccall((:MPI_Test, libmpi), Cint, (Ptr{MPI_Request}, Ptr{Cint}, Ptr{MPI_Status}), request, flag, status) end """ - MPI_Neighbor_allgatherv_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) + MPI_Test_cancelled(status, flag) -$(_doc_external(:MPI_Neighbor_allgatherv_init_c)) +$(_doc_external(:MPI_Test_cancelled)) """ -function MPI_Neighbor_allgatherv_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) - @mpichk ccall((:MPI_Neighbor_allgatherv_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm, info, request) +function MPI_Test_cancelled(status, flag) + @mpichk ccall((:MPI_Test_cancelled, libmpi), Cint, (Ptr{MPI_Status}, Ptr{Cint}), status, flag) end """ - MPI_Neighbor_alltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) + MPI_Testall(count, array_of_requests, flag, array_of_statuses) -$(_doc_external(:MPI_Neighbor_alltoall_c)) +$(_doc_external(:MPI_Testall)) """ -function MPI_Neighbor_alltoall_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) - @mpichk ccall((:MPI_Neighbor_alltoall_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) +function MPI_Testall(count, array_of_requests, flag, array_of_statuses) + @mpichk ccall((:MPI_Testall, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{Cint}, Ptr{MPI_Status}), count, array_of_requests, flag, array_of_statuses) end """ - MPI_Neighbor_alltoall_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) + MPI_Testany(count, array_of_requests, indx, flag, status) -$(_doc_external(:MPI_Neighbor_alltoall_init_c)) +$(_doc_external(:MPI_Testany)) """ -function MPI_Neighbor_alltoall_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) - @mpichk ccall((:MPI_Neighbor_alltoall_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm, info, request) +function MPI_Testany(count, array_of_requests, indx, flag, status) + @mpichk ccall((:MPI_Testany, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Status}), count, array_of_requests, indx, flag, status) end """ - MPI_Neighbor_alltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) + MPI_Testsome(incount, array_of_requests, outcount, array_of_indices, array_of_statuses) -$(_doc_external(:MPI_Neighbor_alltoallv_c)) +$(_doc_external(:MPI_Testsome)) """ -function MPI_Neighbor_alltoallv_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) - @mpichk ccall((:MPI_Neighbor_alltoallv_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) +function MPI_Testsome(incount, array_of_requests, outcount, array_of_indices, array_of_statuses) + @mpichk ccall((:MPI_Testsome, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Status}), incount, array_of_requests, outcount, array_of_indices, array_of_statuses) end """ - MPI_Neighbor_alltoallv_init_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) + MPI_Topo_test(comm, status) -$(_doc_external(:MPI_Neighbor_alltoallv_init_c)) +$(_doc_external(:MPI_Topo_test)) """ -function MPI_Neighbor_alltoallv_init_c(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) - @mpichk ccall((:MPI_Neighbor_alltoallv_init_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm, info, request) +function MPI_Topo_test(comm, status) + @mpichk ccall((:MPI_Topo_test, libmpi), Cint, (MPI_Comm, Ptr{Cint}), comm, status) end """ - MPI_Neighbor_alltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) + MPI_Type_commit(datatype) -$(_doc_external(:MPI_Neighbor_alltoallw_c)) +$(_doc_external(:MPI_Type_commit)) """ -function MPI_Neighbor_alltoallw_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) - @mpichk ccall((:MPI_Neighbor_alltoallw_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) +function MPI_Type_commit(datatype) + @mpichk ccall((:MPI_Type_commit, libmpi), Cint, (Ptr{MPI_Datatype},), datatype) end """ - MPI_Neighbor_alltoallw_init_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) + MPI_Type_contiguous(count, oldtype, newtype) -$(_doc_external(:MPI_Neighbor_alltoallw_init_c)) +$(_doc_external(:MPI_Type_contiguous)) """ -function MPI_Neighbor_alltoallw_init_c(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) - @mpichk ccall((:MPI_Neighbor_alltoallw_init_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm, info, request) +function MPI_Type_contiguous(count, oldtype, newtype) + @mpichk ccall((:MPI_Type_contiguous, libmpi), Cint, (Cint, MPI_Datatype, Ptr{MPI_Datatype}), count, oldtype, newtype) end """ - MPI_Reduce_c(sendbuf, recvbuf, count, datatype, op, root, comm) + MPI_Type_contiguous_c(count, oldtype, newtype) -$(_doc_external(:MPI_Reduce_c)) +$(_doc_external(:MPI_Type_contiguous_c)) """ -function MPI_Reduce_c(sendbuf, recvbuf, count, datatype, op, root, comm) - @mpichk ccall((:MPI_Reduce_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, Cint, MPI_Comm), sendbuf, recvbuf, count, datatype, op, root, comm) +function MPI_Type_contiguous_c(count, oldtype, newtype) + @mpichk ccall((:MPI_Type_contiguous_c, libmpi), Cint, (MPI_Count, MPI_Datatype, Ptr{MPI_Datatype}), count, oldtype, newtype) end """ - MPI_Reduce_init_c(sendbuf, recvbuf, count, datatype, op, root, comm, info, request) + MPI_Type_create_darray(size, rank, ndims, array_of_gsizes, array_of_distribs, array_of_dargs, array_of_psizes, order, oldtype, newtype) -$(_doc_external(:MPI_Reduce_init_c)) +$(_doc_external(:MPI_Type_create_darray)) """ -function MPI_Reduce_init_c(sendbuf, recvbuf, count, datatype, op, root, comm, info, request) - @mpichk ccall((:MPI_Reduce_init_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, root, comm, info, request) +function MPI_Type_create_darray(size, rank, ndims, array_of_gsizes, array_of_distribs, array_of_dargs, array_of_psizes, order, oldtype, newtype) + @mpichk ccall((:MPI_Type_create_darray, libmpi), Cint, (Cint, Cint, Cint, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}, Cint, MPI_Datatype, Ptr{MPI_Datatype}), size, rank, ndims, array_of_gsizes, array_of_distribs, array_of_dargs, array_of_psizes, order, oldtype, newtype) end """ - MPI_Reduce_local_c(inbuf, inoutbuf, count, datatype, op) + MPI_Type_create_darray_c(size, rank, ndims, array_of_gsizes, array_of_distribs, array_of_dargs, array_of_psizes, order, oldtype, newtype) -$(_doc_external(:MPI_Reduce_local_c)) +$(_doc_external(:MPI_Type_create_darray_c)) """ -function MPI_Reduce_local_c(inbuf, inoutbuf, count, datatype, op) - @mpichk ccall((:MPI_Reduce_local_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op), inbuf, inoutbuf, count, datatype, op) +function MPI_Type_create_darray_c(size, rank, ndims, array_of_gsizes, array_of_distribs, array_of_dargs, array_of_psizes, order, oldtype, newtype) + @mpichk ccall((:MPI_Type_create_darray_c, libmpi), Cint, (Cint, Cint, Cint, Ptr{MPI_Count}, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}, Cint, MPI_Datatype, Ptr{MPI_Datatype}), size, rank, ndims, array_of_gsizes, array_of_distribs, array_of_dargs, array_of_psizes, order, oldtype, newtype) end """ - MPI_Reduce_scatter_c(sendbuf, recvbuf, recvcounts, datatype, op, comm) + MPI_Type_create_f90_complex(p, r, newtype) -$(_doc_external(:MPI_Reduce_scatter_c)) +$(_doc_external(:MPI_Type_create_f90_complex)) """ -function MPI_Reduce_scatter_c(sendbuf, recvbuf, recvcounts, datatype, op, comm) - @mpichk ccall((:MPI_Reduce_scatter_c, libmpi), Cint, (MPIPtr, MPIPtr, Ptr{MPI_Count}, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, recvcounts, datatype, op, comm) +function MPI_Type_create_f90_complex(p, r, newtype) + @mpichk ccall((:MPI_Type_create_f90_complex, libmpi), Cint, (Cint, Cint, Ptr{MPI_Datatype}), p, r, newtype) end """ - MPI_Reduce_scatter_block_c(sendbuf, recvbuf, recvcount, datatype, op, comm) + MPI_Type_create_f90_integer(r, newtype) -$(_doc_external(:MPI_Reduce_scatter_block_c)) +$(_doc_external(:MPI_Type_create_f90_integer)) """ -function MPI_Reduce_scatter_block_c(sendbuf, recvbuf, recvcount, datatype, op, comm) - @mpichk ccall((:MPI_Reduce_scatter_block_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, recvcount, datatype, op, comm) +function MPI_Type_create_f90_integer(r, newtype) + @mpichk ccall((:MPI_Type_create_f90_integer, libmpi), Cint, (Cint, Ptr{MPI_Datatype}), r, newtype) end """ - MPI_Reduce_scatter_block_init_c(sendbuf, recvbuf, recvcount, datatype, op, comm, info, request) + MPI_Type_create_f90_real(p, r, newtype) -$(_doc_external(:MPI_Reduce_scatter_block_init_c)) +$(_doc_external(:MPI_Type_create_f90_real)) """ -function MPI_Reduce_scatter_block_init_c(sendbuf, recvbuf, recvcount, datatype, op, comm, info, request) - @mpichk ccall((:MPI_Reduce_scatter_block_init_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, recvcount, datatype, op, comm, info, request) +function MPI_Type_create_f90_real(p, r, newtype) + @mpichk ccall((:MPI_Type_create_f90_real, libmpi), Cint, (Cint, Cint, Ptr{MPI_Datatype}), p, r, newtype) end """ - MPI_Reduce_scatter_init_c(sendbuf, recvbuf, recvcounts, datatype, op, comm, info, request) + MPI_Type_create_hindexed(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) -$(_doc_external(:MPI_Reduce_scatter_init_c)) +$(_doc_external(:MPI_Type_create_hindexed)) """ -function MPI_Reduce_scatter_init_c(sendbuf, recvbuf, recvcounts, datatype, op, comm, info, request) - @mpichk ccall((:MPI_Reduce_scatter_init_c, libmpi), Cint, (MPIPtr, MPIPtr, Ptr{MPI_Count}, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, recvcounts, datatype, op, comm, info, request) +function MPI_Type_create_hindexed(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) + @mpichk ccall((:MPI_Type_create_hindexed, libmpi), Cint, (Cint, Ptr{Cint}, Ptr{MPI_Aint}, MPI_Datatype, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, oldtype, newtype) end """ - MPI_Scan_c(sendbuf, recvbuf, count, datatype, op, comm) + MPI_Type_create_hindexed_block(count, blocklength, array_of_displacements, oldtype, newtype) -$(_doc_external(:MPI_Scan_c)) +$(_doc_external(:MPI_Type_create_hindexed_block)) """ -function MPI_Scan_c(sendbuf, recvbuf, count, datatype, op, comm) - @mpichk ccall((:MPI_Scan_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, count, datatype, op, comm) +function MPI_Type_create_hindexed_block(count, blocklength, array_of_displacements, oldtype, newtype) + @mpichk ccall((:MPI_Type_create_hindexed_block, libmpi), Cint, (Cint, Cint, Ptr{MPI_Aint}, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, array_of_displacements, oldtype, newtype) end """ - MPI_Scan_init_c(sendbuf, recvbuf, count, datatype, op, comm, info, request) + MPI_Type_create_hindexed_block_c(count, blocklength, array_of_displacements, oldtype, newtype) -$(_doc_external(:MPI_Scan_init_c)) +$(_doc_external(:MPI_Type_create_hindexed_block_c)) """ -function MPI_Scan_init_c(sendbuf, recvbuf, count, datatype, op, comm, info, request) - @mpichk ccall((:MPI_Scan_init_c, libmpi), Cint, (MPIPtr, MPIPtr, MPI_Count, MPI_Datatype, MPI_Op, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, recvbuf, count, datatype, op, comm, info, request) +function MPI_Type_create_hindexed_block_c(count, blocklength, array_of_displacements, oldtype, newtype) + @mpichk ccall((:MPI_Type_create_hindexed_block_c, libmpi), Cint, (MPI_Count, MPI_Count, Ptr{MPI_Count}, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, array_of_displacements, oldtype, newtype) end """ - MPI_Scatter_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) + MPI_Type_create_hindexed_c(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) -$(_doc_external(:MPI_Scatter_c)) +$(_doc_external(:MPI_Type_create_hindexed_c)) """ -function MPI_Scatter_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) - @mpichk ccall((:MPI_Scatter_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) +function MPI_Type_create_hindexed_c(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) + @mpichk ccall((:MPI_Type_create_hindexed_c, libmpi), Cint, (MPI_Count, Ptr{MPI_Count}, Ptr{MPI_Count}, MPI_Datatype, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, oldtype, newtype) end """ - MPI_Scatter_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) + MPI_Type_create_hvector(count, blocklength, stride, oldtype, newtype) -$(_doc_external(:MPI_Scatter_init_c)) +$(_doc_external(:MPI_Type_create_hvector)) """ -function MPI_Scatter_init_c(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) - @mpichk ccall((:MPI_Scatter_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) +function MPI_Type_create_hvector(count, blocklength, stride, oldtype, newtype) + @mpichk ccall((:MPI_Type_create_hvector, libmpi), Cint, (Cint, Cint, MPI_Aint, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, stride, oldtype, newtype) end """ - MPI_Scatterv_c(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm) + MPI_Type_create_hvector_c(count, blocklength, stride, oldtype, newtype) -$(_doc_external(:MPI_Scatterv_c)) +$(_doc_external(:MPI_Type_create_hvector_c)) """ -function MPI_Scatterv_c(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm) - @mpichk ccall((:MPI_Scatterv_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm) +function MPI_Type_create_hvector_c(count, blocklength, stride, oldtype, newtype) + @mpichk ccall((:MPI_Type_create_hvector_c, libmpi), Cint, (MPI_Count, MPI_Count, MPI_Count, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, stride, oldtype, newtype) end """ - MPI_Scatterv_init_c(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) + MPI_Type_create_indexed_block(count, blocklength, array_of_displacements, oldtype, newtype) -$(_doc_external(:MPI_Scatterv_init_c)) +$(_doc_external(:MPI_Type_create_indexed_block)) """ -function MPI_Scatterv_init_c(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) - @mpichk ccall((:MPI_Scatterv_init_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}, Ptr{MPI_Aint}, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Comm, MPI_Info, Ptr{MPI_Request}), sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm, info, request) +function MPI_Type_create_indexed_block(count, blocklength, array_of_displacements, oldtype, newtype) + @mpichk ccall((:MPI_Type_create_indexed_block, libmpi), Cint, (Cint, Cint, Ptr{Cint}, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, array_of_displacements, oldtype, newtype) end """ - MPI_Get_count_c(status, datatype, count) + MPI_Type_create_indexed_block_c(count, blocklength, array_of_displacements, oldtype, newtype) -$(_doc_external(:MPI_Get_count_c)) +$(_doc_external(:MPI_Type_create_indexed_block_c)) """ -function MPI_Get_count_c(status, datatype, count) - @mpichk ccall((:MPI_Get_count_c, libmpi), Cint, (Ptr{MPI_Status}, MPI_Datatype, Ptr{MPI_Count}), status, datatype, count) +function MPI_Type_create_indexed_block_c(count, blocklength, array_of_displacements, oldtype, newtype) + @mpichk ccall((:MPI_Type_create_indexed_block_c, libmpi), Cint, (MPI_Count, MPI_Count, Ptr{MPI_Count}, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, array_of_displacements, oldtype, newtype) end """ - MPI_Get_elements_c(status, datatype, count) + MPI_Type_create_keyval(type_copy_attr_fn, type_delete_attr_fn, type_keyval, extra_state) -$(_doc_external(:MPI_Get_elements_c)) +$(_doc_external(:MPI_Type_create_keyval)) """ -function MPI_Get_elements_c(status, datatype, count) - @mpichk ccall((:MPI_Get_elements_c, libmpi), Cint, (Ptr{MPI_Status}, MPI_Datatype, Ptr{MPI_Count}), status, datatype, count) +function MPI_Type_create_keyval(type_copy_attr_fn, type_delete_attr_fn, type_keyval, extra_state) + @mpichk ccall((:MPI_Type_create_keyval, libmpi), Cint, (Ptr{MPI_Type_copy_attr_function}, Ptr{MPI_Type_delete_attr_function}, Ptr{Cint}, MPIPtr), type_copy_attr_fn, type_delete_attr_fn, type_keyval, extra_state) end """ - MPI_Pack_c(inbuf, incount, datatype, outbuf, outsize, position, comm) + MPI_Type_create_resized(oldtype, lb, extent, newtype) -$(_doc_external(:MPI_Pack_c)) +$(_doc_external(:MPI_Type_create_resized)) """ -function MPI_Pack_c(inbuf, incount, datatype, outbuf, outsize, position, comm) - @mpichk ccall((:MPI_Pack_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, Ptr{MPI_Count}, MPI_Comm), inbuf, incount, datatype, outbuf, outsize, position, comm) +function MPI_Type_create_resized(oldtype, lb, extent, newtype) + @mpichk ccall((:MPI_Type_create_resized, libmpi), Cint, (MPI_Datatype, MPI_Aint, MPI_Aint, Ptr{MPI_Datatype}), oldtype, lb, extent, newtype) end """ - MPI_Pack_external_c(datarep, inbuf, incount, datatype, outbuf, outsize, position) + MPI_Type_create_resized_c(oldtype, lb, extent, newtype) -$(_doc_external(:MPI_Pack_external_c)) +$(_doc_external(:MPI_Type_create_resized_c)) """ -function MPI_Pack_external_c(datarep, inbuf, incount, datatype, outbuf, outsize, position) - @mpichk ccall((:MPI_Pack_external_c, libmpi), Cint, (Ptr{Cchar}, MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, Ptr{MPI_Count}), datarep, inbuf, incount, datatype, outbuf, outsize, position) +function MPI_Type_create_resized_c(oldtype, lb, extent, newtype) + @mpichk ccall((:MPI_Type_create_resized_c, libmpi), Cint, (MPI_Datatype, MPI_Count, MPI_Count, Ptr{MPI_Datatype}), oldtype, lb, extent, newtype) end """ - MPI_Pack_external_size_c(datarep, incount, datatype, size) + MPI_Type_create_struct(count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) -$(_doc_external(:MPI_Pack_external_size_c)) +$(_doc_external(:MPI_Type_create_struct)) """ -function MPI_Pack_external_size_c(datarep, incount, datatype, size) - @mpichk ccall((:MPI_Pack_external_size_c, libmpi), Cint, (Ptr{Cchar}, MPI_Count, MPI_Datatype, Ptr{MPI_Count}), datarep, incount, datatype, size) +function MPI_Type_create_struct(count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) + @mpichk ccall((:MPI_Type_create_struct, libmpi), Cint, (Cint, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) end """ - MPI_Pack_size_c(incount, datatype, comm, size) + MPI_Type_create_struct_c(count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) -$(_doc_external(:MPI_Pack_size_c)) +$(_doc_external(:MPI_Type_create_struct_c)) """ -function MPI_Pack_size_c(incount, datatype, comm, size) - @mpichk ccall((:MPI_Pack_size_c, libmpi), Cint, (MPI_Count, MPI_Datatype, MPI_Comm, Ptr{MPI_Count}), incount, datatype, comm, size) +function MPI_Type_create_struct_c(count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) + @mpichk ccall((:MPI_Type_create_struct_c, libmpi), Cint, (MPI_Count, Ptr{MPI_Count}, Ptr{MPI_Count}, Ptr{MPI_Datatype}, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) end """ - MPI_Status_set_elements_c(status, datatype, count) + MPI_Type_create_subarray(ndims, array_of_sizes, array_of_subsizes, array_of_starts, order, oldtype, newtype) -$(_doc_external(:MPI_Status_set_elements_c)) +$(_doc_external(:MPI_Type_create_subarray)) """ -function MPI_Status_set_elements_c(status, datatype, count) - @mpichk ccall((:MPI_Status_set_elements_c, libmpi), Cint, (Ptr{MPI_Status}, MPI_Datatype, MPI_Count), status, datatype, count) +function MPI_Type_create_subarray(ndims, array_of_sizes, array_of_subsizes, array_of_starts, order, oldtype, newtype) + @mpichk ccall((:MPI_Type_create_subarray, libmpi), Cint, (Cint, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}, Cint, MPI_Datatype, Ptr{MPI_Datatype}), ndims, array_of_sizes, array_of_subsizes, array_of_starts, order, oldtype, newtype) end """ - MPI_Type_contiguous_c(count, oldtype, newtype) + MPI_Type_create_subarray_c(ndims, array_of_sizes, array_of_subsizes, array_of_starts, order, oldtype, newtype) -$(_doc_external(:MPI_Type_contiguous_c)) +$(_doc_external(:MPI_Type_create_subarray_c)) """ -function MPI_Type_contiguous_c(count, oldtype, newtype) - @mpichk ccall((:MPI_Type_contiguous_c, libmpi), Cint, (MPI_Count, MPI_Datatype, Ptr{MPI_Datatype}), count, oldtype, newtype) +function MPI_Type_create_subarray_c(ndims, array_of_sizes, array_of_subsizes, array_of_starts, order, oldtype, newtype) + @mpichk ccall((:MPI_Type_create_subarray_c, libmpi), Cint, (Cint, Ptr{MPI_Count}, Ptr{MPI_Count}, Ptr{MPI_Count}, Cint, MPI_Datatype, Ptr{MPI_Datatype}), ndims, array_of_sizes, array_of_subsizes, array_of_starts, order, oldtype, newtype) end """ - MPI_Type_create_darray_c(size, rank, ndims, array_of_gsizes, array_of_distribs, array_of_dargs, array_of_psizes, order, oldtype, newtype) + MPI_Type_delete_attr(datatype, type_keyval) -$(_doc_external(:MPI_Type_create_darray_c)) +$(_doc_external(:MPI_Type_delete_attr)) """ -function MPI_Type_create_darray_c(size, rank, ndims, array_of_gsizes, array_of_distribs, array_of_dargs, array_of_psizes, order, oldtype, newtype) - @mpichk ccall((:MPI_Type_create_darray_c, libmpi), Cint, (Cint, Cint, Cint, Ptr{MPI_Count}, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}, Cint, MPI_Datatype, Ptr{MPI_Datatype}), size, rank, ndims, array_of_gsizes, array_of_distribs, array_of_dargs, array_of_psizes, order, oldtype, newtype) +function MPI_Type_delete_attr(datatype, type_keyval) + @mpichk ccall((:MPI_Type_delete_attr, libmpi), Cint, (MPI_Datatype, Cint), datatype, type_keyval) end """ - MPI_Type_create_hindexed_c(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) + MPI_Type_dup(oldtype, newtype) -$(_doc_external(:MPI_Type_create_hindexed_c)) +$(_doc_external(:MPI_Type_dup)) """ -function MPI_Type_create_hindexed_c(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) - @mpichk ccall((:MPI_Type_create_hindexed_c, libmpi), Cint, (MPI_Count, Ptr{MPI_Count}, Ptr{MPI_Count}, MPI_Datatype, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, oldtype, newtype) +function MPI_Type_dup(oldtype, newtype) + @mpichk ccall((:MPI_Type_dup, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Datatype}), oldtype, newtype) end """ - MPI_Type_create_hindexed_block_c(count, blocklength, array_of_displacements, oldtype, newtype) + MPI_Type_extent(datatype, extent) -$(_doc_external(:MPI_Type_create_hindexed_block_c)) +$(_doc_external(:MPI_Type_extent)) """ -function MPI_Type_create_hindexed_block_c(count, blocklength, array_of_displacements, oldtype, newtype) - @mpichk ccall((:MPI_Type_create_hindexed_block_c, libmpi), Cint, (MPI_Count, MPI_Count, Ptr{MPI_Count}, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, array_of_displacements, oldtype, newtype) +function MPI_Type_extent(datatype, extent) + @mpichk ccall((:MPI_Type_extent, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Aint}), datatype, extent) end """ - MPI_Type_create_hvector_c(count, blocklength, stride, oldtype, newtype) + MPI_Type_free(datatype) -$(_doc_external(:MPI_Type_create_hvector_c)) +$(_doc_external(:MPI_Type_free)) """ -function MPI_Type_create_hvector_c(count, blocklength, stride, oldtype, newtype) - @mpichk ccall((:MPI_Type_create_hvector_c, libmpi), Cint, (MPI_Count, MPI_Count, MPI_Count, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, stride, oldtype, newtype) +function MPI_Type_free(datatype) + @mpichk ccall((:MPI_Type_free, libmpi), Cint, (Ptr{MPI_Datatype},), datatype) end """ - MPI_Type_create_indexed_block_c(count, blocklength, array_of_displacements, oldtype, newtype) + MPI_Type_free_keyval(type_keyval) -$(_doc_external(:MPI_Type_create_indexed_block_c)) +$(_doc_external(:MPI_Type_free_keyval)) """ -function MPI_Type_create_indexed_block_c(count, blocklength, array_of_displacements, oldtype, newtype) - @mpichk ccall((:MPI_Type_create_indexed_block_c, libmpi), Cint, (MPI_Count, MPI_Count, Ptr{MPI_Count}, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, array_of_displacements, oldtype, newtype) +function MPI_Type_free_keyval(type_keyval) + @mpichk ccall((:MPI_Type_free_keyval, libmpi), Cint, (Ptr{Cint},), type_keyval) end """ - MPI_Type_create_resized_c(oldtype, lb, extent, newtype) + MPI_Type_fromint(datatype) -$(_doc_external(:MPI_Type_create_resized_c)) +$(_doc_external(:MPI_Type_fromint)) """ -function MPI_Type_create_resized_c(oldtype, lb, extent, newtype) - @mpichk ccall((:MPI_Type_create_resized_c, libmpi), Cint, (MPI_Datatype, MPI_Count, MPI_Count, Ptr{MPI_Datatype}), oldtype, lb, extent, newtype) +function MPI_Type_fromint(datatype) + @mpichk ccall((:MPI_Type_fromint, libmpi), MPI_Datatype, (Cint,), datatype) end """ - MPI_Type_create_struct_c(count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) + MPI_Type_get_attr(datatype, type_keyval, attribute_val, flag) -$(_doc_external(:MPI_Type_create_struct_c)) +$(_doc_external(:MPI_Type_get_attr)) """ -function MPI_Type_create_struct_c(count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) - @mpichk ccall((:MPI_Type_create_struct_c, libmpi), Cint, (MPI_Count, Ptr{MPI_Count}, Ptr{MPI_Count}, Ptr{MPI_Datatype}, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) +function MPI_Type_get_attr(datatype, type_keyval, attribute_val, flag) + @mpichk ccall((:MPI_Type_get_attr, libmpi), Cint, (MPI_Datatype, Cint, MPIPtr, Ptr{Cint}), datatype, type_keyval, attribute_val, flag) end """ - MPI_Type_create_subarray_c(ndims, array_of_sizes, array_of_subsizes, array_of_starts, order, oldtype, newtype) + MPI_Type_get_contents(datatype, max_integers, max_addresses, max_datatypes, array_of_integers, array_of_addresses, array_of_datatypes) -$(_doc_external(:MPI_Type_create_subarray_c)) +$(_doc_external(:MPI_Type_get_contents)) """ -function MPI_Type_create_subarray_c(ndims, array_of_sizes, array_of_subsizes, array_of_starts, order, oldtype, newtype) - @mpichk ccall((:MPI_Type_create_subarray_c, libmpi), Cint, (Cint, Ptr{MPI_Count}, Ptr{MPI_Count}, Ptr{MPI_Count}, Cint, MPI_Datatype, Ptr{MPI_Datatype}), ndims, array_of_sizes, array_of_subsizes, array_of_starts, order, oldtype, newtype) +function MPI_Type_get_contents(datatype, max_integers, max_addresses, max_datatypes, array_of_integers, array_of_addresses, array_of_datatypes) + @mpichk ccall((:MPI_Type_get_contents, libmpi), Cint, (MPI_Datatype, Cint, Cint, Cint, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}), datatype, max_integers, max_addresses, max_datatypes, array_of_integers, array_of_addresses, array_of_datatypes) end """ @@ -4761,6 +4725,15 @@ function MPI_Type_get_contents_c(datatype, max_integers, max_addresses, max_larg @mpichk ccall((:MPI_Type_get_contents_c, libmpi), Cint, (MPI_Datatype, MPI_Count, MPI_Count, MPI_Count, MPI_Count, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Count}, Ptr{MPI_Datatype}), datatype, max_integers, max_addresses, max_large_counts, max_datatypes, array_of_integers, array_of_addresses, array_of_large_counts, array_of_datatypes) end +""" + MPI_Type_get_envelope(datatype, num_integers, num_addresses, num_datatypes, combiner) + +$(_doc_external(:MPI_Type_get_envelope)) +""" +function MPI_Type_get_envelope(datatype, num_integers, num_addresses, num_datatypes, combiner) + @mpichk ccall((:MPI_Type_get_envelope, libmpi), Cint, (MPI_Datatype, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}, Ptr{Cint}), datatype, num_integers, num_addresses, num_datatypes, combiner) +end + """ MPI_Type_get_envelope_c(datatype, num_integers, num_addresses, num_large_counts, num_datatypes, combiner) @@ -4770,6 +4743,15 @@ function MPI_Type_get_envelope_c(datatype, num_integers, num_addresses, num_larg @mpichk ccall((:MPI_Type_get_envelope_c, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Count}, Ptr{MPI_Count}, Ptr{MPI_Count}, Ptr{MPI_Count}, Ptr{Cint}), datatype, num_integers, num_addresses, num_large_counts, num_datatypes, combiner) end +""" + MPI_Type_get_extent(datatype, lb, extent) + +$(_doc_external(:MPI_Type_get_extent)) +""" +function MPI_Type_get_extent(datatype, lb, extent) + @mpichk ccall((:MPI_Type_get_extent, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Aint}, Ptr{MPI_Aint}), datatype, lb, extent) +end + """ MPI_Type_get_extent_c(datatype, lb, extent) @@ -4780,667 +4762,685 @@ function MPI_Type_get_extent_c(datatype, lb, extent) end """ - MPI_Type_get_true_extent_c(datatype, true_lb, true_extent) + MPI_Type_get_extent_x(datatype, lb, extent) -$(_doc_external(:MPI_Type_get_true_extent_c)) +$(_doc_external(:MPI_Type_get_extent_x)) """ -function MPI_Type_get_true_extent_c(datatype, true_lb, true_extent) - @mpichk ccall((:MPI_Type_get_true_extent_c, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Count}, Ptr{MPI_Count}), datatype, true_lb, true_extent) +function MPI_Type_get_extent_x(datatype, lb, extent) + @mpichk ccall((:MPI_Type_get_extent_x, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Count}, Ptr{MPI_Count}), datatype, lb, extent) end """ - MPI_Type_indexed_c(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) + MPI_Type_get_name(datatype, type_name, resultlen) -$(_doc_external(:MPI_Type_indexed_c)) +$(_doc_external(:MPI_Type_get_name)) """ -function MPI_Type_indexed_c(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) - @mpichk ccall((:MPI_Type_indexed_c, libmpi), Cint, (MPI_Count, Ptr{MPI_Count}, Ptr{MPI_Count}, MPI_Datatype, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, oldtype, newtype) +function MPI_Type_get_name(datatype, type_name, resultlen) + @mpichk ccall((:MPI_Type_get_name, libmpi), Cint, (MPI_Datatype, Ptr{Cchar}, Ptr{Cint}), datatype, type_name, resultlen) end """ - MPI_Type_size_c(datatype, size) + MPI_Type_get_true_extent(datatype, true_lb, true_extent) -$(_doc_external(:MPI_Type_size_c)) +$(_doc_external(:MPI_Type_get_true_extent)) """ -function MPI_Type_size_c(datatype, size) - @mpichk ccall((:MPI_Type_size_c, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Count}), datatype, size) +function MPI_Type_get_true_extent(datatype, true_lb, true_extent) + @mpichk ccall((:MPI_Type_get_true_extent, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Aint}, Ptr{MPI_Aint}), datatype, true_lb, true_extent) end """ - MPI_Type_vector_c(count, blocklength, stride, oldtype, newtype) + MPI_Type_get_true_extent_c(datatype, true_lb, true_extent) -$(_doc_external(:MPI_Type_vector_c)) +$(_doc_external(:MPI_Type_get_true_extent_c)) """ -function MPI_Type_vector_c(count, blocklength, stride, oldtype, newtype) - @mpichk ccall((:MPI_Type_vector_c, libmpi), Cint, (MPI_Count, MPI_Count, MPI_Count, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, stride, oldtype, newtype) +function MPI_Type_get_true_extent_c(datatype, true_lb, true_extent) + @mpichk ccall((:MPI_Type_get_true_extent_c, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Count}, Ptr{MPI_Count}), datatype, true_lb, true_extent) end """ - MPI_Unpack_c(inbuf, insize, position, outbuf, outcount, datatype, comm) + MPI_Type_get_true_extent_x(datatype, true_lb, true_extent) -$(_doc_external(:MPI_Unpack_c)) +$(_doc_external(:MPI_Type_get_true_extent_x)) """ -function MPI_Unpack_c(inbuf, insize, position, outbuf, outcount, datatype, comm) - @mpichk ccall((:MPI_Unpack_c, libmpi), Cint, (MPIPtr, MPI_Count, Ptr{MPI_Count}, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm), inbuf, insize, position, outbuf, outcount, datatype, comm) +function MPI_Type_get_true_extent_x(datatype, true_lb, true_extent) + @mpichk ccall((:MPI_Type_get_true_extent_x, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Count}, Ptr{MPI_Count}), datatype, true_lb, true_extent) end """ - MPI_Unpack_external_c(datarep, inbuf, insize, position, outbuf, outcount, datatype) + MPI_Type_get_value_index(value_type, index_type, pair_type) -$(_doc_external(:MPI_Unpack_external_c)) +$(_doc_external(:MPI_Type_get_value_index)) """ -function MPI_Unpack_external_c(datarep, inbuf, insize, position, outbuf, outcount, datatype) - @mpichk ccall((:MPI_Unpack_external_c, libmpi), Cint, (Ptr{Cchar}, MPIPtr, MPI_Count, Ptr{MPI_Count}, MPIPtr, MPI_Count, MPI_Datatype), datarep, inbuf, insize, position, outbuf, outcount, datatype) +function MPI_Type_get_value_index(value_type, index_type, pair_type) + @mpichk ccall((:MPI_Type_get_value_index, libmpi), Cint, (MPI_Datatype, MPI_Datatype, Ptr{MPI_Datatype}), value_type, index_type, pair_type) end """ - MPI_Op_create_c(user_fn, commute, op) + MPI_Type_hindexed(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) -$(_doc_external(:MPI_Op_create_c)) +$(_doc_external(:MPI_Type_hindexed)) """ -function MPI_Op_create_c(user_fn, commute, op) - @mpichk ccall((:MPI_Op_create_c, libmpi), Cint, (Ptr{MPI_User_function_c}, Cint, Ptr{MPI_Op}), user_fn, commute, op) +function MPI_Type_hindexed(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) + @mpichk ccall((:MPI_Type_hindexed, libmpi), Cint, (Cint, Ptr{Cint}, Ptr{MPI_Aint}, MPI_Datatype, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, oldtype, newtype) end """ - MPI_Bsend_c(buf, count, datatype, dest, tag, comm) + MPI_Type_hvector(count, blocklength, stride, oldtype, newtype) -$(_doc_external(:MPI_Bsend_c)) +$(_doc_external(:MPI_Type_hvector)) """ -function MPI_Bsend_c(buf, count, datatype, dest, tag, comm) - @mpichk ccall((:MPI_Bsend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) +function MPI_Type_hvector(count, blocklength, stride, oldtype, newtype) + @mpichk ccall((:MPI_Type_hvector, libmpi), Cint, (Cint, Cint, MPI_Aint, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, stride, oldtype, newtype) end """ - MPI_Bsend_init_c(buf, count, datatype, dest, tag, comm, request) + MPI_Type_indexed(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) -$(_doc_external(:MPI_Bsend_init_c)) +$(_doc_external(:MPI_Type_indexed)) """ -function MPI_Bsend_init_c(buf, count, datatype, dest, tag, comm, request) - @mpichk ccall((:MPI_Bsend_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) +function MPI_Type_indexed(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) + @mpichk ccall((:MPI_Type_indexed, libmpi), Cint, (Cint, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, oldtype, newtype) end """ - MPI_Buffer_attach_c(buffer, size) + MPI_Type_indexed_c(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) -$(_doc_external(:MPI_Buffer_attach_c)) +$(_doc_external(:MPI_Type_indexed_c)) """ -function MPI_Buffer_attach_c(buffer, size) - @mpichk ccall((:MPI_Buffer_attach_c, libmpi), Cint, (MPIPtr, MPI_Count), buffer, size) +function MPI_Type_indexed_c(count, array_of_blocklengths, array_of_displacements, oldtype, newtype) + @mpichk ccall((:MPI_Type_indexed_c, libmpi), Cint, (MPI_Count, Ptr{MPI_Count}, Ptr{MPI_Count}, MPI_Datatype, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, oldtype, newtype) +end + +""" + MPI_Type_lb(datatype, displacement) + +$(_doc_external(:MPI_Type_lb)) +""" +function MPI_Type_lb(datatype, displacement) + @mpichk ccall((:MPI_Type_lb, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Aint}), datatype, displacement) +end + +""" + MPI_Type_match_size(typeclass, size, datatype) + +$(_doc_external(:MPI_Type_match_size)) +""" +function MPI_Type_match_size(typeclass, size, datatype) + @mpichk ccall((:MPI_Type_match_size, libmpi), Cint, (Cint, Cint, Ptr{MPI_Datatype}), typeclass, size, datatype) end """ - MPI_Buffer_detach_c(buffer_addr, size) + MPI_Type_set_attr(datatype, type_keyval, attribute_val) -$(_doc_external(:MPI_Buffer_detach_c)) +$(_doc_external(:MPI_Type_set_attr)) """ -function MPI_Buffer_detach_c(buffer_addr, size) - @mpichk ccall((:MPI_Buffer_detach_c, libmpi), Cint, (MPIPtr, Ptr{MPI_Count}), buffer_addr, size) +function MPI_Type_set_attr(datatype, type_keyval, attribute_val) + @mpichk ccall((:MPI_Type_set_attr, libmpi), Cint, (MPI_Datatype, Cint, MPIPtr), datatype, type_keyval, attribute_val) end """ - MPI_Comm_attach_buffer_c(comm, buffer, size) + MPI_Type_set_name(datatype, type_name) -$(_doc_external(:MPI_Comm_attach_buffer_c)) +$(_doc_external(:MPI_Type_set_name)) """ -function MPI_Comm_attach_buffer_c(comm, buffer, size) - @mpichk ccall((:MPI_Comm_attach_buffer_c, libmpi), Cint, (MPI_Comm, MPIPtr, MPI_Count), comm, buffer, size) +function MPI_Type_set_name(datatype, type_name) + @mpichk ccall((:MPI_Type_set_name, libmpi), Cint, (MPI_Datatype, Ptr{Cchar}), datatype, type_name) end """ - MPI_Comm_detach_buffer_c(comm, buffer_addr, size) + MPI_Type_size(datatype, size) -$(_doc_external(:MPI_Comm_detach_buffer_c)) +$(_doc_external(:MPI_Type_size)) """ -function MPI_Comm_detach_buffer_c(comm, buffer_addr, size) - @mpichk ccall((:MPI_Comm_detach_buffer_c, libmpi), Cint, (MPI_Comm, MPIPtr, Ptr{MPI_Count}), comm, buffer_addr, size) +function MPI_Type_size(datatype, size) + @mpichk ccall((:MPI_Type_size, libmpi), Cint, (MPI_Datatype, Ptr{Cint}), datatype, size) end """ - MPI_Ibsend_c(buf, count, datatype, dest, tag, comm, request) + MPI_Type_size_c(datatype, size) -$(_doc_external(:MPI_Ibsend_c)) +$(_doc_external(:MPI_Type_size_c)) """ -function MPI_Ibsend_c(buf, count, datatype, dest, tag, comm, request) - @mpichk ccall((:MPI_Ibsend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) +function MPI_Type_size_c(datatype, size) + @mpichk ccall((:MPI_Type_size_c, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Count}), datatype, size) end """ - MPI_Imrecv_c(buf, count, datatype, message, request) + MPI_Type_size_x(datatype, size) -$(_doc_external(:MPI_Imrecv_c)) +$(_doc_external(:MPI_Type_size_x)) """ -function MPI_Imrecv_c(buf, count, datatype, message, request) - @mpichk ccall((:MPI_Imrecv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Message}, Ptr{MPI_Request}), buf, count, datatype, message, request) +function MPI_Type_size_x(datatype, size) + @mpichk ccall((:MPI_Type_size_x, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Count}), datatype, size) end """ - MPI_Irecv_c(buf, count, datatype, source, tag, comm, request) + MPI_Type_struct(count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) -$(_doc_external(:MPI_Irecv_c)) +$(_doc_external(:MPI_Type_struct)) """ -function MPI_Irecv_c(buf, count, datatype, source, tag, comm, request) - @mpichk ccall((:MPI_Irecv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, source, tag, comm, request) +function MPI_Type_struct(count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) + @mpichk ccall((:MPI_Type_struct, libmpi), Cint, (Cint, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, Ptr{MPI_Datatype}), count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) end """ - MPI_Irsend_c(buf, count, datatype, dest, tag, comm, request) + MPI_Type_toint(datatype) -$(_doc_external(:MPI_Irsend_c)) +$(_doc_external(:MPI_Type_toint)) """ -function MPI_Irsend_c(buf, count, datatype, dest, tag, comm, request) - @mpichk ccall((:MPI_Irsend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) +function MPI_Type_toint(datatype) + @mpichk ccall((:MPI_Type_toint, libmpi), Cint, (MPI_Datatype,), datatype) end """ - MPI_Isend_c(buf, count, datatype, dest, tag, comm, request) + MPI_Type_ub(datatype, displacement) -$(_doc_external(:MPI_Isend_c)) +$(_doc_external(:MPI_Type_ub)) """ -function MPI_Isend_c(buf, count, datatype, dest, tag, comm, request) - @mpichk ccall((:MPI_Isend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) +function MPI_Type_ub(datatype, displacement) + @mpichk ccall((:MPI_Type_ub, libmpi), Cint, (MPI_Datatype, Ptr{MPI_Aint}), datatype, displacement) end """ - MPI_Isendrecv_c(sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, request) + MPI_Type_vector(count, blocklength, stride, oldtype, newtype) -$(_doc_external(:MPI_Isendrecv_c)) +$(_doc_external(:MPI_Type_vector)) """ -function MPI_Isendrecv_c(sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, request) - @mpichk ccall((:MPI_Isendrecv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, request) +function MPI_Type_vector(count, blocklength, stride, oldtype, newtype) + @mpichk ccall((:MPI_Type_vector, libmpi), Cint, (Cint, Cint, Cint, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, stride, oldtype, newtype) end """ - MPI_Isendrecv_replace_c(buf, count, datatype, dest, sendtag, source, recvtag, comm, request) + MPI_Type_vector_c(count, blocklength, stride, oldtype, newtype) -$(_doc_external(:MPI_Isendrecv_replace_c)) +$(_doc_external(:MPI_Type_vector_c)) """ -function MPI_Isendrecv_replace_c(buf, count, datatype, dest, sendtag, source, recvtag, comm, request) - @mpichk ccall((:MPI_Isendrecv_replace_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, sendtag, source, recvtag, comm, request) +function MPI_Type_vector_c(count, blocklength, stride, oldtype, newtype) + @mpichk ccall((:MPI_Type_vector_c, libmpi), Cint, (MPI_Count, MPI_Count, MPI_Count, MPI_Datatype, Ptr{MPI_Datatype}), count, blocklength, stride, oldtype, newtype) end """ - MPI_Issend_c(buf, count, datatype, dest, tag, comm, request) + MPI_Unpack(inbuf, insize, position, outbuf, outcount, datatype, comm) -$(_doc_external(:MPI_Issend_c)) +$(_doc_external(:MPI_Unpack)) """ -function MPI_Issend_c(buf, count, datatype, dest, tag, comm, request) - @mpichk ccall((:MPI_Issend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) +function MPI_Unpack(inbuf, insize, position, outbuf, outcount, datatype, comm) + @mpichk ccall((:MPI_Unpack, libmpi), Cint, (MPIPtr, Cint, Ptr{Cint}, MPIPtr, Cint, MPI_Datatype, MPI_Comm), inbuf, insize, position, outbuf, outcount, datatype, comm) end """ - MPI_Mrecv_c(buf, count, datatype, message, status) + MPI_Unpack_c(inbuf, insize, position, outbuf, outcount, datatype, comm) -$(_doc_external(:MPI_Mrecv_c)) +$(_doc_external(:MPI_Unpack_c)) """ -function MPI_Mrecv_c(buf, count, datatype, message, status) - @mpichk ccall((:MPI_Mrecv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Message}, Ptr{MPI_Status}), buf, count, datatype, message, status) +function MPI_Unpack_c(inbuf, insize, position, outbuf, outcount, datatype, comm) + @mpichk ccall((:MPI_Unpack_c, libmpi), Cint, (MPIPtr, MPI_Count, Ptr{MPI_Count}, MPIPtr, MPI_Count, MPI_Datatype, MPI_Comm), inbuf, insize, position, outbuf, outcount, datatype, comm) end """ - MPI_Recv_c(buf, count, datatype, source, tag, comm, status) + MPI_Unpack_external(datarep, inbuf, insize, position, outbuf, outcount, datatype) -$(_doc_external(:MPI_Recv_c)) +$(_doc_external(:MPI_Unpack_external)) """ -function MPI_Recv_c(buf, count, datatype, source, tag, comm, status) - @mpichk ccall((:MPI_Recv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Status}), buf, count, datatype, source, tag, comm, status) +function MPI_Unpack_external(datarep, inbuf, insize, position, outbuf, outcount, datatype) + @mpichk ccall((:MPI_Unpack_external, libmpi), Cint, (Ptr{Cchar}, MPIPtr, MPI_Aint, Ptr{MPI_Aint}, MPIPtr, Cint, MPI_Datatype), datarep, inbuf, insize, position, outbuf, outcount, datatype) end """ - MPI_Recv_init_c(buf, count, datatype, source, tag, comm, request) + MPI_Unpack_external_c(datarep, inbuf, insize, position, outbuf, outcount, datatype) -$(_doc_external(:MPI_Recv_init_c)) +$(_doc_external(:MPI_Unpack_external_c)) """ -function MPI_Recv_init_c(buf, count, datatype, source, tag, comm, request) - @mpichk ccall((:MPI_Recv_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, source, tag, comm, request) +function MPI_Unpack_external_c(datarep, inbuf, insize, position, outbuf, outcount, datatype) + @mpichk ccall((:MPI_Unpack_external_c, libmpi), Cint, (Ptr{Cchar}, MPIPtr, MPI_Count, Ptr{MPI_Count}, MPIPtr, MPI_Count, MPI_Datatype), datarep, inbuf, insize, position, outbuf, outcount, datatype) end """ - MPI_Rsend_c(buf, count, datatype, dest, tag, comm) + MPI_Unpublish_name(service_name, info, port_name) -$(_doc_external(:MPI_Rsend_c)) +$(_doc_external(:MPI_Unpublish_name)) """ -function MPI_Rsend_c(buf, count, datatype, dest, tag, comm) - @mpichk ccall((:MPI_Rsend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) +function MPI_Unpublish_name(service_name, info, port_name) + @mpichk ccall((:MPI_Unpublish_name, libmpi), Cint, (Ptr{Cchar}, MPI_Info, Ptr{Cchar}), service_name, info, port_name) end """ - MPI_Rsend_init_c(buf, count, datatype, dest, tag, comm, request) + MPI_Wait(request, status) -$(_doc_external(:MPI_Rsend_init_c)) +$(_doc_external(:MPI_Wait)) """ -function MPI_Rsend_init_c(buf, count, datatype, dest, tag, comm, request) - @mpichk ccall((:MPI_Rsend_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) +function MPI_Wait(request, status) + @mpichk gc_safe=true ccall((:MPI_Wait, libmpi), Cint, (Ptr{MPI_Request}, Ptr{MPI_Status}), request, status) end """ - MPI_Send_c(buf, count, datatype, dest, tag, comm) + MPI_Waitall(count, array_of_requests, array_of_statuses) -$(_doc_external(:MPI_Send_c)) +$(_doc_external(:MPI_Waitall)) """ -function MPI_Send_c(buf, count, datatype, dest, tag, comm) - @mpichk ccall((:MPI_Send_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) +function MPI_Waitall(count, array_of_requests, array_of_statuses) + @mpichk ccall((:MPI_Waitall, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{MPI_Status}), count, array_of_requests, array_of_statuses) end """ - MPI_Send_init_c(buf, count, datatype, dest, tag, comm, request) + MPI_Waitany(count, array_of_requests, indx, status) -$(_doc_external(:MPI_Send_init_c)) +$(_doc_external(:MPI_Waitany)) """ -function MPI_Send_init_c(buf, count, datatype, dest, tag, comm, request) - @mpichk ccall((:MPI_Send_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) +function MPI_Waitany(count, array_of_requests, indx, status) + @mpichk ccall((:MPI_Waitany, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{Cint}, Ptr{MPI_Status}), count, array_of_requests, indx, status) end """ - MPI_Sendrecv_c(sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, status) + MPI_Waitsome(incount, array_of_requests, outcount, array_of_indices, array_of_statuses) -$(_doc_external(:MPI_Sendrecv_c)) +$(_doc_external(:MPI_Waitsome)) """ -function MPI_Sendrecv_c(sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, status) - @mpichk ccall((:MPI_Sendrecv_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Status}), sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, status) +function MPI_Waitsome(incount, array_of_requests, outcount, array_of_indices, array_of_statuses) + @mpichk ccall((:MPI_Waitsome, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Status}), incount, array_of_requests, outcount, array_of_indices, array_of_statuses) end """ - MPI_Sendrecv_replace_c(buf, count, datatype, dest, sendtag, source, recvtag, comm, status) + MPI_Win_allocate(size, disp_unit, info, comm, baseptr, win) -$(_doc_external(:MPI_Sendrecv_replace_c)) +$(_doc_external(:MPI_Win_allocate)) """ -function MPI_Sendrecv_replace_c(buf, count, datatype, dest, sendtag, source, recvtag, comm, status) - @mpichk ccall((:MPI_Sendrecv_replace_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, Cint, Cint, MPI_Comm, Ptr{MPI_Status}), buf, count, datatype, dest, sendtag, source, recvtag, comm, status) +function MPI_Win_allocate(size, disp_unit, info, comm, baseptr, win) + @mpichk ccall((:MPI_Win_allocate, libmpi), Cint, (MPI_Aint, Cint, MPI_Info, MPI_Comm, MPIPtr, Ptr{MPI_Win}), size, disp_unit, info, comm, baseptr, win) end """ - MPI_Ssend_c(buf, count, datatype, dest, tag, comm) + MPI_Win_allocate_c(size, disp_unit, info, comm, baseptr, win) -$(_doc_external(:MPI_Ssend_c)) +$(_doc_external(:MPI_Win_allocate_c)) """ -function MPI_Ssend_c(buf, count, datatype, dest, tag, comm) - @mpichk ccall((:MPI_Ssend_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) +function MPI_Win_allocate_c(size, disp_unit, info, comm, baseptr, win) + @mpichk ccall((:MPI_Win_allocate_c, libmpi), Cint, (MPI_Aint, MPI_Aint, MPI_Info, MPI_Comm, MPIPtr, Ptr{MPI_Win}), size, disp_unit, info, comm, baseptr, win) end """ - MPI_Ssend_init_c(buf, count, datatype, dest, tag, comm, request) + MPI_Win_allocate_shared(size, disp_unit, info, comm, baseptr, win) -$(_doc_external(:MPI_Ssend_init_c)) +$(_doc_external(:MPI_Win_allocate_shared)) """ -function MPI_Ssend_init_c(buf, count, datatype, dest, tag, comm, request) - @mpichk ccall((:MPI_Ssend_init_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Request}), buf, count, datatype, dest, tag, comm, request) +function MPI_Win_allocate_shared(size, disp_unit, info, comm, baseptr, win) + @mpichk ccall((:MPI_Win_allocate_shared, libmpi), Cint, (MPI_Aint, Cint, MPI_Info, MPI_Comm, MPIPtr, Ptr{MPI_Win}), size, disp_unit, info, comm, baseptr, win) end """ - MPI_Accumulate_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win) + MPI_Win_allocate_shared_c(size, disp_unit, info, comm, baseptr, win) -$(_doc_external(:MPI_Accumulate_c)) +$(_doc_external(:MPI_Win_allocate_shared_c)) """ -function MPI_Accumulate_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win) - @mpichk ccall((:MPI_Accumulate_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Op, MPI_Win), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win) +function MPI_Win_allocate_shared_c(size, disp_unit, info, comm, baseptr, win) + @mpichk ccall((:MPI_Win_allocate_shared_c, libmpi), Cint, (MPI_Aint, MPI_Aint, MPI_Info, MPI_Comm, MPIPtr, Ptr{MPI_Win}), size, disp_unit, info, comm, baseptr, win) end """ - MPI_Get_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) + MPI_Win_attach(win, base, size) -$(_doc_external(:MPI_Get_c)) +$(_doc_external(:MPI_Win_attach)) """ -function MPI_Get_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) - @mpichk ccall((:MPI_Get_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Win), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) +function MPI_Win_attach(win, base, size) + @mpichk ccall((:MPI_Win_attach, libmpi), Cint, (MPI_Win, MPIPtr, MPI_Aint), win, base, size) end """ - MPI_Get_accumulate_c(origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win) + MPI_Win_call_errhandler(win, errorcode) -$(_doc_external(:MPI_Get_accumulate_c)) +$(_doc_external(:MPI_Win_call_errhandler)) """ -function MPI_Get_accumulate_c(origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win) - @mpichk ccall((:MPI_Get_accumulate_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Op, MPI_Win), origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win) +function MPI_Win_call_errhandler(win, errorcode) + @mpichk ccall((:MPI_Win_call_errhandler, libmpi), Cint, (MPI_Win, Cint), win, errorcode) end """ - MPI_Put_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) + MPI_Win_complete(win) -$(_doc_external(:MPI_Put_c)) +$(_doc_external(:MPI_Win_complete)) """ -function MPI_Put_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) - @mpichk ccall((:MPI_Put_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Win), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win) +function MPI_Win_complete(win) + @mpichk ccall((:MPI_Win_complete, libmpi), Cint, (MPI_Win,), win) end """ - MPI_Raccumulate_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) + MPI_Win_create(base, size, disp_unit, info, comm, win) -$(_doc_external(:MPI_Raccumulate_c)) +$(_doc_external(:MPI_Win_create)) """ -function MPI_Raccumulate_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) - @mpichk ccall((:MPI_Raccumulate_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Op, MPI_Win, Ptr{MPI_Request}), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) +function MPI_Win_create(base, size, disp_unit, info, comm, win) + @mpichk ccall((:MPI_Win_create, libmpi), Cint, (MPIPtr, MPI_Aint, Cint, MPI_Info, MPI_Comm, Ptr{MPI_Win}), base, size, disp_unit, info, comm, win) end """ - MPI_Rget_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) + MPI_Win_create_c(base, size, disp_unit, info, comm, win) -$(_doc_external(:MPI_Rget_c)) +$(_doc_external(:MPI_Win_create_c)) """ -function MPI_Rget_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) - @mpichk ccall((:MPI_Rget_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Win, Ptr{MPI_Request}), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) +function MPI_Win_create_c(base, size, disp_unit, info, comm, win) + @mpichk ccall((:MPI_Win_create_c, libmpi), Cint, (MPIPtr, MPI_Aint, MPI_Aint, MPI_Info, MPI_Comm, Ptr{MPI_Win}), base, size, disp_unit, info, comm, win) end """ - MPI_Rget_accumulate_c(origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) + MPI_Win_create_dynamic(info, comm, win) -$(_doc_external(:MPI_Rget_accumulate_c)) +$(_doc_external(:MPI_Win_create_dynamic)) """ -function MPI_Rget_accumulate_c(origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) - @mpichk ccall((:MPI_Rget_accumulate_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Op, MPI_Win, Ptr{MPI_Request}), origin_addr, origin_count, origin_datatype, result_addr, result_count, result_datatype, target_rank, target_disp, target_count, target_datatype, op, win, request) +function MPI_Win_create_dynamic(info, comm, win) + @mpichk ccall((:MPI_Win_create_dynamic, libmpi), Cint, (MPI_Info, MPI_Comm, Ptr{MPI_Win}), info, comm, win) end """ - MPI_Rput_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) + MPI_Win_create_errhandler(win_errhandler_fn, errhandler) -$(_doc_external(:MPI_Rput_c)) +$(_doc_external(:MPI_Win_create_errhandler)) """ -function MPI_Rput_c(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) - @mpichk ccall((:MPI_Rput_c, libmpi), Cint, (MPIPtr, MPI_Count, MPI_Datatype, Cint, MPI_Aint, MPI_Count, MPI_Datatype, MPI_Win, Ptr{MPI_Request}), origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win, request) +function MPI_Win_create_errhandler(win_errhandler_fn, errhandler) + @mpichk ccall((:MPI_Win_create_errhandler, libmpi), Cint, (Ptr{MPI_Win_errhandler_function}, Ptr{MPI_Errhandler}), win_errhandler_fn, errhandler) end """ - MPI_Win_allocate_c(size, disp_unit, info, comm, baseptr, win) + MPI_Win_create_keyval(win_copy_attr_fn, win_delete_attr_fn, win_keyval, extra_state) -$(_doc_external(:MPI_Win_allocate_c)) +$(_doc_external(:MPI_Win_create_keyval)) """ -function MPI_Win_allocate_c(size, disp_unit, info, comm, baseptr, win) - @mpichk ccall((:MPI_Win_allocate_c, libmpi), Cint, (MPI_Aint, MPI_Aint, MPI_Info, MPI_Comm, MPIPtr, Ptr{MPI_Win}), size, disp_unit, info, comm, baseptr, win) +function MPI_Win_create_keyval(win_copy_attr_fn, win_delete_attr_fn, win_keyval, extra_state) + @mpichk ccall((:MPI_Win_create_keyval, libmpi), Cint, (Ptr{MPI_Win_copy_attr_function}, Ptr{MPI_Win_delete_attr_function}, Ptr{Cint}, MPIPtr), win_copy_attr_fn, win_delete_attr_fn, win_keyval, extra_state) end """ - MPI_Win_allocate_shared_c(size, disp_unit, info, comm, baseptr, win) + MPI_Win_delete_attr(win, win_keyval) -$(_doc_external(:MPI_Win_allocate_shared_c)) +$(_doc_external(:MPI_Win_delete_attr)) """ -function MPI_Win_allocate_shared_c(size, disp_unit, info, comm, baseptr, win) - @mpichk ccall((:MPI_Win_allocate_shared_c, libmpi), Cint, (MPI_Aint, MPI_Aint, MPI_Info, MPI_Comm, MPIPtr, Ptr{MPI_Win}), size, disp_unit, info, comm, baseptr, win) +function MPI_Win_delete_attr(win, win_keyval) + @mpichk ccall((:MPI_Win_delete_attr, libmpi), Cint, (MPI_Win, Cint), win, win_keyval) end """ - MPI_Win_create_c(base, size, disp_unit, info, comm, win) + MPI_Win_detach(win, base) -$(_doc_external(:MPI_Win_create_c)) +$(_doc_external(:MPI_Win_detach)) """ -function MPI_Win_create_c(base, size, disp_unit, info, comm, win) - @mpichk ccall((:MPI_Win_create_c, libmpi), Cint, (MPIPtr, MPI_Aint, MPI_Aint, MPI_Info, MPI_Comm, Ptr{MPI_Win}), base, size, disp_unit, info, comm, win) +function MPI_Win_detach(win, base) + @mpichk ccall((:MPI_Win_detach, libmpi), Cint, (MPI_Win, MPIPtr), win, base) end """ - MPI_Win_shared_query_c(win, rank, size, disp_unit, baseptr) + MPI_Win_fence(assert, win) -$(_doc_external(:MPI_Win_shared_query_c)) +$(_doc_external(:MPI_Win_fence)) """ -function MPI_Win_shared_query_c(win, rank, size, disp_unit, baseptr) - @mpichk ccall((:MPI_Win_shared_query_c, libmpi), Cint, (MPI_Win, Cint, Ptr{MPI_Aint}, Ptr{MPI_Aint}, MPIPtr), win, rank, size, disp_unit, baseptr) +function MPI_Win_fence(assert, win) + @mpichk ccall((:MPI_Win_fence, libmpi), Cint, (Cint, MPI_Win), assert, win) end """ - MPI_File_get_type_extent_c(fh, datatype, extent) + MPI_Win_flush(rank, win) -$(_doc_external(:MPI_File_get_type_extent_c)) +$(_doc_external(:MPI_Win_flush)) """ -function MPI_File_get_type_extent_c(fh, datatype, extent) - @mpichk ccall((:MPI_File_get_type_extent_c, libmpi), Cint, (MPI_File, MPI_Datatype, Ptr{MPI_Count}), fh, datatype, extent) +function MPI_Win_flush(rank, win) + @mpichk ccall((:MPI_Win_flush, libmpi), Cint, (Cint, MPI_Win), rank, win) end """ - MPI_File_iread_c(fh, buf, count, datatype, request) + MPI_Win_flush_all(win) -$(_doc_external(:MPI_File_iread_c)) +$(_doc_external(:MPI_Win_flush_all)) """ -function MPI_File_iread_c(fh, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iread_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) +function MPI_Win_flush_all(win) + @mpichk ccall((:MPI_Win_flush_all, libmpi), Cint, (MPI_Win,), win) end """ - MPI_File_iread_all_c(fh, buf, count, datatype, request) + MPI_Win_flush_local(rank, win) -$(_doc_external(:MPI_File_iread_all_c)) +$(_doc_external(:MPI_Win_flush_local)) """ -function MPI_File_iread_all_c(fh, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iread_all_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) +function MPI_Win_flush_local(rank, win) + @mpichk ccall((:MPI_Win_flush_local, libmpi), Cint, (Cint, MPI_Win), rank, win) end """ - MPI_File_iread_at_c(fh, offset, buf, count, datatype, request) + MPI_Win_flush_local_all(win) -$(_doc_external(:MPI_File_iread_at_c)) +$(_doc_external(:MPI_Win_flush_local_all)) """ -function MPI_File_iread_at_c(fh, offset, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iread_at_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) +function MPI_Win_flush_local_all(win) + @mpichk ccall((:MPI_Win_flush_local_all, libmpi), Cint, (MPI_Win,), win) end """ - MPI_File_iread_at_all_c(fh, offset, buf, count, datatype, request) + MPI_Win_free(win) -$(_doc_external(:MPI_File_iread_at_all_c)) +$(_doc_external(:MPI_Win_free)) """ -function MPI_File_iread_at_all_c(fh, offset, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iread_at_all_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) +function MPI_Win_free(win) + @mpichk ccall((:MPI_Win_free, libmpi), Cint, (Ptr{MPI_Win},), win) end """ - MPI_File_iread_shared_c(fh, buf, count, datatype, request) + MPI_Win_free_keyval(win_keyval) -$(_doc_external(:MPI_File_iread_shared_c)) +$(_doc_external(:MPI_Win_free_keyval)) """ -function MPI_File_iread_shared_c(fh, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iread_shared_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) +function MPI_Win_free_keyval(win_keyval) + @mpichk ccall((:MPI_Win_free_keyval, libmpi), Cint, (Ptr{Cint},), win_keyval) end """ - MPI_File_iwrite_c(fh, buf, count, datatype, request) + MPI_Win_fromint(win) -$(_doc_external(:MPI_File_iwrite_c)) +$(_doc_external(:MPI_Win_fromint)) """ -function MPI_File_iwrite_c(fh, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iwrite_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) +function MPI_Win_fromint(win) + @mpichk ccall((:MPI_Win_fromint, libmpi), MPI_Win, (Cint,), win) end """ - MPI_File_iwrite_all_c(fh, buf, count, datatype, request) + MPI_Win_get_attr(win, win_keyval, attribute_val, flag) -$(_doc_external(:MPI_File_iwrite_all_c)) +$(_doc_external(:MPI_Win_get_attr)) """ -function MPI_File_iwrite_all_c(fh, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iwrite_all_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) +function MPI_Win_get_attr(win, win_keyval, attribute_val, flag) + @mpichk ccall((:MPI_Win_get_attr, libmpi), Cint, (MPI_Win, Cint, MPIPtr, Ptr{Cint}), win, win_keyval, attribute_val, flag) end """ - MPI_File_iwrite_at_c(fh, offset, buf, count, datatype, request) + MPI_Win_get_errhandler(win, errhandler) -$(_doc_external(:MPI_File_iwrite_at_c)) +$(_doc_external(:MPI_Win_get_errhandler)) """ -function MPI_File_iwrite_at_c(fh, offset, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iwrite_at_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) +function MPI_Win_get_errhandler(win, errhandler) + @mpichk ccall((:MPI_Win_get_errhandler, libmpi), Cint, (MPI_Win, Ptr{MPI_Errhandler}), win, errhandler) end """ - MPI_File_iwrite_at_all_c(fh, offset, buf, count, datatype, request) + MPI_Win_get_group(win, group) -$(_doc_external(:MPI_File_iwrite_at_all_c)) +$(_doc_external(:MPI_Win_get_group)) """ -function MPI_File_iwrite_at_all_c(fh, offset, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iwrite_at_all_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, offset, buf, count, datatype, request) +function MPI_Win_get_group(win, group) + @mpichk ccall((:MPI_Win_get_group, libmpi), Cint, (MPI_Win, Ptr{MPI_Group}), win, group) end """ - MPI_File_iwrite_shared_c(fh, buf, count, datatype, request) + MPI_Win_get_info(win, info_used) -$(_doc_external(:MPI_File_iwrite_shared_c)) +$(_doc_external(:MPI_Win_get_info)) """ -function MPI_File_iwrite_shared_c(fh, buf, count, datatype, request) - @mpichk ccall((:MPI_File_iwrite_shared_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Request}), fh, buf, count, datatype, request) +function MPI_Win_get_info(win, info_used) + @mpichk ccall((:MPI_Win_get_info, libmpi), Cint, (MPI_Win, Ptr{MPI_Info}), win, info_used) end """ - MPI_File_read_c(fh, buf, count, datatype, status) + MPI_Win_get_name(win, win_name, resultlen) -$(_doc_external(:MPI_File_read_c)) +$(_doc_external(:MPI_Win_get_name)) """ -function MPI_File_read_c(fh, buf, count, datatype, status) - @mpichk ccall((:MPI_File_read_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +function MPI_Win_get_name(win, win_name, resultlen) + @mpichk ccall((:MPI_Win_get_name, libmpi), Cint, (MPI_Win, Ptr{Cchar}, Ptr{Cint}), win, win_name, resultlen) end """ - MPI_File_read_all_c(fh, buf, count, datatype, status) + MPI_Win_lock(lock_type, rank, assert, win) -$(_doc_external(:MPI_File_read_all_c)) +$(_doc_external(:MPI_Win_lock)) """ -function MPI_File_read_all_c(fh, buf, count, datatype, status) - @mpichk ccall((:MPI_File_read_all_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +function MPI_Win_lock(lock_type, rank, assert, win) + @mpichk ccall((:MPI_Win_lock, libmpi), Cint, (Cint, Cint, Cint, MPI_Win), lock_type, rank, assert, win) end """ - MPI_File_read_all_begin_c(fh, buf, count, datatype) + MPI_Win_lock_all(assert, win) -$(_doc_external(:MPI_File_read_all_begin_c)) +$(_doc_external(:MPI_Win_lock_all)) """ -function MPI_File_read_all_begin_c(fh, buf, count, datatype) - @mpichk ccall((:MPI_File_read_all_begin_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype), fh, buf, count, datatype) +function MPI_Win_lock_all(assert, win) + @mpichk ccall((:MPI_Win_lock_all, libmpi), Cint, (Cint, MPI_Win), assert, win) end """ - MPI_File_read_at_c(fh, offset, buf, count, datatype, status) + MPI_Win_post(group, assert, win) -$(_doc_external(:MPI_File_read_at_c)) +$(_doc_external(:MPI_Win_post)) """ -function MPI_File_read_at_c(fh, offset, buf, count, datatype, status) - @mpichk ccall((:MPI_File_read_at_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Status}), fh, offset, buf, count, datatype, status) +function MPI_Win_post(group, assert, win) + @mpichk ccall((:MPI_Win_post, libmpi), Cint, (MPI_Group, Cint, MPI_Win), group, assert, win) end """ - MPI_File_read_at_all_c(fh, offset, buf, count, datatype, status) + MPI_Win_set_attr(win, win_keyval, attribute_val) -$(_doc_external(:MPI_File_read_at_all_c)) +$(_doc_external(:MPI_Win_set_attr)) """ -function MPI_File_read_at_all_c(fh, offset, buf, count, datatype, status) - @mpichk ccall((:MPI_File_read_at_all_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Status}), fh, offset, buf, count, datatype, status) +function MPI_Win_set_attr(win, win_keyval, attribute_val) + @mpichk ccall((:MPI_Win_set_attr, libmpi), Cint, (MPI_Win, Cint, MPIPtr), win, win_keyval, attribute_val) end """ - MPI_File_read_at_all_begin_c(fh, offset, buf, count, datatype) + MPI_Win_set_errhandler(win, errhandler) -$(_doc_external(:MPI_File_read_at_all_begin_c)) +$(_doc_external(:MPI_Win_set_errhandler)) """ -function MPI_File_read_at_all_begin_c(fh, offset, buf, count, datatype) - @mpichk ccall((:MPI_File_read_at_all_begin_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype), fh, offset, buf, count, datatype) +function MPI_Win_set_errhandler(win, errhandler) + @mpichk ccall((:MPI_Win_set_errhandler, libmpi), Cint, (MPI_Win, MPI_Errhandler), win, errhandler) end """ - MPI_File_read_ordered_c(fh, buf, count, datatype, status) + MPI_Win_set_info(win, info) -$(_doc_external(:MPI_File_read_ordered_c)) +$(_doc_external(:MPI_Win_set_info)) """ -function MPI_File_read_ordered_c(fh, buf, count, datatype, status) - @mpichk ccall((:MPI_File_read_ordered_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +function MPI_Win_set_info(win, info) + @mpichk ccall((:MPI_Win_set_info, libmpi), Cint, (MPI_Win, MPI_Info), win, info) end """ - MPI_File_read_ordered_begin_c(fh, buf, count, datatype) + MPI_Win_set_name(win, win_name) -$(_doc_external(:MPI_File_read_ordered_begin_c)) +$(_doc_external(:MPI_Win_set_name)) """ -function MPI_File_read_ordered_begin_c(fh, buf, count, datatype) - @mpichk ccall((:MPI_File_read_ordered_begin_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype), fh, buf, count, datatype) +function MPI_Win_set_name(win, win_name) + @mpichk ccall((:MPI_Win_set_name, libmpi), Cint, (MPI_Win, Ptr{Cchar}), win, win_name) end """ - MPI_File_read_shared_c(fh, buf, count, datatype, status) + MPI_Win_shared_query(win, rank, size, disp_unit, baseptr) -$(_doc_external(:MPI_File_read_shared_c)) +$(_doc_external(:MPI_Win_shared_query)) """ -function MPI_File_read_shared_c(fh, buf, count, datatype, status) - @mpichk ccall((:MPI_File_read_shared_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +function MPI_Win_shared_query(win, rank, size, disp_unit, baseptr) + @mpichk ccall((:MPI_Win_shared_query, libmpi), Cint, (MPI_Win, Cint, Ptr{MPI_Aint}, Ptr{Cint}, MPIPtr), win, rank, size, disp_unit, baseptr) end """ - MPI_File_write_c(fh, buf, count, datatype, status) + MPI_Win_shared_query_c(win, rank, size, disp_unit, baseptr) -$(_doc_external(:MPI_File_write_c)) +$(_doc_external(:MPI_Win_shared_query_c)) """ -function MPI_File_write_c(fh, buf, count, datatype, status) - @mpichk ccall((:MPI_File_write_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +function MPI_Win_shared_query_c(win, rank, size, disp_unit, baseptr) + @mpichk ccall((:MPI_Win_shared_query_c, libmpi), Cint, (MPI_Win, Cint, Ptr{MPI_Aint}, Ptr{MPI_Aint}, MPIPtr), win, rank, size, disp_unit, baseptr) end """ - MPI_File_write_all_c(fh, buf, count, datatype, status) + MPI_Win_start(group, assert, win) -$(_doc_external(:MPI_File_write_all_c)) +$(_doc_external(:MPI_Win_start)) """ -function MPI_File_write_all_c(fh, buf, count, datatype, status) - @mpichk ccall((:MPI_File_write_all_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +function MPI_Win_start(group, assert, win) + @mpichk ccall((:MPI_Win_start, libmpi), Cint, (MPI_Group, Cint, MPI_Win), group, assert, win) end """ - MPI_File_write_all_begin_c(fh, buf, count, datatype) + MPI_Win_sync(win) -$(_doc_external(:MPI_File_write_all_begin_c)) +$(_doc_external(:MPI_Win_sync)) """ -function MPI_File_write_all_begin_c(fh, buf, count, datatype) - @mpichk ccall((:MPI_File_write_all_begin_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype), fh, buf, count, datatype) +function MPI_Win_sync(win) + @mpichk ccall((:MPI_Win_sync, libmpi), Cint, (MPI_Win,), win) end """ - MPI_File_write_at_c(fh, offset, buf, count, datatype, status) + MPI_Win_test(win, flag) -$(_doc_external(:MPI_File_write_at_c)) +$(_doc_external(:MPI_Win_test)) """ -function MPI_File_write_at_c(fh, offset, buf, count, datatype, status) - @mpichk ccall((:MPI_File_write_at_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Status}), fh, offset, buf, count, datatype, status) +function MPI_Win_test(win, flag) + @mpichk ccall((:MPI_Win_test, libmpi), Cint, (MPI_Win, Ptr{Cint}), win, flag) end """ - MPI_File_write_at_all_c(fh, offset, buf, count, datatype, status) + MPI_Win_toint(win) -$(_doc_external(:MPI_File_write_at_all_c)) +$(_doc_external(:MPI_Win_toint)) """ -function MPI_File_write_at_all_c(fh, offset, buf, count, datatype, status) - @mpichk ccall((:MPI_File_write_at_all_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Status}), fh, offset, buf, count, datatype, status) +function MPI_Win_toint(win) + @mpichk ccall((:MPI_Win_toint, libmpi), Cint, (MPI_Win,), win) end """ - MPI_File_write_at_all_begin_c(fh, offset, buf, count, datatype) + MPI_Win_unlock(rank, win) -$(_doc_external(:MPI_File_write_at_all_begin_c)) +$(_doc_external(:MPI_Win_unlock)) """ -function MPI_File_write_at_all_begin_c(fh, offset, buf, count, datatype) - @mpichk ccall((:MPI_File_write_at_all_begin_c, libmpi), Cint, (MPI_File, MPI_Offset, MPIPtr, MPI_Count, MPI_Datatype), fh, offset, buf, count, datatype) +function MPI_Win_unlock(rank, win) + @mpichk ccall((:MPI_Win_unlock, libmpi), Cint, (Cint, MPI_Win), rank, win) end """ - MPI_File_write_ordered_c(fh, buf, count, datatype, status) + MPI_Win_unlock_all(win) -$(_doc_external(:MPI_File_write_ordered_c)) +$(_doc_external(:MPI_Win_unlock_all)) """ -function MPI_File_write_ordered_c(fh, buf, count, datatype, status) - @mpichk ccall((:MPI_File_write_ordered_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +function MPI_Win_unlock_all(win) + @mpichk ccall((:MPI_Win_unlock_all, libmpi), Cint, (MPI_Win,), win) end """ - MPI_File_write_ordered_begin_c(fh, buf, count, datatype) + MPI_Win_wait(win) -$(_doc_external(:MPI_File_write_ordered_begin_c)) +$(_doc_external(:MPI_Win_wait)) """ -function MPI_File_write_ordered_begin_c(fh, buf, count, datatype) - @mpichk ccall((:MPI_File_write_ordered_begin_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype), fh, buf, count, datatype) +function MPI_Win_wait(win) + @mpichk ccall((:MPI_Win_wait, libmpi), Cint, (MPI_Win,), win) end """ - MPI_File_write_shared_c(fh, buf, count, datatype, status) + MPI_Wtick() -$(_doc_external(:MPI_File_write_shared_c)) +$(_doc_external(:MPI_Wtick)) """ -function MPI_File_write_shared_c(fh, buf, count, datatype, status) - @mpichk ccall((:MPI_File_write_shared_c, libmpi), Cint, (MPI_File, MPIPtr, MPI_Count, MPI_Datatype, Ptr{MPI_Status}), fh, buf, count, datatype, status) +function MPI_Wtick() + @mpicall ccall((:MPI_Wtick, libmpi), Cdouble, ()) end """ - MPI_Register_datarep_c(datarep, read_conversion_fn, write_conversion_fn, dtype_file_extent_fn, extra_state) + MPI_Wtime() -$(_doc_external(:MPI_Register_datarep_c)) +$(_doc_external(:MPI_Wtime)) """ -function MPI_Register_datarep_c(datarep, read_conversion_fn, write_conversion_fn, dtype_file_extent_fn, extra_state) - @mpichk ccall((:MPI_Register_datarep_c, libmpi), Cint, (Ptr{Cchar}, Ptr{MPI_Datarep_conversion_function_c}, Ptr{MPI_Datarep_conversion_function_c}, Ptr{MPI_Datarep_extent_function}, MPIPtr), datarep, read_conversion_fn, write_conversion_fn, dtype_file_extent_fn, extra_state) +function MPI_Wtime() + @mpicall ccall((:MPI_Wtime, libmpi), Cdouble, ()) end From 9493e24eb4cf6be070060d4c63a6c80e725ba9b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mos=C3=A8=20Giordano?= Date: Sat, 18 Jul 2026 00:26:33 +0100 Subject: [PATCH 08/14] Fix `@mpicall` expansion test with Microsoft MPI With Microsoft MPI the plain form carries the `:stdcall` calling convention in the same slot where the `gc_safe=true` form has the `Expr(:cconv, ...)` marker, so the convention has to be removed from both expressions before comparing their remaining arguments. Co-Authored-By: Claude Fable 5 --- test/test_mpicall.jl | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/test/test_mpicall.jl b/test/test_mpicall.jl index e62e71e91..aebe011f9 100644 --- a/test/test_mpicall.jl +++ b/test/test_mpicall.jl @@ -23,8 +23,12 @@ end convention = MPI.API.use_stdcall ? :stdcall : :ccall @test MPIcallTestExpansion.gc_safe_true.args[3] == Expr(:cconv, (convention, UInt16(0), true), 0) - @test deleteat!(copy(MPIcallTestExpansion.gc_safe_true.args), 3) == - MPIcallTestExpansion.plain.args + # with Microsoft MPI the plain form carries the `:stdcall` calling convention in + # the same slot as the `Expr(:cconv, ...)` marker of the `gc_safe=true` form, + # remove the convention from both before comparing the rest of the expression + plain_args = copy(MPIcallTestExpansion.plain.args) + MPI.API.use_stdcall && deleteat!(plain_args, 3) + @test deleteat!(copy(MPIcallTestExpansion.gc_safe_true.args), 3) == plain_args else # `gc_safe=true` is a no-op on older Julia versions @test MPIcallTestExpansion.gc_safe_true == MPIcallTestExpansion.plain From 086a94106271fbebf3f792b123a64f93f5e4978f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mos=C3=A8=20Giordano?= Date: Sat, 18 Jul 2026 00:34:09 +0100 Subject: [PATCH 09/14] Update autolink for MPICH to v5 now that we generate the bindings from new version --- src/MPI.jl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/MPI.jl b/src/MPI.jl index 2697d9b3b..545e1d08b 100644 --- a/src/MPI.jl +++ b/src/MPI.jl @@ -21,7 +21,7 @@ end function _doc_external(fname) # Ideally we'd like to use the "latest" version of the docs, but MPICH v4.0 # at the moment seems to be the last version with all the docstrings. - mpich = "[MPICH](https://www.mpich.org/static/docs/v4.0/www3/$(fname).html)" + mpich = "[MPICH](https://www.mpich.org/static/docs/v5.0.1/www3/$(fname).html)" # All the *_c functions are undocumented in OpenMPI website if !endswith(string(fname), "_c") openmpi = "[OpenMPI](https://docs.open-mpi.org/en/main/man-openmpi/man3/$(fname).3.html)" From 95bd07cbddf3dcf4774a74025559444222529ebe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mos=C3=A8=20Giordano?= Date: Sat, 18 Jul 2026 00:40:02 +0100 Subject: [PATCH 10/14] Add docstrings of `MPI.API.@mpichk`/`MPI.API.@mpicall` to the docs --- docs/src/reference/api.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/src/reference/api.md b/docs/src/reference/api.md index 68d3fa89a..1b5db0861 100644 --- a/docs/src/reference/api.md +++ b/docs/src/reference/api.md @@ -3,6 +3,11 @@ The `MPI.API` submodule provides a low-level interface which closely matches the MPI C API. While these functions are not intended for general usage, they are useful for calling MPI routines not yet available in `MPI.jl` main interface, and is the basis for the high-level wrappers. The methods suffixed with `_c` allow `MPI_count` typed arguments (vs `int` for the standard ones). The size of `MPI_count` depends on the implementation, but usually allows `64bit` integer offsets. +```@docs +MPI.API.@mpicall +MPI.API.@mpichk +``` + ```@autodocs Modules = [MPI.API] Order = [:function] From 83f4535b334a7f8a4287eb11ffaabb8088e9b5fd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mos=C3=A8=20Giordano?= Date: Sat, 18 Jul 2026 00:41:50 +0100 Subject: [PATCH 11/14] [CI] Upload docs build as an artifact --- .github/workflows/Documenter.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/Documenter.yml b/.github/workflows/Documenter.yml index 71553c587..f5e923d6d 100644 --- a/.github/workflows/Documenter.yml +++ b/.github/workflows/Documenter.yml @@ -42,3 +42,9 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: julia --color=yes --project=docs/ docs/make.jl + - name: "Upload docs build as artifact" + uses: actions/upload-artifact@v7 + with: + name: documentation-build + path: docs/build + retention-days: 30 From 564d6e185e51dcd13ca40aca1182305b70ca5654 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mos=C3=A8=20Giordano?= Date: Tue, 21 Jul 2026 23:07:34 +0100 Subject: [PATCH 12/14] gen: mark all blocking MPI calls as `gc_safe` Extend the tuple of functions called with `gc_safe=true` from just `MPI_Wait` and `MPI_Allreduce` to all 34 wrapped functions whose worst-case duration is unbounded because they wait on the progress of peer ranks: request completion (`MPI_Wait*`) and blocking probes (`MPI_Probe`/`MPI_Mprobe`/`MPI_Mrecv`), blocking point-to-point communications, and blocking (neighborhood) collectives. Functions whose worst case is bounded by local work (e.g. `MPI_Bsend`, `MPI_Test*`, `MPI_Iprobe`, the nonblocking initiators) gain nothing from the option and are left unmarked. The only way any of the marked functions can re-enter Julia is through `@cfunction` callbacks (custom reduction operators), which are safe in `gc_safe` regions. Regenerate the bindings accordingly. Co-Authored-By: Claude Fable 5 --- gen/src/MPIgenerator.jl | 43 ++++++++++++++++++++++++++- src/api/generated_api.jl | 64 ++++++++++++++++++++-------------------- 2 files changed, 74 insertions(+), 33 deletions(-) diff --git a/gen/src/MPIgenerator.jl b/gen/src/MPIgenerator.jl index 97ac20e71..904400372 100644 --- a/gen/src/MPIgenerator.jl +++ b/gen/src/MPIgenerator.jl @@ -51,10 +51,51 @@ module MPIgenerator ) # these methods are called with `gc_safe=true`, to allow the garbage - # collector to run concurrently with the (potentially blocking) MPI call + # collector to run concurrently with the (potentially blocking) MPI call. + # The criterion for inclusion is that the worst-case duration of the call + # is unbounded because it waits on the progress of peer ranks, rather than + # being bounded by local work, and that the call can only re-enter Julia + # through `@cfunction` callbacks (e.g. custom reduction operators), which + # are safe in `gc_safe` regions gc_safe = ( + # request completion and probes :MPI_Wait, + :MPI_Waitall, + :MPI_Waitany, + :MPI_Waitsome, + :MPI_Probe, + :MPI_Mprobe, + :MPI_Mrecv, + # blocking point-to-point + :MPI_Send, + :MPI_Ssend, + :MPI_Recv, + :MPI_Sendrecv, + :MPI_Sendrecv_replace, + # blocking collectives + :MPI_Barrier, + :MPI_Bcast, + :MPI_Gather, + :MPI_Gatherv, + :MPI_Scatter, + :MPI_Scatterv, + :MPI_Allgather, + :MPI_Allgatherv, + :MPI_Alltoall, + :MPI_Alltoallv, + :MPI_Alltoallw, + :MPI_Reduce, :MPI_Allreduce, + :MPI_Reduce_scatter, + :MPI_Reduce_scatter_block, + :MPI_Scan, + :MPI_Exscan, + # blocking neighborhood collectives + :MPI_Neighbor_allgather, + :MPI_Neighbor_allgatherv, + :MPI_Neighbor_alltoall, + :MPI_Neighbor_alltoallv, + :MPI_Neighbor_alltoallw, ) versioned = Dict( diff --git a/src/api/generated_api.jl b/src/api/generated_api.jl index 9446bc27f..829b7ced8 100644 --- a/src/api/generated_api.jl +++ b/src/api/generated_api.jl @@ -141,7 +141,7 @@ end $(_doc_external(:MPI_Allgather)) """ function MPI_Allgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) - @mpichk ccall((:MPI_Allgather, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) + @mpichk gc_safe=true ccall((:MPI_Allgather, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) end """ @@ -177,7 +177,7 @@ end $(_doc_external(:MPI_Allgatherv)) """ function MPI_Allgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) - @mpichk ccall((:MPI_Allgatherv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) + @mpichk gc_safe=true ccall((:MPI_Allgatherv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) end """ @@ -258,7 +258,7 @@ end $(_doc_external(:MPI_Alltoall)) """ function MPI_Alltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) - @mpichk ccall((:MPI_Alltoall, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) + @mpichk gc_safe=true ccall((:MPI_Alltoall, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) end """ @@ -294,7 +294,7 @@ end $(_doc_external(:MPI_Alltoallv)) """ function MPI_Alltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) - @mpichk ccall((:MPI_Alltoallv, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) + @mpichk gc_safe=true ccall((:MPI_Alltoallv, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) end """ @@ -330,7 +330,7 @@ end $(_doc_external(:MPI_Alltoallw)) """ function MPI_Alltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) - @mpichk ccall((:MPI_Alltoallw, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Datatype}, MPI_Comm), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) + @mpichk gc_safe=true ccall((:MPI_Alltoallw, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Datatype}, MPI_Comm), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) end """ @@ -393,7 +393,7 @@ end $(_doc_external(:MPI_Barrier)) """ function MPI_Barrier(comm) - @mpichk ccall((:MPI_Barrier, libmpi), Cint, (MPI_Comm,), comm) + @mpichk gc_safe=true ccall((:MPI_Barrier, libmpi), Cint, (MPI_Comm,), comm) end """ @@ -411,7 +411,7 @@ end $(_doc_external(:MPI_Bcast)) """ function MPI_Bcast(buffer, count, datatype, root, comm) - @mpichk ccall((:MPI_Bcast, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm), buffer, count, datatype, root, comm) + @mpichk gc_safe=true ccall((:MPI_Bcast, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm), buffer, count, datatype, root, comm) end """ @@ -1158,7 +1158,7 @@ end $(_doc_external(:MPI_Exscan)) """ function MPI_Exscan(sendbuf, recvbuf, count, datatype, op, comm) - @mpichk ccall((:MPI_Exscan, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, count, datatype, op, comm) + @mpichk gc_safe=true ccall((:MPI_Exscan, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, count, datatype, op, comm) end """ @@ -2058,7 +2058,7 @@ end $(_doc_external(:MPI_Gather)) """ function MPI_Gather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) - @mpichk ccall((:MPI_Gather, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) + @mpichk gc_safe=true ccall((:MPI_Gather, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) end """ @@ -2094,7 +2094,7 @@ end $(_doc_external(:MPI_Gatherv)) """ function MPI_Gatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm) - @mpichk ccall((:MPI_Gatherv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm) + @mpichk gc_safe=true ccall((:MPI_Gatherv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm) end """ @@ -3228,7 +3228,7 @@ end $(_doc_external(:MPI_Mprobe)) """ function MPI_Mprobe(source, tag, comm, message, status) - @mpichk ccall((:MPI_Mprobe, libmpi), Cint, (Cint, Cint, MPI_Comm, Ptr{MPI_Message}, Ptr{MPI_Status}), source, tag, comm, message, status) + @mpichk gc_safe=true ccall((:MPI_Mprobe, libmpi), Cint, (Cint, Cint, MPI_Comm, Ptr{MPI_Message}, Ptr{MPI_Status}), source, tag, comm, message, status) end """ @@ -3237,7 +3237,7 @@ end $(_doc_external(:MPI_Mrecv)) """ function MPI_Mrecv(buf, count, datatype, message, status) - @mpichk ccall((:MPI_Mrecv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Message}, Ptr{MPI_Status}), buf, count, datatype, message, status) + @mpichk gc_safe=true ccall((:MPI_Mrecv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Ptr{MPI_Message}, Ptr{MPI_Status}), buf, count, datatype, message, status) end """ @@ -3255,7 +3255,7 @@ end $(_doc_external(:MPI_Neighbor_allgather)) """ function MPI_Neighbor_allgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) - @mpichk ccall((:MPI_Neighbor_allgather, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) v"3.0.0" + @mpichk gc_safe=true ccall((:MPI_Neighbor_allgather, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) v"3.0.0" end """ @@ -3291,7 +3291,7 @@ end $(_doc_external(:MPI_Neighbor_allgatherv)) """ function MPI_Neighbor_allgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) - @mpichk ccall((:MPI_Neighbor_allgatherv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) v"3.0.0" + @mpichk gc_safe=true ccall((:MPI_Neighbor_allgatherv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm) v"3.0.0" end """ @@ -3327,7 +3327,7 @@ end $(_doc_external(:MPI_Neighbor_alltoall)) """ function MPI_Neighbor_alltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) - @mpichk ccall((:MPI_Neighbor_alltoall, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) v"3.0.0" + @mpichk gc_safe=true ccall((:MPI_Neighbor_alltoall, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) v"3.0.0" end """ @@ -3363,7 +3363,7 @@ end $(_doc_external(:MPI_Neighbor_alltoallv)) """ function MPI_Neighbor_alltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) - @mpichk ccall((:MPI_Neighbor_alltoallv, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) v"3.0.0" + @mpichk gc_safe=true ccall((:MPI_Neighbor_alltoallv, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPI_Comm), sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm) v"3.0.0" end """ @@ -3399,7 +3399,7 @@ end $(_doc_external(:MPI_Neighbor_alltoallw)) """ function MPI_Neighbor_alltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) - @mpichk ccall((:MPI_Neighbor_alltoallw, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) + @mpichk gc_safe=true ccall((:MPI_Neighbor_alltoallw, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPIPtr, Ptr{Cint}, Ptr{MPI_Aint}, Ptr{MPI_Datatype}, MPI_Comm), sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm) end """ @@ -3615,7 +3615,7 @@ end $(_doc_external(:MPI_Probe)) """ function MPI_Probe(source, tag, comm, status) - @mpichk ccall((:MPI_Probe, libmpi), Cint, (Cint, Cint, MPI_Comm, Ptr{MPI_Status}), source, tag, comm, status) + @mpichk gc_safe=true ccall((:MPI_Probe, libmpi), Cint, (Cint, Cint, MPI_Comm, Ptr{MPI_Status}), source, tag, comm, status) end """ @@ -3687,7 +3687,7 @@ end $(_doc_external(:MPI_Recv)) """ function MPI_Recv(buf, count, datatype, source, tag, comm, status) - @mpichk ccall((:MPI_Recv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Status}), buf, count, datatype, source, tag, comm, status) + @mpichk gc_safe=true ccall((:MPI_Recv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Status}), buf, count, datatype, source, tag, comm, status) end """ @@ -3723,7 +3723,7 @@ end $(_doc_external(:MPI_Reduce)) """ function MPI_Reduce(sendbuf, recvbuf, count, datatype, op, root, comm) - @mpichk ccall((:MPI_Reduce, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, Cint, MPI_Comm), sendbuf, recvbuf, count, datatype, op, root, comm) + @mpichk gc_safe=true ccall((:MPI_Reduce, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, Cint, MPI_Comm), sendbuf, recvbuf, count, datatype, op, root, comm) end """ @@ -3777,7 +3777,7 @@ end $(_doc_external(:MPI_Reduce_scatter)) """ function MPI_Reduce_scatter(sendbuf, recvbuf, recvcounts, datatype, op, comm) - @mpichk ccall((:MPI_Reduce_scatter, libmpi), Cint, (MPIPtr, MPIPtr, Ptr{Cint}, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, recvcounts, datatype, op, comm) + @mpichk gc_safe=true ccall((:MPI_Reduce_scatter, libmpi), Cint, (MPIPtr, MPIPtr, Ptr{Cint}, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, recvcounts, datatype, op, comm) end """ @@ -3786,7 +3786,7 @@ end $(_doc_external(:MPI_Reduce_scatter_block)) """ function MPI_Reduce_scatter_block(sendbuf, recvbuf, recvcount, datatype, op, comm) - @mpichk ccall((:MPI_Reduce_scatter_block, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, recvcount, datatype, op, comm) + @mpichk gc_safe=true ccall((:MPI_Reduce_scatter_block, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, recvcount, datatype, op, comm) end """ @@ -4047,7 +4047,7 @@ end $(_doc_external(:MPI_Scan)) """ function MPI_Scan(sendbuf, recvbuf, count, datatype, op, comm) - @mpichk ccall((:MPI_Scan, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, count, datatype, op, comm) + @mpichk gc_safe=true ccall((:MPI_Scan, libmpi), Cint, (MPIPtr, MPIPtr, Cint, MPI_Datatype, MPI_Op, MPI_Comm), sendbuf, recvbuf, count, datatype, op, comm) end """ @@ -4083,7 +4083,7 @@ end $(_doc_external(:MPI_Scatter)) """ function MPI_Scatter(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) - @mpichk ccall((:MPI_Scatter, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) + @mpichk gc_safe=true ccall((:MPI_Scatter, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm) end """ @@ -4119,7 +4119,7 @@ end $(_doc_external(:MPI_Scatterv)) """ function MPI_Scatterv(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm) - @mpichk ccall((:MPI_Scatterv, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm) + @mpichk gc_safe=true ccall((:MPI_Scatterv, libmpi), Cint, (MPIPtr, Ptr{Cint}, Ptr{Cint}, MPI_Datatype, MPIPtr, Cint, MPI_Datatype, Cint, MPI_Comm), sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm) end """ @@ -4155,7 +4155,7 @@ end $(_doc_external(:MPI_Send)) """ function MPI_Send(buf, count, datatype, dest, tag, comm) - @mpichk ccall((:MPI_Send, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) + @mpichk gc_safe=true ccall((:MPI_Send, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) end """ @@ -4191,7 +4191,7 @@ end $(_doc_external(:MPI_Sendrecv)) """ function MPI_Sendrecv(sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, status) - @mpichk ccall((:MPI_Sendrecv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Status}), sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, status) + @mpichk gc_safe=true ccall((:MPI_Sendrecv, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm, Ptr{MPI_Status}), sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, status) end """ @@ -4209,7 +4209,7 @@ end $(_doc_external(:MPI_Sendrecv_replace)) """ function MPI_Sendrecv_replace(buf, count, datatype, dest, sendtag, source, recvtag, comm, status) - @mpichk ccall((:MPI_Sendrecv_replace, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, Cint, Cint, MPI_Comm, Ptr{MPI_Status}), buf, count, datatype, dest, sendtag, source, recvtag, comm, status) + @mpichk gc_safe=true ccall((:MPI_Sendrecv_replace, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, Cint, Cint, MPI_Comm, Ptr{MPI_Status}), buf, count, datatype, dest, sendtag, source, recvtag, comm, status) end """ @@ -4227,7 +4227,7 @@ end $(_doc_external(:MPI_Ssend)) """ function MPI_Ssend(buf, count, datatype, dest, tag, comm) - @mpichk ccall((:MPI_Ssend, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) + @mpichk gc_safe=true ccall((:MPI_Ssend, libmpi), Cint, (MPIPtr, Cint, MPI_Datatype, Cint, Cint, MPI_Comm), buf, count, datatype, dest, tag, comm) end """ @@ -5019,7 +5019,7 @@ end $(_doc_external(:MPI_Waitall)) """ function MPI_Waitall(count, array_of_requests, array_of_statuses) - @mpichk ccall((:MPI_Waitall, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{MPI_Status}), count, array_of_requests, array_of_statuses) + @mpichk gc_safe=true ccall((:MPI_Waitall, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{MPI_Status}), count, array_of_requests, array_of_statuses) end """ @@ -5028,7 +5028,7 @@ end $(_doc_external(:MPI_Waitany)) """ function MPI_Waitany(count, array_of_requests, indx, status) - @mpichk ccall((:MPI_Waitany, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{Cint}, Ptr{MPI_Status}), count, array_of_requests, indx, status) + @mpichk gc_safe=true ccall((:MPI_Waitany, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{Cint}, Ptr{MPI_Status}), count, array_of_requests, indx, status) end """ @@ -5037,7 +5037,7 @@ end $(_doc_external(:MPI_Waitsome)) """ function MPI_Waitsome(incount, array_of_requests, outcount, array_of_indices, array_of_statuses) - @mpichk ccall((:MPI_Waitsome, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Status}), incount, array_of_requests, outcount, array_of_indices, array_of_statuses) + @mpichk gc_safe=true ccall((:MPI_Waitsome, libmpi), Cint, (Cint, Ptr{MPI_Request}, Ptr{Cint}, Ptr{Cint}, Ptr{MPI_Status}), incount, array_of_requests, outcount, array_of_indices, array_of_statuses) end """ From 0f368ac44033818936455689766e947040a9a687 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mos=C3=A8=20Giordano?= Date: Tue, 21 Jul 2026 23:10:44 +0100 Subject: [PATCH 13/14] Do not mark probes as gc-safe --- gen/src/MPIgenerator.jl | 4 +--- src/api/generated_api.jl | 4 ++-- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/gen/src/MPIgenerator.jl b/gen/src/MPIgenerator.jl index 904400372..ec80d5398 100644 --- a/gen/src/MPIgenerator.jl +++ b/gen/src/MPIgenerator.jl @@ -58,13 +58,11 @@ module MPIgenerator # through `@cfunction` callbacks (e.g. custom reduction operators), which # are safe in `gc_safe` regions gc_safe = ( - # request completion and probes + # request completion :MPI_Wait, :MPI_Waitall, :MPI_Waitany, :MPI_Waitsome, - :MPI_Probe, - :MPI_Mprobe, :MPI_Mrecv, # blocking point-to-point :MPI_Send, diff --git a/src/api/generated_api.jl b/src/api/generated_api.jl index 829b7ced8..bfcf5f71f 100644 --- a/src/api/generated_api.jl +++ b/src/api/generated_api.jl @@ -3228,7 +3228,7 @@ end $(_doc_external(:MPI_Mprobe)) """ function MPI_Mprobe(source, tag, comm, message, status) - @mpichk gc_safe=true ccall((:MPI_Mprobe, libmpi), Cint, (Cint, Cint, MPI_Comm, Ptr{MPI_Message}, Ptr{MPI_Status}), source, tag, comm, message, status) + @mpichk ccall((:MPI_Mprobe, libmpi), Cint, (Cint, Cint, MPI_Comm, Ptr{MPI_Message}, Ptr{MPI_Status}), source, tag, comm, message, status) end """ @@ -3615,7 +3615,7 @@ end $(_doc_external(:MPI_Probe)) """ function MPI_Probe(source, tag, comm, status) - @mpichk gc_safe=true ccall((:MPI_Probe, libmpi), Cint, (Cint, Cint, MPI_Comm, Ptr{MPI_Status}), source, tag, comm, status) + @mpichk ccall((:MPI_Probe, libmpi), Cint, (Cint, Cint, MPI_Comm, Ptr{MPI_Status}), source, tag, comm, status) end """ From 5bfda8689f6b70aaecb02af6f36d522486348964 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mos=C3=A8=20Giordano?= Date: Tue, 21 Jul 2026 23:20:41 +0100 Subject: [PATCH 14/14] Document interaction between gc-safe MPI calls and thread level On Julia v1.12+ blocking MPI calls are now marked as gc-safe, so the garbage collector no longer has to wait for threads which are inside one of these calls, preventing stalls or deadlocks when a thread blocks in MPI while another thread needs to run a collection. The flip side is that in a multi-threaded program the garbage collector can now run concurrently with a blocking MPI call, and its finalizers can free MPI handles while another thread is still inside MPI, which constitutes concurrent MPI calls from different threads and requires initializing MPI with `MPI_THREAD_MULTIPLE`. Add a section about this to the known issues page and recommend `threadlevel=:multiple` for multi-threaded programs in the docstring of `MPI.Init`. Co-Authored-By: Claude Fable 5 --- docs/src/knownissues.md | 15 +++++++++++++++ src/environment.jl | 7 ++++++- 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/docs/src/knownissues.md b/docs/src/knownissues.md index 660651dfc..193988dd9 100644 --- a/docs/src/knownissues.md +++ b/docs/src/knownissues.md @@ -143,6 +143,21 @@ export UCX_ERROR_SIGNALS="SIGILL,SIGBUS,SIGFPE" ``` before calling `mpiexec`. +## Multi-threading and garbage collection + +On Julia v1.12 and later, blocking MPI calls (e.g. `MPI_Wait`, `MPI_Barrier`, blocking point-to-point communications and collectives) are marked as *GC-safe*: the Julia garbage collector running on one thread does not have to wait for other threads which are inside one of these MPI calls. +This prevents the whole process from stalling — or deadlocking outright — when a thread blocks in MPI while waiting on the progress of other ranks and another thread needs to run a garbage collection. + +A consequence of this is that in a multi-threaded program the garbage collector can now run *concurrently* with a blocking MPI call, and its finalizers can free MPI handles (communicators, requests, datatypes, operators, etc.) by calling functions like `MPI_Comm_free` while another thread is still inside MPI. +Concurrent MPI calls from different threads are only permitted when MPI is initialized with the `MPI.THREAD_MULTIPLE` [`MPI.ThreadLevel`](@ref), whereas [`MPI.Init`](@ref) defaults to `:serialized`. +Multi-threaded programs should therefore initialize MPI with + +```julia +MPI.Init(; threadlevel=:multiple) +``` + +Single-threaded programs are unaffected. + ## CUDA-aware MPI ### Memory pool diff --git a/src/environment.jl b/src/environment.jl index 70502173b..9d3de41e1 100644 --- a/src/environment.jl +++ b/src/environment.jl @@ -91,7 +91,12 @@ end Initialize MPI in the current process. The keyword options: - `threadlevel`: either `:single`, `:funneled`, `:serialized` (default), - `:multiple`, or an instance of [`ThreadLevel`](@ref). + `:multiple`, or an instance of [`ThreadLevel`](@ref). Multi-threaded + programs should use `:multiple`: on Julia v1.12 and later the garbage + collector can run concurrently with blocking MPI calls and free MPI handles + while another thread is inside MPI, which constitutes concurrent MPI calls + from different threads. See the section on + [Multi-threading and garbage collection](@ref) in the documentation. - `finalize_atexit`: if `true` (default), adds an `atexit` hook to call [`MPI.Finalize`](@ref) if it hasn't already been called. - `errors_return`: if `true` (default), will set the default error handlers for