1 ! -*- fortran -*- 2 ! 3 ! Copyright (c) 2012 Cisco Systems, Inc. All rights reserved. 4 ! Copyright (c) 2018 FUJITSU LIMITED. All rights reserved. 5 ! Copyright (c) 2018 Research Organization for Information Science 6 ! and Technology (RIST). All rights reserved. 7 ! $COPYRIGHT$ 8 ! 9 ! Additional copyrights may follow 10 ! 11 ! $HEADER$ 12 ! 13 14 ! This whole file will be included in the mpi_f08_ext module interface 15 ! section. Note that the extension's mpif.h file will be included 16 ! first, so there's no need to re-define anything that's in there (e.g., 17 ! OMPI_EXAMPLE_GLOBAL). 18 19 ! Declare any interfaces, subroutines, and global variables/constants 20 ! here. Note that the mpiext_example_mpif.h will automatically be 21 ! included before this, so anything declared there does not need to be 22 ! replicated here. 23 24 interface mpix_allgather_init 25 subroutine mpix_allgather_init(sendbuf, sendcount, sendtype, & 26 recvbuf, recvcount, recvtype, & 27 comm, info, request, ierror) 28 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 29 implicit none 30 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 31 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 32 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 33 !DIR$ IGNORE_TKR sendbuf, recvbuf 34 !IBM* IGNORE_TKR sendbuf, recvbuf 35 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 36 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 37 integer, intent(in) :: sendcount, recvcount 38 type(mpi_datatype), intent(in) :: sendtype, recvtype 39 type(mpi_comm), intent(in) :: comm 40 type(mpi_info), intent(in) :: info 41 type(mpi_request), intent(out) :: request 42 integer, optional, intent(out) :: ierror 43 end subroutine mpix_allgather_init 44 end interface mpix_allgather_init 45 46 interface mpix_allgatherv_init 47 subroutine mpix_allgatherv_init(sendbuf, sendcount, sendtype, & 48 recvbuf, recvcounts, displs, recvtype, & 49 comm, info, request, ierror) 50 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 51 implicit none 52 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 53 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 54 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 55 !DIR$ IGNORE_TKR sendbuf, recvbuf 56 !IBM* IGNORE_TKR sendbuf, recvbuf 57 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 58 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 59 integer, intent(in) :: sendcount 60 integer, intent(in), asynchronous :: recvcounts(*), displs(*) 61 type(mpi_datatype), intent(in) :: sendtype, recvtype 62 type(mpi_comm), intent(in) :: comm 63 type(mpi_info), intent(in) :: info 64 type(mpi_request), intent(out) :: request 65 integer, optional, intent(out) :: ierror 66 end subroutine mpix_allgatherv_init 67 end interface mpix_allgatherv_init 68 69 interface mpix_allreduce_init 70 subroutine mpix_allreduce_init(sendbuf, recvbuf, count, & 71 datatype, op, & 72 comm, info, request, ierror) 73 use :: mpi_f08_types, only : mpi_datatype, mpi_op, mpi_comm, mpi_info, mpi_request 74 implicit none 75 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 76 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 77 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 78 !DIR$ IGNORE_TKR sendbuf, recvbuf 79 !IBM* IGNORE_TKR sendbuf, recvbuf 80 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 81 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 82 integer, intent(in) :: count 83 type(mpi_datatype), intent(in) :: datatype 84 type(mpi_op), intent(in) :: op 85 type(mpi_comm), intent(in) :: comm 86 type(mpi_info), intent(in) :: info 87 type(mpi_request), intent(out) :: request 88 integer, optional, intent(out) :: ierror 89 end subroutine mpix_allreduce_init 90 end interface mpix_allreduce_init 91 92 interface mpix_alltoall_init 93 subroutine mpix_alltoall_init(sendbuf, sendcount, sendtype, & 94 recvbuf, recvcount, recvtype, & 95 comm, info, request, ierror) 96 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 97 implicit none 98 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 99 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 100 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 101 !DIR$ IGNORE_TKR sendbuf, recvbuf 102 !IBM* IGNORE_TKR sendbuf, recvbuf 103 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 104 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 105 integer, intent(in) :: sendcount, recvcount 106 type(mpi_datatype), intent(in) :: sendtype, recvtype 107 type(mpi_comm), intent(in) :: comm 108 type(mpi_info), intent(in) :: info 109 type(mpi_request), intent(out) :: request 110 integer, optional, intent(out) :: ierror 111 end subroutine mpix_alltoall_init 112 end interface mpix_alltoall_init 113 114 interface mpix_alltoallv_init 115 subroutine mpix_alltoallv_init(sendbuf, sendcounts, sdispls, sendtype, & 116 recvbuf, recvcounts, rdispls, recvtype, & 117 comm, info, request, ierror) 118 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 119 implicit none 120 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 121 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 122 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 123 !DIR$ IGNORE_TKR sendbuf, recvbuf 124 !IBM* IGNORE_TKR sendbuf, recvbuf 125 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 126 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 127 integer, intent(in), asynchronous :: sendcounts(*), sdispls(*), recvcounts(*), rdispls(*) 128 type(mpi_datatype), intent(in) :: sendtype, recvtype 129 type(mpi_comm), intent(in) :: comm 130 type(mpi_info), intent(in) :: info 131 type(mpi_request), intent(out) :: request 132 integer, optional, intent(out) :: ierror 133 end subroutine mpix_alltoallv_init 134 end interface mpix_alltoallv_init 135 136 interface mpix_alltoallw_init 137 subroutine mpix_alltoallw_init(sendbuf, sendcounts, sdispls, sendtypes, & 138 recvbuf, recvcounts, rdispls, recvtypes, & 139 comm, info, request, ierror) 140 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 141 implicit none 142 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 143 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 144 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 145 !DIR$ IGNORE_TKR sendbuf, recvbuf 146 !IBM* IGNORE_TKR sendbuf, recvbuf 147 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 148 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 149 integer, intent(in), asynchronous :: sendcounts(*), sdispls(*), recvcounts(*), rdispls(*) 150 type(mpi_datatype), intent(in), asynchronous :: sendtypes(*), recvtypes(*) 151 type(mpi_comm), intent(in) :: comm 152 type(mpi_info), intent(in) :: info 153 type(mpi_request), intent(out) :: request 154 integer, optional, intent(out) :: ierror 155 end subroutine mpix_alltoallw_init 156 end interface mpix_alltoallw_init 157 158 interface mpix_barrier_init 159 subroutine mpix_barrier_init(comm, info, request, ierror) 160 use :: mpi_f08_types, only : mpi_comm, mpi_info, mpi_request 161 implicit none 162 type(mpi_comm), intent(in) :: comm 163 type(mpi_info), intent(in) :: info 164 type(mpi_request), intent(out) :: request 165 integer, optional, intent(out) :: ierror 166 end subroutine mpix_barrier_init 167 end interface mpix_barrier_init 168 169 interface mpix_bcast_init 170 subroutine mpix_bcast_init(buffer, count, datatype, root, & 171 comm, info, request, ierror) 172 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 173 implicit none 174 !DEC$ ATTRIBUTES NO_ARG_CHECK :: buffer 175 !GCC$ ATTRIBUTES NO_ARG_CHECK :: buffer 176 !$PRAGMA IGNORE_TKR buffer 177 !DIR$ IGNORE_TKR buffer 178 !IBM* IGNORE_TKR buffer 179 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: buffer 180 integer, intent(in) :: count, root 181 type(mpi_datatype), intent(in) :: datatype 182 type(mpi_comm), intent(in) :: comm 183 type(mpi_info), intent(in) :: info 184 type(mpi_request), intent(out) :: request 185 integer, optional, intent(out) :: ierror 186 end subroutine mpix_bcast_init 187 end interface mpix_bcast_init 188 189 interface mpix_exscan_init 190 subroutine mpix_exscan_init(sendbuf, recvbuf, count, & 191 datatype, op, & 192 comm, info, request, ierror) 193 use :: mpi_f08_types, only : mpi_datatype, mpi_op, mpi_comm, mpi_info, mpi_request 194 implicit none 195 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 196 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 197 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 198 !DIR$ IGNORE_TKR sendbuf, recvbuf 199 !IBM* IGNORE_TKR sendbuf, recvbuf 200 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 201 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 202 integer, intent(in) :: count 203 type(mpi_datatype), intent(in) :: datatype 204 type(mpi_op), intent(in) :: op 205 type(mpi_comm), intent(in) :: comm 206 type(mpi_info), intent(in) :: info 207 type(mpi_request), intent(out) :: request 208 integer, optional, intent(out) :: ierror 209 end subroutine mpix_exscan_init 210 end interface mpix_exscan_init 211 212 interface mpix_gather_init 213 subroutine mpix_gather_init(sendbuf, sendcount, sendtype, & 214 recvbuf, recvcount, recvtype, root, & 215 comm, info, request, ierror) 216 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 217 implicit none 218 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 219 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 220 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 221 !DIR$ IGNORE_TKR sendbuf, recvbuf 222 !IBM* IGNORE_TKR sendbuf, recvbuf 223 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 224 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 225 integer, intent(in) :: sendcount, recvcount, root 226 type(mpi_datatype), intent(in) :: sendtype, recvtype 227 type(mpi_comm), intent(in) :: comm 228 type(mpi_info), intent(in) :: info 229 type(mpi_request), intent(out) :: request 230 integer, optional, intent(out) :: ierror 231 end subroutine mpix_gather_init 232 end interface mpix_gather_init 233 234 interface mpix_gatherv_init 235 subroutine mpix_gatherv_init(sendbuf, sendcount, sendtype, & 236 recvbuf, recvcounts, displs, recvtype, root, & 237 comm, info, request, ierror) 238 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 239 implicit none 240 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 241 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 242 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 243 !DIR$ IGNORE_TKR sendbuf, recvbuf 244 !IBM* IGNORE_TKR sendbuf, recvbuf 245 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 246 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 247 integer, intent(in) :: sendcount, root 248 integer, intent(in), asynchronous :: recvcounts(*), displs(*) 249 type(mpi_datatype), intent(in) :: sendtype, recvtype 250 type(mpi_comm), intent(in) :: comm 251 type(mpi_info), intent(in) :: info 252 type(mpi_request), intent(out) :: request 253 integer, optional, intent(out) :: ierror 254 end subroutine mpix_gatherv_init 255 end interface mpix_gatherv_init 256 257 interface mpix_reduce_init 258 subroutine mpix_reduce_init(sendbuf, recvbuf, count, & 259 datatype, op, root, & 260 comm, info, request, ierror) 261 use :: mpi_f08_types, only : mpi_datatype, mpi_op, mpi_comm, mpi_info, mpi_request 262 implicit none 263 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 264 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 265 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 266 !DIR$ IGNORE_TKR sendbuf, recvbuf 267 !IBM* IGNORE_TKR sendbuf, recvbuf 268 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 269 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 270 integer, intent(in) :: count, root 271 type(mpi_datatype), intent(in) :: datatype 272 type(mpi_op), intent(in) :: op 273 type(mpi_comm), intent(in) :: comm 274 type(mpi_info), intent(in) :: info 275 type(mpi_request), intent(out) :: request 276 integer, optional, intent(out) :: ierror 277 end subroutine mpix_reduce_init 278 end interface mpix_reduce_init 279 280 interface mpix_reduce_scatter_init 281 subroutine mpix_reduce_scatter_init(sendbuf, recvbuf, recvcounts, & 282 datatype, op, & 283 comm, info, request, ierror) 284 use :: mpi_f08_types, only : mpi_datatype, mpi_op, mpi_comm, mpi_info, mpi_request 285 implicit none 286 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 287 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 288 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 289 !DIR$ IGNORE_TKR sendbuf, recvbuf 290 !IBM* IGNORE_TKR sendbuf, recvbuf 291 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 292 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 293 integer, intent(in), asynchronous :: recvcounts(*) 294 type(mpi_datatype), intent(in) :: datatype 295 type(mpi_op), intent(in) :: op 296 type(mpi_comm), intent(in) :: comm 297 type(mpi_info), intent(in) :: info 298 type(mpi_request), intent(out) :: request 299 integer, optional, intent(out) :: ierror 300 end subroutine mpix_reduce_scatter_init 301 end interface mpix_reduce_scatter_init 302 303 interface mpix_reduce_scatter_block_init 304 subroutine mpix_reduce_scatter_block_init(sendbuf, recvbuf, recvcount, & 305 datatype, op, & 306 comm, info, request, ierror) 307 use :: mpi_f08_types, only : mpi_datatype, mpi_op, mpi_comm, mpi_info, mpi_request 308 implicit none 309 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 310 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 311 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 312 !DIR$ IGNORE_TKR sendbuf, recvbuf 313 !IBM* IGNORE_TKR sendbuf, recvbuf 314 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 315 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 316 integer, intent(in) :: recvcount 317 type(mpi_datatype), intent(in) :: datatype 318 type(mpi_op), intent(in) :: op 319 type(mpi_comm), intent(in) :: comm 320 type(mpi_info), intent(in) :: info 321 type(mpi_request), intent(out) :: request 322 integer, optional, intent(out) :: ierror 323 end subroutine mpix_reduce_scatter_block_init 324 end interface mpix_reduce_scatter_block_init 325 326 interface mpix_scan_init 327 subroutine mpix_scan_init(sendbuf, recvbuf, count, & 328 datatype, op, & 329 comm, info, request, ierror) 330 use :: mpi_f08_types, only : mpi_datatype, mpi_op, mpi_comm, mpi_info, mpi_request 331 implicit none 332 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 333 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 334 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 335 !DIR$ IGNORE_TKR sendbuf, recvbuf 336 !IBM* IGNORE_TKR sendbuf, recvbuf 337 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 338 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 339 integer, intent(in) :: count 340 type(mpi_datatype), intent(in) :: datatype 341 type(mpi_op), intent(in) :: op 342 type(mpi_comm), intent(in) :: comm 343 type(mpi_info), intent(in) :: info 344 type(mpi_request), intent(out) :: request 345 integer, optional, intent(out) :: ierror 346 end subroutine mpix_scan_init 347 end interface mpix_scan_init 348 349 interface mpix_scatter_init 350 subroutine mpix_scatter_init(sendbuf, sendcount, sendtype, & 351 recvbuf, recvcount, recvtype, root, & 352 comm, info, request, ierror) 353 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 354 implicit none 355 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 356 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 357 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 358 !DIR$ IGNORE_TKR sendbuf, recvbuf 359 !IBM* IGNORE_TKR sendbuf, recvbuf 360 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 361 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 362 integer, intent(in) :: sendcount, recvcount, root 363 type(mpi_datatype), intent(in) :: sendtype, recvtype 364 type(mpi_comm), intent(in) :: comm 365 type(mpi_info), intent(in) :: info 366 type(mpi_request), intent(out) :: request 367 integer, optional, intent(out) :: ierror 368 end subroutine mpix_scatter_init 369 end interface mpix_scatter_init 370 371 interface mpix_scatterv_init 372 subroutine mpix_scatterv_init(sendbuf, sendcounts, displs, sendtype, & 373 recvbuf, recvcount, recvtype, root, & 374 comm, info, request, ierror) 375 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 376 implicit none 377 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 378 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 379 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 380 !DIR$ IGNORE_TKR sendbuf, recvbuf 381 !IBM* IGNORE_TKR sendbuf, recvbuf 382 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 383 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 384 integer, intent(in) :: recvcount, root 385 integer, intent(in), asynchronous :: sendcounts(*), displs(*) 386 type(mpi_datatype), intent(in) :: sendtype, recvtype 387 type(mpi_comm), intent(in) :: comm 388 type(mpi_info), intent(in) :: info 389 type(mpi_request), intent(out) :: request 390 integer, optional, intent(out) :: ierror 391 end subroutine mpix_scatterv_init 392 end interface mpix_scatterv_init 393 394 interface mpix_neighbor_allgather_init 395 subroutine mpix_neighbor_allgather_init(sendbuf, sendcount, sendtype, & 396 recvbuf, recvcount, recvtype, & 397 comm, info, request, ierror) 398 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 399 implicit none 400 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 401 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 402 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 403 !DIR$ IGNORE_TKR sendbuf, recvbuf 404 !IBM* IGNORE_TKR sendbuf, recvbuf 405 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 406 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 407 integer, intent(in) :: sendcount, recvcount 408 type(mpi_datatype), intent(in) :: sendtype, recvtype 409 type(mpi_comm), intent(in) :: comm 410 type(mpi_info), intent(in) :: info 411 type(mpi_request), intent(out) :: request 412 integer, optional, intent(out) :: ierror 413 end subroutine mpix_neighbor_allgather_init 414 end interface mpix_neighbor_allgather_init 415 416 interface mpix_neighbor_allgatherv_init 417 subroutine mpix_neighbor_allgatherv_init(sendbuf, sendcount, sendtype, & 418 recvbuf, recvcounts, displs, recvtype, & 419 comm, info, request, ierror) 420 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 421 implicit none 422 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 423 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 424 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 425 !DIR$ IGNORE_TKR sendbuf, recvbuf 426 !IBM* IGNORE_TKR sendbuf, recvbuf 427 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 428 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 429 integer, intent(in) :: sendcount 430 integer, intent(in), asynchronous :: recvcounts(*), displs(*) 431 type(mpi_datatype), intent(in) :: sendtype, recvtype 432 type(mpi_comm), intent(in) :: comm 433 type(mpi_info), intent(in) :: info 434 type(mpi_request), intent(out) :: request 435 integer, optional, intent(out) :: ierror 436 end subroutine mpix_neighbor_allgatherv_init 437 end interface mpix_neighbor_allgatherv_init 438 439 interface mpix_neighbor_alltoall_init 440 subroutine mpix_neighbor_alltoall_init(sendbuf, sendcount, sendtype, & 441 recvbuf, recvcount, recvtype, & 442 comm, info, request, ierror) 443 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 444 implicit none 445 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 446 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 447 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 448 !DIR$ IGNORE_TKR sendbuf, recvbuf 449 !IBM* IGNORE_TKR sendbuf, recvbuf 450 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 451 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 452 integer, intent(in) :: sendcount, recvcount 453 type(mpi_datatype), intent(in) :: sendtype, recvtype 454 type(mpi_comm), intent(in) :: comm 455 type(mpi_info), intent(in) :: info 456 type(mpi_request), intent(out) :: request 457 integer, optional, intent(out) :: ierror 458 end subroutine mpix_neighbor_alltoall_init 459 end interface mpix_neighbor_alltoall_init 460 461 interface mpix_neighbor_alltoallv_init 462 subroutine mpix_neighbor_alltoallv_init(sendbuf, sendcounts, sdispls, sendtype, & 463 recvbuf, recvcounts, rdispls, recvtype, & 464 comm, info, request, ierror) 465 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 466 implicit none 467 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 468 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 469 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 470 !DIR$ IGNORE_TKR sendbuf, recvbuf 471 !IBM* IGNORE_TKR sendbuf, recvbuf 472 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 473 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 474 integer, intent(in), asynchronous :: sendcounts(*), sdispls(*), recvcounts(*), rdispls(*) 475 type(mpi_datatype), intent(in) :: sendtype, recvtype 476 type(mpi_comm), intent(in) :: comm 477 type(mpi_info), intent(in) :: info 478 type(mpi_request), intent(out) :: request 479 integer, optional, intent(out) :: ierror 480 end subroutine mpix_neighbor_alltoallv_init 481 end interface mpix_neighbor_alltoallv_init 482 483 interface mpix_neighbor_alltoallw_init 484 subroutine mpix_neighbor_alltoallw_init(sendbuf, sendcounts, sdispls, sendtypes, & 485 recvbuf, recvcounts, rdispls, recvtypes, & 486 comm, info, request, ierror) 487 use :: mpi_f08_types, only : mpi_address_kind, mpi_datatype, mpi_comm, mpi_info, mpi_request 488 implicit none 489 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 490 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 491 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 492 !DIR$ IGNORE_TKR sendbuf, recvbuf 493 !IBM* IGNORE_TKR sendbuf, recvbuf 494 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 495 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 496 integer, intent(in), asynchronous :: sendcounts(*), recvcounts(*) 497 integer(mpi_address_kind), intent(in), asynchronous :: sdispls(*), rdispls(*) 498 type(mpi_datatype), intent(in), asynchronous :: sendtypes(*), recvtypes(*) 499 type(mpi_comm), intent(in) :: comm 500 type(mpi_info), intent(in) :: info 501 type(mpi_request), intent(out) :: request 502 integer, optional, intent(out) :: ierror 503 end subroutine mpix_neighbor_alltoallw_init 504 end interface mpix_neighbor_alltoallw_init 505 506 interface pmpix_allgather_init 507 subroutine pmpix_allgather_init(sendbuf, sendcount, sendtype, & 508 recvbuf, recvcount, recvtype, & 509 comm, info, request, ierror) 510 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 511 implicit none 512 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 513 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 514 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 515 !DIR$ IGNORE_TKR sendbuf, recvbuf 516 !IBM* IGNORE_TKR sendbuf, recvbuf 517 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 518 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 519 integer, intent(in) :: sendcount, recvcount 520 type(mpi_datatype), intent(in) :: sendtype, recvtype 521 type(mpi_comm), intent(in) :: comm 522 type(mpi_info), intent(in) :: info 523 type(mpi_request), intent(out) :: request 524 integer, optional, intent(out) :: ierror 525 end subroutine pmpix_allgather_init 526 end interface pmpix_allgather_init 527 528 interface pmpix_allgatherv_init 529 subroutine pmpix_allgatherv_init(sendbuf, sendcount, sendtype, & 530 recvbuf, recvcounts, displs, recvtype, & 531 comm, info, request, ierror) 532 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 533 implicit none 534 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 535 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 536 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 537 !DIR$ IGNORE_TKR sendbuf, recvbuf 538 !IBM* IGNORE_TKR sendbuf, recvbuf 539 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 540 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 541 integer, intent(in) :: sendcount 542 integer, intent(in), asynchronous :: recvcounts(*), displs(*) 543 type(mpi_datatype), intent(in) :: sendtype, recvtype 544 type(mpi_comm), intent(in) :: comm 545 type(mpi_info), intent(in) :: info 546 type(mpi_request), intent(out) :: request 547 integer, optional, intent(out) :: ierror 548 end subroutine pmpix_allgatherv_init 549 end interface pmpix_allgatherv_init 550 551 interface pmpix_allreduce_init 552 subroutine pmpix_allreduce_init(sendbuf, recvbuf, count, & 553 datatype, op, & 554 comm, info, request, ierror) 555 use :: mpi_f08_types, only : mpi_datatype, mpi_op, mpi_comm, mpi_info, mpi_request 556 implicit none 557 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 558 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 559 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 560 !DIR$ IGNORE_TKR sendbuf, recvbuf 561 !IBM* IGNORE_TKR sendbuf, recvbuf 562 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 563 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 564 integer, intent(in) :: count 565 type(mpi_datatype), intent(in) :: datatype 566 type(mpi_op), intent(in) :: op 567 type(mpi_comm), intent(in) :: comm 568 type(mpi_info), intent(in) :: info 569 type(mpi_request), intent(out) :: request 570 integer, optional, intent(out) :: ierror 571 end subroutine pmpix_allreduce_init 572 end interface pmpix_allreduce_init 573 574 interface pmpix_alltoall_init 575 subroutine pmpix_alltoall_init(sendbuf, sendcount, sendtype, & 576 recvbuf, recvcount, recvtype, & 577 comm, info, request, ierror) 578 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 579 implicit none 580 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 581 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 582 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 583 !DIR$ IGNORE_TKR sendbuf, recvbuf 584 !IBM* IGNORE_TKR sendbuf, recvbuf 585 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 586 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 587 integer, intent(in) :: sendcount, recvcount 588 type(mpi_datatype), intent(in) :: sendtype, recvtype 589 type(mpi_comm), intent(in) :: comm 590 type(mpi_info), intent(in) :: info 591 type(mpi_request), intent(out) :: request 592 integer, optional, intent(out) :: ierror 593 end subroutine pmpix_alltoall_init 594 end interface pmpix_alltoall_init 595 596 interface pmpix_alltoallv_init 597 subroutine pmpix_alltoallv_init(sendbuf, sendcounts, sdispls, sendtype, & 598 recvbuf, recvcounts, rdispls, recvtype, & 599 comm, info, request, ierror) 600 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 601 implicit none 602 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 603 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 604 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 605 !DIR$ IGNORE_TKR sendbuf, recvbuf 606 !IBM* IGNORE_TKR sendbuf, recvbuf 607 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 608 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 609 integer, intent(in), asynchronous :: sendcounts(*), sdispls(*), recvcounts(*), rdispls(*) 610 type(mpi_datatype), intent(in) :: sendtype, recvtype 611 type(mpi_comm), intent(in) :: comm 612 type(mpi_info), intent(in) :: info 613 type(mpi_request), intent(out) :: request 614 integer, optional, intent(out) :: ierror 615 end subroutine pmpix_alltoallv_init 616 end interface pmpix_alltoallv_init 617 618 interface pmpix_alltoallw_init 619 subroutine pmpix_alltoallw_init(sendbuf, sendcounts, sdispls, sendtypes, & 620 recvbuf, recvcounts, rdispls, recvtypes, & 621 comm, info, request, ierror) 622 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 623 implicit none 624 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 625 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 626 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 627 !DIR$ IGNORE_TKR sendbuf, recvbuf 628 !IBM* IGNORE_TKR sendbuf, recvbuf 629 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 630 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 631 integer, intent(in), asynchronous :: sendcounts(*), sdispls(*), recvcounts(*), rdispls(*) 632 type(mpi_datatype), intent(in), asynchronous :: sendtypes(*), recvtypes(*) 633 type(mpi_comm), intent(in) :: comm 634 type(mpi_info), intent(in) :: info 635 type(mpi_request), intent(out) :: request 636 integer, optional, intent(out) :: ierror 637 end subroutine pmpix_alltoallw_init 638 end interface pmpix_alltoallw_init 639 640 interface pmpix_barrier_init 641 subroutine pmpix_barrier_init(comm, info, request, ierror) 642 use :: mpi_f08_types, only : mpi_comm, mpi_info, mpi_request 643 implicit none 644 type(mpi_comm), intent(in) :: comm 645 type(mpi_info), intent(in) :: info 646 type(mpi_request), intent(out) :: request 647 integer, optional, intent(out) :: ierror 648 end subroutine pmpix_barrier_init 649 end interface pmpix_barrier_init 650 651 interface pmpix_bcast_init 652 subroutine pmpix_bcast_init(buffer, count, datatype, root, & 653 comm, info, request, ierror) 654 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 655 implicit none 656 !DEC$ ATTRIBUTES NO_ARG_CHECK :: buffer 657 !GCC$ ATTRIBUTES NO_ARG_CHECK :: buffer 658 !$PRAGMA IGNORE_TKR buffer 659 !DIR$ IGNORE_TKR buffer 660 !IBM* IGNORE_TKR buffer 661 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: buffer 662 integer, intent(in) :: count, root 663 type(mpi_datatype), intent(in) :: datatype 664 type(mpi_comm), intent(in) :: comm 665 type(mpi_info), intent(in) :: info 666 type(mpi_request), intent(out) :: request 667 integer, optional, intent(out) :: ierror 668 end subroutine pmpix_bcast_init 669 end interface pmpix_bcast_init 670 671 interface pmpix_exscan_init 672 subroutine pmpix_exscan_init(sendbuf, recvbuf, count, & 673 datatype, op, & 674 comm, info, request, ierror) 675 use :: mpi_f08_types, only : mpi_datatype, mpi_op, mpi_comm, mpi_info, mpi_request 676 implicit none 677 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 678 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 679 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 680 !DIR$ IGNORE_TKR sendbuf, recvbuf 681 !IBM* IGNORE_TKR sendbuf, recvbuf 682 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 683 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 684 integer, intent(in) :: count 685 type(mpi_datatype), intent(in) :: datatype 686 type(mpi_op), intent(in) :: op 687 type(mpi_comm), intent(in) :: comm 688 type(mpi_info), intent(in) :: info 689 type(mpi_request), intent(out) :: request 690 integer, optional, intent(out) :: ierror 691 end subroutine pmpix_exscan_init 692 end interface pmpix_exscan_init 693 694 interface pmpix_gather_init 695 subroutine pmpix_gather_init(sendbuf, sendcount, sendtype, & 696 recvbuf, recvcount, recvtype, root, & 697 comm, info, request, ierror) 698 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 699 implicit none 700 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 701 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 702 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 703 !DIR$ IGNORE_TKR sendbuf, recvbuf 704 !IBM* IGNORE_TKR sendbuf, recvbuf 705 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 706 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 707 integer, intent(in) :: sendcount, recvcount, root 708 type(mpi_datatype), intent(in) :: sendtype, recvtype 709 type(mpi_comm), intent(in) :: comm 710 type(mpi_info), intent(in) :: info 711 type(mpi_request), intent(out) :: request 712 integer, optional, intent(out) :: ierror 713 end subroutine pmpix_gather_init 714 end interface pmpix_gather_init 715 716 interface pmpix_gatherv_init 717 subroutine pmpix_gatherv_init(sendbuf, sendcount, sendtype, & 718 recvbuf, recvcounts, displs, recvtype, root, & 719 comm, info, request, ierror) 720 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 721 implicit none 722 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 723 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 724 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 725 !DIR$ IGNORE_TKR sendbuf, recvbuf 726 !IBM* IGNORE_TKR sendbuf, recvbuf 727 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 728 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 729 integer, intent(in) :: sendcount, root 730 integer, intent(in) :: recvcounts(*), displs(*) 731 type(mpi_datatype), intent(in) :: sendtype, recvtype 732 type(mpi_comm), intent(in) :: comm 733 type(mpi_info), intent(in) :: info 734 type(mpi_request), intent(out) :: request 735 integer, optional, intent(out) :: ierror 736 end subroutine pmpix_gatherv_init 737 end interface pmpix_gatherv_init 738 739 interface pmpix_reduce_init 740 subroutine pmpix_reduce_init(sendbuf, recvbuf, count, & 741 datatype, op, root, & 742 comm, info, request, ierror) 743 use :: mpi_f08_types, only : mpi_datatype, mpi_op, mpi_comm, mpi_info, mpi_request 744 implicit none 745 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 746 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 747 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 748 !DIR$ IGNORE_TKR sendbuf, recvbuf 749 !IBM* IGNORE_TKR sendbuf, recvbuf 750 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 751 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 752 integer, intent(in) :: count, root 753 type(mpi_datatype), intent(in) :: datatype 754 type(mpi_op), intent(in) :: op 755 type(mpi_comm), intent(in) :: comm 756 type(mpi_info), intent(in) :: info 757 type(mpi_request), intent(out) :: request 758 integer, optional, intent(out) :: ierror 759 end subroutine pmpix_reduce_init 760 end interface pmpix_reduce_init 761 762 interface pmpix_reduce_scatter_init 763 subroutine pmpix_reduce_scatter_init(sendbuf, recvbuf, recvcounts, & 764 datatype, op, & 765 comm, info, request, ierror) 766 use :: mpi_f08_types, only : mpi_datatype, mpi_op, mpi_comm, mpi_info, mpi_request 767 implicit none 768 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 769 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 770 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 771 !DIR$ IGNORE_TKR sendbuf, recvbuf 772 !IBM* IGNORE_TKR sendbuf, recvbuf 773 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 774 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 775 integer, intent(in), asynchronous :: recvcounts(*) 776 type(mpi_datatype), intent(in) :: datatype 777 type(mpi_op), intent(in) :: op 778 type(mpi_comm), intent(in) :: comm 779 type(mpi_info), intent(in) :: info 780 type(mpi_request), intent(out) :: request 781 integer, optional, intent(out) :: ierror 782 end subroutine pmpix_reduce_scatter_init 783 end interface pmpix_reduce_scatter_init 784 785 interface pmpix_reduce_scatter_block_init 786 subroutine pmpix_reduce_scatter_block_init(sendbuf, recvbuf, recvcount, & 787 datatype, op, & 788 comm, info, request, ierror) 789 use :: mpi_f08_types, only : mpi_datatype, mpi_op, mpi_comm, mpi_info, mpi_request 790 implicit none 791 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 792 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 793 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 794 !DIR$ IGNORE_TKR sendbuf, recvbuf 795 !IBM* IGNORE_TKR sendbuf, recvbuf 796 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 797 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 798 integer, intent(in) :: recvcount 799 type(mpi_datatype), intent(in) :: datatype 800 type(mpi_op), intent(in) :: op 801 type(mpi_comm), intent(in) :: comm 802 type(mpi_info), intent(in) :: info 803 type(mpi_request), intent(out) :: request 804 integer, optional, intent(out) :: ierror 805 end subroutine pmpix_reduce_scatter_block_init 806 end interface pmpix_reduce_scatter_block_init 807 808 interface pmpix_scan_init 809 subroutine pmpix_scan_init(sendbuf, recvbuf, count, & 810 datatype, op, & 811 comm, info, request, ierror) 812 use :: mpi_f08_types, only : mpi_datatype, mpi_op, mpi_comm, mpi_info, mpi_request 813 implicit none 814 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 815 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 816 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 817 !DIR$ IGNORE_TKR sendbuf, recvbuf 818 !IBM* IGNORE_TKR sendbuf, recvbuf 819 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 820 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 821 integer, intent(in) :: count 822 type(mpi_datatype), intent(in) :: datatype 823 type(mpi_op), intent(in) :: op 824 type(mpi_comm), intent(in) :: comm 825 type(mpi_info), intent(in) :: info 826 type(mpi_request), intent(out) :: request 827 integer, optional, intent(out) :: ierror 828 end subroutine pmpix_scan_init 829 end interface pmpix_scan_init 830 831 interface pmpix_scatter_init 832 subroutine pmpix_scatter_init(sendbuf, sendcount, sendtype, & 833 recvbuf, recvcount, recvtype, root, & 834 comm, info, request, ierror) 835 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 836 implicit none 837 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 838 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 839 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 840 !DIR$ IGNORE_TKR sendbuf, recvbuf 841 !IBM* IGNORE_TKR sendbuf, recvbuf 842 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 843 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 844 integer, intent(in) :: sendcount, recvcount, root 845 type(mpi_datatype), intent(in) :: sendtype, recvtype 846 type(mpi_comm), intent(in) :: comm 847 type(mpi_info), intent(in) :: info 848 type(mpi_request), intent(out) :: request 849 integer, optional, intent(out) :: ierror 850 end subroutine pmpix_scatter_init 851 end interface pmpix_scatter_init 852 853 interface pmpix_scatterv_init 854 subroutine pmpix_scatterv_init(sendbuf, sendcounts, displs, sendtype, & 855 recvbuf, recvcount, recvtype, root, & 856 comm, info, request, ierror) 857 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 858 implicit none 859 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 860 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 861 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 862 !DIR$ IGNORE_TKR sendbuf, recvbuf 863 !IBM* IGNORE_TKR sendbuf, recvbuf 864 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 865 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 866 integer, intent(in) :: recvcount, root 867 integer, intent(in), asynchronous :: sendcounts(*), displs(*) 868 type(mpi_datatype), intent(in) :: sendtype, recvtype 869 type(mpi_comm), intent(in) :: comm 870 type(mpi_info), intent(in) :: info 871 type(mpi_request), intent(out) :: request 872 integer, optional, intent(out) :: ierror 873 end subroutine pmpix_scatterv_init 874 end interface pmpix_scatterv_init 875 876 interface pmpix_neighbor_allgather_init 877 subroutine pmpix_neighbor_allgather_init(sendbuf, sendcount, sendtype, & 878 recvbuf, recvcount, recvtype, & 879 comm, info, request, ierror) 880 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 881 implicit none 882 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 883 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 884 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 885 !DIR$ IGNORE_TKR sendbuf, recvbuf 886 !IBM* IGNORE_TKR sendbuf, recvbuf 887 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 888 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 889 integer, intent(in) :: sendcount, recvcount 890 type(mpi_datatype), intent(in) :: sendtype, recvtype 891 type(mpi_comm), intent(in) :: comm 892 type(mpi_info), intent(in) :: info 893 type(mpi_request), intent(out) :: request 894 integer, optional, intent(out) :: ierror 895 end subroutine pmpix_neighbor_allgather_init 896 end interface pmpix_neighbor_allgather_init 897 898 interface pmpix_neighbor_allgatherv_init 899 subroutine pmpix_neighbor_allgatherv_init(sendbuf, sendcount, sendtype, & 900 recvbuf, recvcounts, displs, recvtype, & 901 comm, info, request, ierror) 902 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 903 implicit none 904 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 905 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 906 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 907 !DIR$ IGNORE_TKR sendbuf, recvbuf 908 !IBM* IGNORE_TKR sendbuf, recvbuf 909 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 910 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 911 integer, intent(in) :: sendcount 912 integer, intent(in), asynchronous :: recvcounts(*), displs(*) 913 type(mpi_datatype), intent(in) :: sendtype, recvtype 914 type(mpi_comm), intent(in) :: comm 915 type(mpi_info), intent(in) :: info 916 type(mpi_request), intent(out) :: request 917 integer, optional, intent(out) :: ierror 918 end subroutine pmpix_neighbor_allgatherv_init 919 end interface pmpix_neighbor_allgatherv_init 920 921 interface pmpix_neighbor_alltoall_init 922 subroutine pmpix_neighbor_alltoall_init(sendbuf, sendcount, sendtype, & 923 recvbuf, recvcount, recvtype, & 924 comm, info, request, ierror) 925 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 926 implicit none 927 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 928 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 929 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 930 !DIR$ IGNORE_TKR sendbuf, recvbuf 931 !IBM* IGNORE_TKR sendbuf, recvbuf 932 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 933 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 934 integer, intent(in) :: sendcount, recvcount 935 type(mpi_datatype), intent(in) :: sendtype, recvtype 936 type(mpi_comm), intent(in) :: comm 937 type(mpi_info), intent(in) :: info 938 type(mpi_request), intent(out) :: request 939 integer, optional, intent(out) :: ierror 940 end subroutine pmpix_neighbor_alltoall_init 941 end interface pmpix_neighbor_alltoall_init 942 943 interface pmpix_neighbor_alltoallv_init 944 subroutine pmpix_neighbor_alltoallv_init(sendbuf, sendcounts, sdispls, sendtype, & 945 recvbuf, recvcounts, rdispls, recvtype, & 946 comm, info, request, ierror) 947 use :: mpi_f08_types, only : mpi_datatype, mpi_comm, mpi_info, mpi_request 948 implicit none 949 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 950 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 951 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 952 !DIR$ IGNORE_TKR sendbuf, recvbuf 953 !IBM* IGNORE_TKR sendbuf, recvbuf 954 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 955 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 956 integer, intent(in), asynchronous :: sendcounts(*), sdispls(*), recvcounts(*), rdispls(*) 957 type(mpi_datatype), intent(in) :: sendtype, recvtype 958 type(mpi_comm), intent(in) :: comm 959 type(mpi_info), intent(in) :: info 960 type(mpi_request), intent(out) :: request 961 integer, optional, intent(out) :: ierror 962 end subroutine pmpix_neighbor_alltoallv_init 963 end interface pmpix_neighbor_alltoallv_init 964 965 interface pmpix_neighbor_alltoallw_init 966 subroutine pmpix_neighbor_alltoallw_init(sendbuf, sendcounts, sdispls, sendtypes, & 967 recvbuf, recvcounts, rdispls, recvtypes, & 968 comm, info, request, ierror) 969 use :: mpi_f08_types, only : mpi_address_kind, mpi_datatype, mpi_comm, mpi_info, mpi_request 970 implicit none 971 !DEC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 972 !GCC$ ATTRIBUTES NO_ARG_CHECK :: sendbuf, recvbuf 973 !$PRAGMA IGNORE_TKR sendbuf, recvbuf 974 !DIR$ IGNORE_TKR sendbuf, recvbuf 975 !IBM* IGNORE_TKR sendbuf, recvbuf 976 OMPI_FORTRAN_IGNORE_TKR_TYPE, intent(in), asynchronous :: sendbuf 977 OMPI_FORTRAN_IGNORE_TKR_TYPE, asynchronous :: recvbuf 978 integer, intent(in), asynchronous :: sendcounts(*), recvcounts(*) 979 integer(mpi_address_kind), intent(in), asynchronous :: sdispls(*), rdispls(*) 980 type(mpi_datatype), intent(in) :: sendtypes(*), recvtypes(*) 981 type(mpi_comm), intent(in) :: comm 982 type(mpi_info), intent(in) :: info 983 type(mpi_request), intent(out) :: request 984 integer, optional, intent(out) :: ierror 985 end subroutine pmpix_neighbor_alltoallw_init 986 end interface pmpix_neighbor_alltoallw_init