File: Notes.doc

package info (click to toggle)
ga 5.9.2-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 18,472 kB
  • sloc: ansic: 192,963; fortran: 53,761; f90: 11,218; cpp: 5,784; makefile: 2,248; sh: 1,945; python: 1,734; perl: 534; csh: 134; asm: 106
file content (29 lines) | stat: -rw-r--r-- 1,259 bytes parent folder | download | duplicates (12)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
                      Disk Resident Arrays Implementation Notes

Assumptions:
. ANSI C compiler is not required;
. interface to C programs is minimal (most users program in Fortran)  
. low level I/O operations defined in ELIO library
. upper layer knows if they are called collectively or not

C Interface:
. C programs must use Integer and DoublePrecision data types,
  defined in "global.h" (GA package) for both the GA and DRA, and include
  file "dra.h";
. all arguments passed by address;
. names of DRA operations have capitalized DRA prefix i.e., C version of 
  Fortran dra_init is DRA_init. Note that the names are converted by cpp as 
  specified in "dra.h" so that in most cases, C and Fortran programs call 
  the same function. Internal convention is that there is a separate   
  Fortran wrapper to a DRA operation iff it has a character string 
  argument(s).
  
Implementation Status:
. prototyping used for DRA functions if ANSI C compiler available
. indexing arguments are currently implemented as integers 
. reshaping and transposing in dra_[write,read]_section not implemented yet


Problems to Resolve:
. do we need explicit dra_flush or we should handle it implicitly after
  each write when file is create in 'read+write' in  mode ?