KTH framework for Nek5000 toolboxes; testing version  0.0.1
comm_mpi.f File Reference

Go to the source code of this file.

Functions/Subroutines

subroutine setupcomm (comm, newcomm, newcommg, path_in, session_in)
 
subroutine iniproc ()
 
subroutine gop (x, w, op, n)
 
subroutine igop (x, w, op, n)
 
subroutine i8gop (x, w, op, n)
 
subroutine csend (mtype, buf, len, jnid, jpid)
 
subroutine crecv (mtype, buf, lenm)
 
subroutine crecv2 (mtype, buf, lenm, jnid)
 
subroutine crecv3 (mtype, buf, len, lenm)
 
integer function numnodes ()
 
integer function mynode ()
 
real *8 function dnekclock ()
 
real *8 function dnekclock_sync ()
 
subroutine lbcast (ifif)
 
subroutine bcast (buf, len)
 
subroutine create_comm (inewcomm)
 
function isend (msgtag, x, len, jnid, jpid)
 
function irecv (msgtag, x, len)
 
subroutine msgwait (imsg)
 
subroutine nekgsync ()
 
subroutine exittr (stringi, rdata, idata)
 
subroutine exitti (stringi, idata)
 
subroutine err_chk (ierr, string)
 
subroutine exitt0
 
subroutine exitt
 
subroutine print_runtime_info
 
subroutine nek_die (ierr)
 
subroutine fgslib_userexithandler (istatus)
 
subroutine printheader
 
function igl_running_sum (in)
 
subroutine platform_timer (ivb)
 
subroutine comm_test (ivb)
 
subroutine pingpong (alphas, betas, nodea, nodeb, dt, io, ivb, kk)
 
subroutine pingpongo (alphas, betas, nodea, nodeb, dt, io, ivb)
 
subroutine get_msg_vol (msg_vol, dt, nodea, nodeb)
 
subroutine gop_test (ivb)
 
subroutine gp2_test (ivb)
 
integer function xor (m, n)
 
subroutine gp2 (x, w, op, n, nid, np)
 
subroutine ping_loop1 (t1, t0, len, nloop, nodea, nodeb, nid, x, y)
 
subroutine ping_loop2 (t1, t0, len, nloop, nodea, nodeb, nid, x, y)
 
subroutine ping_loop (t1, t0, len, nloop, nodea, nodeb, nid, x1, y1, x2, y2)
 
integer *8 function i8gl_running_sum (in)
 
subroutine close_files
 
subroutine neknekgsync ()
 
subroutine setnekcomm (comm_in)
 

Function/Subroutine Documentation

◆ bcast()

subroutine bcast ( real*4, dimension(1)  buf,
  len 
)

Definition at line 430 of file comm_mpi.f.

References mpi_bcast().

+ Here is the call graph for this function:

◆ close_files()

subroutine close_files

Definition at line 1387 of file comm_mpi.f.

◆ comm_test()

subroutine comm_test (   ivb)

Definition at line 730 of file comm_mpi.f.

References gop_test(), gp2_test(), log2(), pingpong(), and pingpongo().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ create_comm()

subroutine create_comm (   inewcomm)

Definition at line 440 of file comm_mpi.f.

References mpi_comm_dup().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ crecv()

subroutine crecv (   mtype,
real*4, dimension(1)  buf,
  lenm 
)

Definition at line 312 of file comm_mpi.f.

References exitt(), and mpi_recv().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ crecv2()

subroutine crecv2 (   mtype,
real*4, dimension(1)  buf,
  lenm,
  jnid 
)

Definition at line 332 of file comm_mpi.f.

References exitt(), and mpi_recv().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ crecv3()

subroutine crecv3 (   mtype,
real*4, dimension(1)  buf,
  len,
  lenm 
)

Definition at line 351 of file comm_mpi.f.

References exitt(), mpi_get_count(), and mpi_recv().

+ Here is the call graph for this function:

◆ csend()

subroutine csend (   mtype,
real*4, dimension(1)  buf,
  len,
  jnid,
  jpid 
)

Definition at line 302 of file comm_mpi.f.

References mpi_send().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ dnekclock()

real*8 function dnekclock

Definition at line 392 of file comm_mpi.f.

References mpi_wtime().

+ Here is the call graph for this function:

◆ dnekclock_sync()

real*8 function dnekclock_sync

Definition at line 400 of file comm_mpi.f.

References mpi_wtime(), and nekgsync().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ err_chk()

subroutine err_chk (   ierr,
character*1, dimension(132)  string 
)

Definition at line 557 of file comm_mpi.f.

References blank(), chcopy(), exitt(), iglsum(), and indx1().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ exitt()

subroutine exitt

Definition at line 603 of file comm_mpi.f.

References nek_die().

+ Here is the call graph for this function:

◆ exitt0()

subroutine exitt0

Definition at line 585 of file comm_mpi.f.

References nek_die(), and print_runtime_info().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ exitti()

subroutine exitti ( character*1, dimension(132)  stringi,
  idata 
)

Definition at line 534 of file comm_mpi.f.

References blank(), chcopy(), exitt(), and indx1().

+ Here is the call graph for this function:

◆ exittr()

subroutine exittr ( character*1, dimension(132)  stringi,
  rdata,
  idata 
)

Definition at line 511 of file comm_mpi.f.

References blank(), chcopy(), exitt(), and indx1().

+ Here is the call graph for this function:

◆ fgslib_userexithandler()

subroutine fgslib_userexithandler (   istatus)

Definition at line 677 of file comm_mpi.f.

References exitt().

+ Here is the call graph for this function:

◆ get_msg_vol()

subroutine get_msg_vol (   msg_vol,
  dt,
  nodea,
  nodeb 
)

Definition at line 941 of file comm_mpi.f.

References crecv(), csend(), dnekclock(), gop(), irecv(), and msgwait().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gop()

subroutine gop ( real, dimension(n)  x,
real, dimension(n)  w,
character*3  op,
  n 
)

Definition at line 200 of file comm_mpi.f.

References copy(), dnekclock(), exitt(), mpi_allreduce(), and nekgsync().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gop_test()

subroutine gop_test (   ivb)

Definition at line 997 of file comm_mpi.f.

References cfill(), gop(), mpi_wtime(), and nekgsync().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gp2()

subroutine gp2 ( real, dimension(n)  x,
real, dimension(n)  w,
character*3  op,
  n,
  nid,
  np 
)

Definition at line 1142 of file comm_mpi.f.

References crecv(), and csend().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gp2_test()

subroutine gp2_test (   ivb)

Definition at line 1061 of file comm_mpi.f.

References gp2(), mpi_wtime(), and rzero().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ i8gl_running_sum()

integer*8 function i8gl_running_sum ( integer*8  in)

Definition at line 1368 of file comm_mpi.f.

References mpi_scan().

+ Here is the call graph for this function:

◆ i8gop()

subroutine i8gop ( integer*8, dimension(n)  x,
integer*8, dimension(n)  w,
character*3  op,
  n 
)

Definition at line 274 of file comm_mpi.f.

References exitt(), i8copy(), and mpi_allreduce().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ igl_running_sum()

function igl_running_sum (   in)

Definition at line 699 of file comm_mpi.f.

References mpi_scan().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ igop()

subroutine igop ( integer, dimension(n)  x,
integer, dimension(n)  w,
character*3  op,
  n 
)

Definition at line 246 of file comm_mpi.f.

References exitt(), icopy(), and mpi_allreduce().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ iniproc()

subroutine iniproc

Definition at line 137 of file comm_mpi.f.

References dnekclock(), exitti(), mpi_type_get_extent(), mynode(), numnodes(), and set_stdout.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ irecv()

function irecv (   msgtag,
integer, dimension(1)  x,
  len 
)

Definition at line 470 of file comm_mpi.f.

References mpi_irecv().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isend()

function isend (   msgtag,
integer, dimension(1)  x,
  len,
  jnid,
  jpid 
)

Definition at line 453 of file comm_mpi.f.

References mpi_isend().

+ Here is the call graph for this function:

◆ lbcast()

subroutine lbcast ( logical  ifif)

Definition at line 409 of file comm_mpi.f.

References bcast().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ msgwait()

subroutine msgwait (   imsg)

Definition at line 488 of file comm_mpi.f.

References mpi_wait().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ mynode()

integer function mynode

Definition at line 381 of file comm_mpi.f.

References mpi_comm_rank().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ nek_die()

subroutine nek_die (   ierr)

Definition at line 667 of file comm_mpi.f.

References cexit, and mpi_finalize().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ nekgsync()

subroutine nekgsync

Definition at line 501 of file comm_mpi.f.

References mpi_barrier().

+ Here is the call graph for this function:

◆ neknekgsync()

subroutine neknekgsync

Definition at line 1400 of file comm_mpi.f.

References mpi_barrier().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ numnodes()

integer function numnodes

Definition at line 372 of file comm_mpi.f.

References mpi_comm_size().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ping_loop()

subroutine ping_loop (   t1,
  t0,
  len,
  nloop,
  nodea,
  nodeb,
  nid,
real, dimension(1)  x1,
real, dimension(1)  y1,
real, dimension(1)  x2,
real, dimension(1)  y2 
)

Definition at line 1315 of file comm_mpi.f.

References mpi_irecv(), mpi_send(), mpi_wait(), mpi_wtime(), and nekgsync().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ping_loop1()

subroutine ping_loop1 (   t1,
  t0,
  len,
  nloop,
  nodea,
  nodeb,
  nid,
real, dimension(1)  x,
real, dimension(1)  y 
)

Definition at line 1219 of file comm_mpi.f.

References mpi_irecv(), mpi_send(), mpi_wait(), mpi_wtime(), msgwait(), and nekgsync().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ping_loop2()

subroutine ping_loop2 (   t1,
  t0,
  len,
  nloop,
  nodea,
  nodeb,
  nid,
real, dimension(1)  x,
real, dimension(1)  y 
)

Definition at line 1269 of file comm_mpi.f.

References mpi_irecv(), mpi_send(), mpi_wait(), mpi_wtime(), msgwait(), and nekgsync().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ pingpong()

subroutine pingpong (   alphas,
  betas,
  nodea,
  nodeb,
  dt,
  io,
  ivb,
  kk 
)

Definition at line 764 of file comm_mpi.f.

References get_msg_vol(), nekgsync(), ping_loop(), ping_loop1(), and ping_loop2().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ pingpongo()

subroutine pingpongo (   alphas,
  betas,
  nodea,
  nodeb,
  dt,
  io,
  ivb 
)

Definition at line 844 of file comm_mpi.f.

References crecv(), csend(), dnekclock(), get_msg_vol(), irecv(), mpi_irecv(), mpi_recv(), mpi_send(), mpi_wait(), mpi_wtime(), msgwait(), and nekgsync().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ platform_timer()

subroutine platform_timer (   ivb)

Definition at line 716 of file comm_mpi.f.

References comm_test(), and mxm_test_all().

+ Here is the call graph for this function:

◆ print_runtime_info()

subroutine print_runtime_info

Definition at line 622 of file comm_mpi.f.

References dnekclock_sync(), dnekgflops(), flush_io(), getmaxrss, and glsum().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ printheader()

subroutine printheader

Definition at line 684 of file comm_mpi.f.

+ Here is the caller graph for this function:

◆ setnekcomm()

subroutine setnekcomm ( integer  comm_in)

Definition at line 1410 of file comm_mpi.f.

References mpi_comm_size().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setupcomm()

subroutine setupcomm ( integer  comm,
integer  newcomm,
integer  newcommg,
character, dimension(*)  path_in,
character, dimension(*)  session_in 
)

Definition at line 2 of file comm_mpi.f.

References bcast(), blank(), chcopy(), err_chk(), exitt(), exitti(), ltrunc(), mpi_comm_dup(), mpi_comm_get_attr(), mpi_comm_rank(), mpi_comm_size(), mpi_comm_split(), mpi_init(), and mpi_initialized().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ xor()

integer function xor (   m,
  n 
)

Definition at line 1114 of file comm_mpi.f.