<p><b>duda</b> 2012-04-03 12:01:44 -0600 (Tue, 03 Apr 2012)</p><p>BRANCH COMMIT<br>
<br>
Add logic to initialize the new IO layer from the main framework module, and to use<br>
the new stream layer in the existing mpas_io_input and mpas_io_output modules.<br>
<br>
<br>
M Makefile<br>
M mpas_framework.F<br>
M mpas_io_output.F<br>
M mpas_io_input.F<br>
</p><hr noshade><pre><font color="gray">Modified: branches/omp_blocks/io/src/framework/Makefile
===================================================================
--- branches/omp_blocks/io/src/framework/Makefile        2012-04-03 01:05:22 UTC (rev 1742)
+++ branches/omp_blocks/io/src/framework/Makefile        2012-04-03 18:01:44 UTC (rev 1743)
@@ -29,7 +29,7 @@
framework: $(OBJS)
        ar -ru libframework.a $(OBJS)
-mpas_framework.o: mpas_dmpar.o mpas_io_input.o mpas_io_output.o mpas_grid_types.o mpas_configure.o mpas_timer.o
+mpas_framework.o: mpas_dmpar.o mpas_io_input.o mpas_io_output.o mpas_io.o mpas_grid_types.o mpas_configure.o mpas_timer.o
mpas_configure.o: mpas_dmpar.o
@@ -55,9 +55,9 @@
mpas_io_streams.o: mpas_attlist.o mpas_io.o
-mpas_io_input.o: mpas_grid_types.o mpas_dmpar.o mpas_block_decomp.o mpas_sort.o mpas_configure.o mpas_timekeeping.o $(ZOLTANOBJ)
+mpas_io_input.o: mpas_grid_types.o mpas_dmpar.o mpas_block_decomp.o mpas_sort.o mpas_configure.o mpas_timekeeping.o mpas_io_streams.o $(ZOLTANOBJ)
-mpas_io_output.o: mpas_grid_types.o mpas_dmpar.o mpas_sort.o mpas_configure.o
+mpas_io_output.o: mpas_grid_types.o mpas_dmpar.o mpas_sort.o mpas_configure.o mpas_io_streams.o
clean:
        $(RM) *.o *.mod *.f90 libframework.a
Modified: branches/omp_blocks/io/src/framework/mpas_framework.F
===================================================================
--- branches/omp_blocks/io/src/framework/mpas_framework.F        2012-04-03 01:05:22 UTC (rev 1742)
+++ branches/omp_blocks/io/src/framework/mpas_framework.F        2012-04-03 18:01:44 UTC (rev 1743)
@@ -7,6 +7,7 @@
use mpas_configure
use mpas_timer
use mpas_timekeeping
+ use mpas_io
contains
@@ -19,6 +20,9 @@
type (dm_info), pointer :: dminfo
type (domain_type), pointer :: domain
+ integer :: pio_num_iotasks
+ integer :: pio_stride
+
allocate(dminfo)
call mpas_dmpar_init(dminfo)
@@ -28,6 +32,13 @@
call mpas_timekeeping_init(config_calendar_type)
+ pio_num_iotasks = config_pio_num_iotasks
+ pio_stride = config_pio_stride
+ if (pio_num_iotasks == 0) then
+ pio_num_iotasks = domain % dminfo % nprocs
+ end if
+ call MPAS_io_init(dminfo, pio_num_iotasks, pio_stride)
+
end subroutine mpas_framework_init
@@ -38,6 +49,8 @@
type (dm_info), pointer :: dminfo
type (domain_type), pointer :: domain
+ call MPAS_io_finalize()
+
call mpas_deallocate_domain(domain)
call mpas_dmpar_finalize(dminfo)
Modified: branches/omp_blocks/io/src/framework/mpas_io_input.F
===================================================================
--- branches/omp_blocks/io/src/framework/mpas_io_input.F        2012-04-03 01:05:22 UTC (rev 1742)
+++ branches/omp_blocks/io/src/framework/mpas_io_input.F        2012-04-03 18:01:44 UTC (rev 1743)
@@ -6,6 +6,7 @@
use mpas_sort
use mpas_configure
use mpas_timekeeping
+ use mpas_io_streams
#ifdef HAVE_ZOLTAN
@@ -21,6 +22,8 @@
integer :: time
+ type (MPAS_Stream_type) :: io_stream
+
#include "io_input_obj_decls.inc"
end type io_input_object
Modified: branches/omp_blocks/io/src/framework/mpas_io_output.F
===================================================================
--- branches/omp_blocks/io/src/framework/mpas_io_output.F        2012-04-03 01:05:22 UTC (rev 1742)
+++ branches/omp_blocks/io/src/framework/mpas_io_output.F        2012-04-03 18:01:44 UTC (rev 1743)
@@ -4,6 +4,7 @@
use mpas_dmpar
use mpas_sort
use mpas_configure
+ use mpas_io_streams
integer, parameter :: OUTPUT = 1
integer, parameter :: RESTART = 2
@@ -12,10 +13,11 @@
type io_output_object
integer :: wr_ncid
character (len=1024) :: filename
+ integer :: stream
integer :: time
- integer :: stream
+ type (MPAS_Stream_type) :: io_stream
integer :: wrDimIDStrLen
#include "io_output_obj_decls.inc"
</font>
</pre>