SIONlib  1.7.1
Scalable I/O library for parallel access to task-local files
sion_fortran_writeread_mpi_f77.c
1 /****************************************************************************
2 ** SIONLIB http://www.fz-juelich.de/jsc/sionlib **
3 *****************************************************************************
4 ** Copyright (c) 2008-2016 **
5 ** Forschungszentrum Juelich, Juelich Supercomputing Centre **
6 ** **
7 ** See the file COPYRIGHT in the package base directory for details **
8 ****************************************************************************/
19 #include <stdio.h>
20 #include <stdlib.h>
21 #include <string.h>
22 
23 #include "mpi.h"
24 
25 #include "sion.h"
26 #include "sion_debug.h"
27 #include "sion_fd.h"
28 #include "sion_filedesc.h"
29 #include "sion_fortran_writeread_mpi_f77.h"
30 
31 #include "sion_mpi.h"
32 
33 #define DFUNCTION "fsion_coll_fwrite_mpi"
34 
49 void fsion_coll_fwrite_mpi(const void *data,
50  sion_int64 *size,
51  sion_int64 *nitems,
52  int *sid,
53  sion_int64 *rc)
54 {
55  DPRINTFP((1, DFUNCTION, -1, "enter size=%ld nitems=%ld\n",(long) *size, (long) *nitems));
56  (*rc) = (sion_int64) sion_coll_fwrite_mpi(data, (size_t) *size, (size_t) *nitems, *sid);
57  DPRINTFP((1, DFUNCTION, -1, "leave rc=%d\n",*rc));
58 }
59 #undef DFUNCTION
60 
61 
62 
78 void fsion_coll_fread_mpi(void *data,
79  sion_int64 *size,
80  sion_int64 *nitems,
81  int *sid,
82  sion_int64 *rc)
83 {
84  (*rc) = (sion_int64) sion_coll_fread_mpi(data, (size_t) *size, (size_t) *nitems, *sid);
85 }
86