Remove "medium" RMA interfaces
We no longer specify interfaces with choice buffers in the TKR "mpi" module implementation -- MPI-3 prohibits it (see r30169 and r30170 for more details). cmr=v1.7.5:ticket=trac:4372 This commit was SVN r31033. The following SVN revision numbers were found above: r30169 --> open-mpi/ompi@759ee33fd4 r30170 --> open-mpi/ompi@776f6144af The following Trac tickets were found above: Ticket 4372 --> https://svn.open-mpi.org/trac/ompi/ticket/4372
Этот коммит содержится в:
родитель
53248a90f3
Коммит
c6fb1b51b1
@ -8,7 +8,7 @@
|
||||
# reserved.
|
||||
# Copyright (c) 2004-2006 The Regents of the University of California.
|
||||
# All rights reserved.
|
||||
# Copyright (c) 2006-2012 Cisco Systems, Inc. All rights reserved.
|
||||
# Copyright (c) 2006-2014 Cisco Systems, Inc. All rights reserved.
|
||||
# Copyright (c) 2012 FUJITSU LIMITED. All rights reserved.
|
||||
# Copyright (c) 2012 Inria. All rights reserved.
|
||||
# Copyright (c) 2013 Los Alamos Nationa Security, LLC. All rights
|
||||
@ -11442,438 +11442,3 @@ EOF
|
||||
start MPI_Win_flush_local_all small
|
||||
output_299 MPI_Win_flush_local_all
|
||||
end MPI_Win_flush_local_all
|
||||
|
||||
#------------------------------------------------------------------------
|
||||
|
||||
output_300() {
|
||||
if test "$output" = "0"; then
|
||||
return 0
|
||||
fi
|
||||
|
||||
procedure=$1
|
||||
rank=$2
|
||||
type=$4
|
||||
proc="$1$2D$3"
|
||||
cat <<EOF
|
||||
|
||||
subroutine ${proc}(origin_addr, origin_count, origin_datatype, result_addr, &
|
||||
result_count, result_datatype, target_rank, target_disp, &
|
||||
target_count, target_datatype, op, win, ierror)
|
||||
include 'mpif-config.h'
|
||||
${type} :: origin_addr
|
||||
integer, intent(in) :: origin_count
|
||||
integer, intent(in) :: origin_datatype
|
||||
${type} :: result_addr
|
||||
integer, intent(in) :: result_count
|
||||
integer, intent(in) :: result_datatype
|
||||
integer, intent(in) :: target_rank
|
||||
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
|
||||
integer, intent(in) :: target_count
|
||||
integer, intent(in) :: target_datatype
|
||||
integer, intent(in) :: op
|
||||
integer, intent(in) :: win
|
||||
integer, intent(out) :: ierror
|
||||
end subroutine ${proc}
|
||||
|
||||
EOF
|
||||
}
|
||||
|
||||
start MPI_Get_accumulate medium
|
||||
|
||||
for rank in $allranks
|
||||
do
|
||||
case "$rank" in 0) dim='' ; esac
|
||||
case "$rank" in 1) dim=', dimension(*)' ; esac
|
||||
case "$rank" in 2) dim=', dimension(1,*)' ; esac
|
||||
case "$rank" in 3) dim=', dimension(1,1,*)' ; esac
|
||||
case "$rank" in 4) dim=', dimension(1,1,1,*)' ; esac
|
||||
case "$rank" in 5) dim=', dimension(1,1,1,1,*)' ; esac
|
||||
case "$rank" in 6) dim=', dimension(1,1,1,1,1,*)' ; esac
|
||||
case "$rank" in 7) dim=', dimension(1,1,1,1,1,1,*)' ; esac
|
||||
|
||||
output_300 MPI_Get_accumulate ${rank} CH "character${dim}"
|
||||
output_300 MPI_Get_accumulate ${rank} L "logical${dim}"
|
||||
for kind in $ikinds
|
||||
do
|
||||
output_300 MPI_Get_accumulate ${rank} I${kind} "integer*${kind}${dim}"
|
||||
done
|
||||
for kind in $rkinds
|
||||
do
|
||||
output_300 MPI_Get_accumulate ${rank} R${kind} "real*${kind}${dim}"
|
||||
done
|
||||
for kind in $ckinds
|
||||
do
|
||||
output_300 MPI_Get_accumulate ${rank} C${kind} "complex*${kind}${dim}"
|
||||
done
|
||||
done
|
||||
end MPI_Get_accumulate
|
||||
|
||||
#------------------------------------------------------------------------
|
||||
|
||||
output_301() {
|
||||
if test "$output" = "0"; then
|
||||
return 0
|
||||
fi
|
||||
|
||||
procedure=$1
|
||||
rank=$2
|
||||
type=$4
|
||||
proc="$1$2D$3"
|
||||
cat <<EOF
|
||||
|
||||
subroutine ${proc}(origin_addr, origin_count, origin_datatype, result_addr, &
|
||||
result_count, result_datatype, target_rank, target_disp, &
|
||||
target_count, target_datatype, op, win, request, ierror)
|
||||
include 'mpif-config.h'
|
||||
${type} :: origin_addr
|
||||
integer, intent(in) :: origin_count
|
||||
integer, intent(in) :: origin_datatype
|
||||
${type} :: result_addr
|
||||
integer, intent(in) :: result_count
|
||||
integer, intent(in) :: result_datatype
|
||||
integer, intent(in) :: target_rank
|
||||
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
|
||||
integer, intent(in) :: target_count
|
||||
integer, intent(in) :: target_datatype
|
||||
integer, intent(in) :: op
|
||||
integer, intent(in) :: win
|
||||
integer, intent(out) :: request
|
||||
integer, intent(out) :: ierror
|
||||
end subroutine ${proc}
|
||||
|
||||
EOF
|
||||
}
|
||||
|
||||
start MPI_Rget_accumulate medium
|
||||
|
||||
for rank in $allranks
|
||||
do
|
||||
case "$rank" in 0) dim='' ; esac
|
||||
case "$rank" in 1) dim=', dimension(*)' ; esac
|
||||
case "$rank" in 2) dim=', dimension(1,*)' ; esac
|
||||
case "$rank" in 3) dim=', dimension(1,1,*)' ; esac
|
||||
case "$rank" in 4) dim=', dimension(1,1,1,*)' ; esac
|
||||
case "$rank" in 5) dim=', dimension(1,1,1,1,*)' ; esac
|
||||
case "$rank" in 6) dim=', dimension(1,1,1,1,1,*)' ; esac
|
||||
case "$rank" in 7) dim=', dimension(1,1,1,1,1,1,*)' ; esac
|
||||
|
||||
output_301 MPI_Rget_accumulate ${rank} CH "character${dim}"
|
||||
output_301 MPI_Rget_accumulate ${rank} L "logical${dim}"
|
||||
for kind in $ikinds
|
||||
do
|
||||
output_301 MPI_Rget_accumulate ${rank} I${kind} "integer*${kind}${dim}"
|
||||
done
|
||||
for kind in $rkinds
|
||||
do
|
||||
output_301 MPI_Rget_accumulate ${rank} R${kind} "real*${kind}${dim}"
|
||||
done
|
||||
for kind in $ckinds
|
||||
do
|
||||
output_301 MPI_Rget_accumulate ${rank} C${kind} "complex*${kind}${dim}"
|
||||
done
|
||||
done
|
||||
end MPI_Rget_accumulate
|
||||
|
||||
#------------------------------------------------------------------------
|
||||
|
||||
output_302() {
|
||||
if test "$output" = "0"; then
|
||||
return 0
|
||||
fi
|
||||
|
||||
procedure=$1
|
||||
rank=$2
|
||||
type=$4
|
||||
proc="$1$2D$3"
|
||||
cat <<EOF
|
||||
|
||||
subroutine ${proc}(origin_addr, result_addr, datatype, target_rank, target_disp, &
|
||||
op, win, ierror)
|
||||
include 'mpif-config.h'
|
||||
${type} :: origin_addr
|
||||
${type} :: result_addr
|
||||
integer, intent(in) :: datatype
|
||||
integer, intent(in) :: target_rank
|
||||
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
|
||||
integer, intent(in) :: target_count
|
||||
integer, intent(in) :: op
|
||||
integer, intent(in) :: win
|
||||
integer, intent(out) :: ierror
|
||||
end subroutine ${proc}
|
||||
|
||||
EOF
|
||||
}
|
||||
|
||||
start MPI_Fetch_and_op medium
|
||||
|
||||
for rank in $allranks
|
||||
do
|
||||
case "$rank" in 0) dim='' ; esac
|
||||
case "$rank" in 1) dim=', dimension(*)' ; esac
|
||||
case "$rank" in 2) dim=', dimension(1,*)' ; esac
|
||||
case "$rank" in 3) dim=', dimension(1,1,*)' ; esac
|
||||
case "$rank" in 4) dim=', dimension(1,1,1,*)' ; esac
|
||||
case "$rank" in 5) dim=', dimension(1,1,1,1,*)' ; esac
|
||||
case "$rank" in 6) dim=', dimension(1,1,1,1,1,*)' ; esac
|
||||
case "$rank" in 7) dim=', dimension(1,1,1,1,1,1,*)' ; esac
|
||||
|
||||
output_302 MPI_Fetch_and_op ${rank} CH "character${dim}"
|
||||
output_302 MPI_Fetch_and_op ${rank} L "logical${dim}"
|
||||
for kind in $ikinds
|
||||
do
|
||||
output_302 MPI_Fetch_and_op ${rank} I${kind} "integer*${kind}${dim}"
|
||||
done
|
||||
for kind in $rkinds
|
||||
do
|
||||
output_302 MPI_Fetch_and_op ${rank} R${kind} "real*${kind}${dim}"
|
||||
done
|
||||
for kind in $ckinds
|
||||
do
|
||||
output_302 MPI_Fetch_and_op ${rank} C${kind} "complex*${kind}${dim}"
|
||||
done
|
||||
done
|
||||
end MPI_Fetch_and_op
|
||||
|
||||
#------------------------------------------------------------------------
|
||||
|
||||
output_303() {
|
||||
if test "$output" = "0"; then
|
||||
return 0
|
||||
fi
|
||||
|
||||
procedure=$1
|
||||
rank=$2
|
||||
type=$4
|
||||
proc="$1$2D$3"
|
||||
cat <<EOF
|
||||
|
||||
subroutine ${proc}(origin_addr, compare_addr, result_addr, datatype, target_rank, &
|
||||
target_disp, win, ierror)
|
||||
include 'mpif-config.h'
|
||||
${type} :: origin_addr
|
||||
${type} :: compare_addr
|
||||
${type} :: result_addr
|
||||
integer, intent(in) :: datatype
|
||||
integer, intent(in) :: target_rank
|
||||
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
|
||||
integer, intent(in) :: target_count
|
||||
integer, intent(in) :: win
|
||||
integer, intent(out) :: ierror
|
||||
end subroutine ${proc}
|
||||
|
||||
EOF
|
||||
}
|
||||
|
||||
start MPI_Compare_and_swap medium
|
||||
|
||||
for rank in $allranks
|
||||
do
|
||||
case "$rank" in 0) dim='' ; esac
|
||||
case "$rank" in 1) dim=', dimension(*)' ; esac
|
||||
case "$rank" in 2) dim=', dimension(1,*)' ; esac
|
||||
case "$rank" in 3) dim=', dimension(1,1,*)' ; esac
|
||||
case "$rank" in 4) dim=', dimension(1,1,1,*)' ; esac
|
||||
case "$rank" in 5) dim=', dimension(1,1,1,1,*)' ; esac
|
||||
case "$rank" in 6) dim=', dimension(1,1,1,1,1,*)' ; esac
|
||||
case "$rank" in 7) dim=', dimension(1,1,1,1,1,1,*)' ; esac
|
||||
|
||||
output_303 MPI_Compare_and_swap ${rank} CH "character${dim}"
|
||||
output_303 MPI_Compare_and_swap ${rank} L "logical${dim}"
|
||||
for kind in $ikinds
|
||||
do
|
||||
output_303 MPI_Compare_and_swap ${rank} I${kind} "integer*${kind}${dim}"
|
||||
done
|
||||
for kind in $rkinds
|
||||
do
|
||||
output_303 MPI_Compare_and_swap ${rank} R${kind} "real*${kind}${dim}"
|
||||
done
|
||||
for kind in $ckinds
|
||||
do
|
||||
output_303 MPI_Compare_and_swap ${rank} C${kind} "complex*${kind}${dim}"
|
||||
done
|
||||
done
|
||||
end MPI_Compare_and_swap
|
||||
|
||||
#------------------------------------------------------------------------
|
||||
|
||||
output_304() {
|
||||
if test "$output" = "0"; then
|
||||
return 0
|
||||
fi
|
||||
|
||||
procedure=$1
|
||||
rank=$2
|
||||
type=$4
|
||||
proc="$1$2D$3"
|
||||
cat <<EOF
|
||||
|
||||
subroutine ${proc}(origin_addr, origin_count, origin_datatype, target_rank, target_disp, &
|
||||
target_count, target_datatype, win, request, ierror)
|
||||
include 'mpif-config.h'
|
||||
${type} :: origin_addr
|
||||
integer, intent(in) :: origin_count
|
||||
integer, intent(in) :: origin_datatype
|
||||
integer, intent(in) :: target_rank
|
||||
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
|
||||
integer, intent(in) :: target_count
|
||||
integer, intent(in) :: target_datatype
|
||||
integer, intent(in) :: win
|
||||
integer, intent(out) :: request
|
||||
integer, intent(out) :: ierror
|
||||
end subroutine ${proc}
|
||||
|
||||
EOF
|
||||
}
|
||||
|
||||
start MPI_Rget medium
|
||||
|
||||
for rank in $allranks
|
||||
do
|
||||
case "$rank" in 0) dim='' ; esac
|
||||
case "$rank" in 1) dim=', dimension(*)' ; esac
|
||||
case "$rank" in 2) dim=', dimension(1,*)' ; esac
|
||||
case "$rank" in 3) dim=', dimension(1,1,*)' ; esac
|
||||
case "$rank" in 4) dim=', dimension(1,1,1,*)' ; esac
|
||||
case "$rank" in 5) dim=', dimension(1,1,1,1,*)' ; esac
|
||||
case "$rank" in 6) dim=', dimension(1,1,1,1,1,*)' ; esac
|
||||
case "$rank" in 7) dim=', dimension(1,1,1,1,1,1,*)' ; esac
|
||||
|
||||
output_304 MPI_Rget ${rank} CH "character${dim}"
|
||||
output_304 MPI_Rget ${rank} L "logical${dim}"
|
||||
for kind in $ikinds
|
||||
do
|
||||
output_304 MPI_Rget ${rank} I${kind} "integer*${kind}${dim}"
|
||||
done
|
||||
for kind in $rkinds
|
||||
do
|
||||
output_304 MPI_Rget ${rank} R${kind} "real*${kind}${dim}"
|
||||
done
|
||||
for kind in $ckinds
|
||||
do
|
||||
output_304 MPI_Rget ${rank} C${kind} "complex*${kind}${dim}"
|
||||
done
|
||||
done
|
||||
end MPI_Rget
|
||||
|
||||
#------------------------------------------------------------------------
|
||||
|
||||
output_305() {
|
||||
if test "$output" = "0"; then
|
||||
return 0
|
||||
fi
|
||||
|
||||
procedure=$1
|
||||
rank=$2
|
||||
type=$4
|
||||
proc="$1$2D$3"
|
||||
cat <<EOF
|
||||
|
||||
subroutine ${proc}(origin_addr, origin_count, origin_datatype, target_rank, target_disp, &
|
||||
target_count, target_datatype, win, request, ierror)
|
||||
include 'mpif-config.h'
|
||||
${type}, intent(in) :: origin_addr
|
||||
integer, intent(in) :: origin_count
|
||||
integer, intent(in) :: origin_datatype
|
||||
integer, intent(in) :: target_rank
|
||||
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
|
||||
integer, intent(in) :: target_count
|
||||
integer, intent(in) :: target_datatype
|
||||
integer, intent(in) :: win
|
||||
integer, intent(out) :: request
|
||||
integer, intent(out) :: ierror
|
||||
end subroutine ${proc}
|
||||
|
||||
EOF
|
||||
}
|
||||
|
||||
start MPI_Rput medium
|
||||
|
||||
for rank in $allranks
|
||||
do
|
||||
case "$rank" in 0) dim='' ; esac
|
||||
case "$rank" in 1) dim=', dimension(*)' ; esac
|
||||
case "$rank" in 2) dim=', dimension(1,*)' ; esac
|
||||
case "$rank" in 3) dim=', dimension(1,1,*)' ; esac
|
||||
case "$rank" in 4) dim=', dimension(1,1,1,*)' ; esac
|
||||
case "$rank" in 5) dim=', dimension(1,1,1,1,*)' ; esac
|
||||
case "$rank" in 6) dim=', dimension(1,1,1,1,1,*)' ; esac
|
||||
case "$rank" in 7) dim=', dimension(1,1,1,1,1,1,*)' ; esac
|
||||
|
||||
output_305 MPI_Rput ${rank} CH "character${dim}"
|
||||
output_305 MPI_Rput ${rank} L "logical${dim}"
|
||||
for kind in $ikinds
|
||||
do
|
||||
output_305 MPI_Rput ${rank} I${kind} "integer*${kind}${dim}"
|
||||
done
|
||||
for kind in $rkinds
|
||||
do
|
||||
output_305 MPI_Rput ${rank} R${kind} "real*${kind}${dim}"
|
||||
done
|
||||
for kind in $ckinds
|
||||
do
|
||||
output_305 MPI_Rput ${rank} C${kind} "complex*${kind}${dim}"
|
||||
done
|
||||
done
|
||||
end MPI_Rput
|
||||
|
||||
#------------------------------------------------------------------------
|
||||
|
||||
output_306() {
|
||||
if test "$output" = "0"; then
|
||||
return 0
|
||||
fi
|
||||
|
||||
procedure=$1
|
||||
rank=$2
|
||||
type=$4
|
||||
proc="$1$2D$3"
|
||||
cat <<EOF
|
||||
|
||||
subroutine ${proc}(origin_addr, origin_count, origin_datatype, target_rank, target_disp, &
|
||||
target_count, target_datatype, op, win, request, ierror)
|
||||
include 'mpif-config.h'
|
||||
${type} :: origin_addr
|
||||
integer, intent(in) :: origin_count
|
||||
integer, intent(in) :: origin_datatype
|
||||
integer, intent(in) :: target_rank
|
||||
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
|
||||
integer, intent(in) :: target_count
|
||||
integer, intent(in) :: target_datatype
|
||||
integer, intent(in) :: op
|
||||
integer, intent(in) :: win
|
||||
integet, intent(out) :: request
|
||||
integer, intent(out) :: ierror
|
||||
end subroutine ${proc}
|
||||
|
||||
EOF
|
||||
}
|
||||
|
||||
start MPI_Raccumulate medium
|
||||
|
||||
for rank in $allranks
|
||||
do
|
||||
case "$rank" in 0) dim='' ; esac
|
||||
case "$rank" in 1) dim=', dimension(*)' ; esac
|
||||
case "$rank" in 2) dim=', dimension(1,*)' ; esac
|
||||
case "$rank" in 3) dim=', dimension(1,1,*)' ; esac
|
||||
case "$rank" in 4) dim=', dimension(1,1,1,*)' ; esac
|
||||
case "$rank" in 5) dim=', dimension(1,1,1,1,*)' ; esac
|
||||
case "$rank" in 6) dim=', dimension(1,1,1,1,1,*)' ; esac
|
||||
case "$rank" in 7) dim=', dimension(1,1,1,1,1,1,*)' ; esac
|
||||
|
||||
output_306 MPI_Raccumulate ${rank} CH "character${dim}"
|
||||
output_306 MPI_Raccumulate ${rank} L "logical${dim}"
|
||||
for kind in $ikinds
|
||||
do
|
||||
output_306 MPI_Raccumulate ${rank} I${kind} "integer*${kind}${dim}"
|
||||
done
|
||||
for kind in $rkinds
|
||||
do
|
||||
output_306 MPI_Raccumulate ${rank} R${kind} "real*${kind}${dim}"
|
||||
done
|
||||
for kind in $ckinds
|
||||
do
|
||||
output_306 MPI_Raccumulate ${rank} C${kind} "complex*${kind}${dim}"
|
||||
done
|
||||
done
|
||||
end MPI_Raccumulate
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user