Directory CCA/Components/DataArchiver/

Total Files:
3
Deleted Files:
0
Lines of Code:
2824

[root]/CCA/Components/DataArchiver

Lines of Code

CCA/Components/DataArchiver/ Lines of Code

Developers

Author Changes Lines of Code Lines per Change
Totals 47 (100.0%) 1423 (100.0%) 30.2
dav 16 (34.0%) 761 (53.5%) 47.5
harman 20 (42.6%) 627 (44.1%) 31.3
ahumphrey 3 (6.4%) 15 (1.1%) 5.0
tsaad 2 (4.3%) 10 (0.7%) 5.0
jas 5 (10.6%) 9 (0.6%) 1.8
u0407585 1 (2.1%) 1 (0.1%) 1.0

Most Recent Commits

dav 2014-12-26 21:01 Rev.: 52897

Reverting code to r52880 before my memory use fix commit. While most tests passed, the ones using AMR and the dynamic load balancer were not passing and the weeds are too deep within them to quickly figure out what is causing the problems. Next week I will attempt to figure out what is going on with them. My guess is that it will take quite a bit of effort to understand the inner workings of the dynamic loadbalancer in order to get everything to work, so it may be quite a while before this fix may go in.

242 lines of code changed in 4 files:

  • CCA/Components/DataArchiver: DataArchiver.cc (+217 -251), DataArchiver.h (new)
dav 2014-12-23 00:29 Rev.: 52884

Hopefully this fixes errors from the previous larege memory use reduction commit.

M CCA/Components/SimulationController/SimulationController.cc

- I need to investigate the delete of the temporary data archive... Commenting it out for now.

M CCA/Components/DataArchiver/DataArchiver.cc

- White space clean up.
- Removed a releaseDocument() that should not have been there. (The release happens
automatically when the var goes out of scope.)

M Core/Grid/Grid.cc

- Handle periodic boundaries in the input xml file.

45 lines of code changed in 1 file:

  • CCA/Components/DataArchiver: DataArchiver.cc (+45 -43)
dav 2014-12-22 15:49 Rev.: 52882


This is the first commit (of what may be several over the next month or so) dealing with Uintah's excessive use
of memory with respect to its XML data structures (that are used for I/O) when running on thousands of patches.
This commit specificly addresses the excessive use of memory when restarting a simulation. Before this commit,
Uintah would read in a timestep.xml file (from the checkpoints/t00000/) directory and create an huge DOM
structure in memory. (On 8K patches on Vulcan (BGQ - LLNL) memory per process would increase by 100% (by
20 MB per process on the advect sample problem). On 30K patches, memory use of 200 MB or more has been observed.)
To solve this problem, instead of reading the XML into memory, we parse it on the fly and extract the data we need,
but do not save it. Note, there are two parts of the timestep.xml file that cause the memory issue: the 1000s of
<Grid> and <DataItem> tags. Small XML nodes are not a problem, and thus we still use them for some things (for
example, the component section read from the timestep.xml file. A full DOM of this node is created (during the
streaming read of the rest of the file) and this node is passed down to the component as before.

A number of changes in this commit are cosmetic, dealing with white space and coding standards, and were made
while I was digging through the code to understand where the memory issue was and how to fix it. To better
see real changes in the code, I highly suggest that you use a diff that ignores generic white space changes,
such as:

svn diff --diff-cmd diff --extensions -w <file_name>

Note,asIgetolderInolongercanreadtextlikethis,soIamaddingspacesintothecodetomakeit easier to see. :)

M CCA/Components/SimulationController/AMRSimulationController.cc

- Number of levels in a Grid (grid->numLevels()) cannot be negative and thus should be an unsigned int... it is now.
- Costmetic: English sentences start with capital letters and end with punctuation... yeah yeah I know.

M CCA/Components/SimulationController/SimulationController.cc

- queryGrid: pass through a pointer, don't create a new copy.
- Unsigned int for grid level number.
- Cosmetic white space/coding standards/English updates. Fixed some strange indentation. Untabify.

M CCA/Components/Parent/Switcher.cc

- Unsigned int for grid level number.
- Cosmetic: Swatted some evil endl's. :) (Why write 8 more characters of code, when 2 will do? And makes it easier to add to strings later...)

M CCA/Components/LoadBalancers/ParticleLoadBalancer.cc
M CCA/Components/LoadBalancers/ParticleLoadBalancer.h

- Updates to consolidate code in load balancers... Still needs some direct attention as opposed to this
first pass while working on something else.

M CCA/Components/LoadBalancers/SingleProcessorLoadBalancer.h

- Add 'do-nothing' implementation of restartInitialize() to this class.

M CCA/Components/LoadBalancers/CostModelForecaster.cc

- Cosmetic: Untabbify, white space, {} around one line ifs, English.

M CCA/Components/LoadBalancers/DynamicLoadBalancer.h
M CCA/Components/LoadBalancers/DynamicLoadBalancer.cc

- Moved restartInitialize() (and a number of supporting class d_ variables) into LoadBalancerCommon.
- Cosmetic: Line up variables, untabbify, white space, {} around one line ifs, English.

M CCA/Components/LoadBalancers/ProfileDriver.cc
M CCA/Components/LoadBalancers/CostModeler.h

- grid->numLevels() is now unsigned updates.
- Coding standard cleanups / English / white space.

M CCA/Components/LoadBalancers/LoadBalancerCommon.cc

- Cosmetic: Alphabetize/sort #includes, line up variables, untabbify, white space, {} around one line ifs, English.
- Make global DebugStream variables be less global (made static to file).
- Unsigned int for grid level number.
- Move restartInitialize() from DynamicLoadBalancer and ParticleLoadBalancer (code was exact duplicate in both files) here.

M CCA/Components/Solvers/AMR/AMRSolver.cc

- Cosmetic: White space, line up variables, English.
- Unsigned int for grid level number.

M CCA/Components/DataArchiver/DataArchiver.cc
M CCA/Components/DataArchiver/DataArchiver.h

- Comment added for where next XML memory fix should take place.
- Cosmetic: Alphabetize/sort #includes, line up variables, untabbify, white space, {} around one line ifs, English.

M CCA/Ports/ProblemSpecInterface.h
M CCA/Components/ProblemSpecification/ProblemSpecReader.h
M CCA/Components/ProblemSpecification/ProblemSpecReader.cc

- Created new version of readInputFile() which takes a list of patches that are specific to this processor. However,
I don't think anyone (me?) is using it yet, and I'm actually not convinced that it is the right function to fix
(see comments in code). I'm committing it just in case it turns out that we need it as we fix the rest of the
XML memory bloat issues. However, at that point if it turns out not to be useful, it should be removed.

M CCA/Components/Schedulers/TaskGraph.h
M CCA/Components/Schedulers/TaskGraph.cc

- Add some consistency to the member variable naming in this file. Half the variables use d_, and the other half
have a trailing _, and the third half ;) didn't do either one... sigh. Some examples.

lb -> d_lb
dts_ -> d_dts

- A few cosmetic fixes - variable line up, white space, etc.
- Removed var/matl from lb->getOldProcessorAssignment()... need to verify that this is correct... see above.

M CCA/Components/Schedulers/OnDemandDataWarehouse.cc

- Removed unused parameters to lb->getOldProcessorAssignment(). However, the DynamicLoadBalancer still uses the
version with parameters (though it doesn't really need them either). It is unclear why getOldProcessorAssignment()
is not declared in LoadBalancerCommon common or several of the other Load Balancers, and also unclear which function
is actually being called. This is defined in the LoadBalancer.h in CCA/Ports/. This needs more investigation.

M CCA/Components/Schedulers/DetailedTasks.h
M CCA/Components/Schedulers/DetailedTasks.cc

- Almost all cosmetic, white space, untabbify, lining up vars, English, etc changes.
- Add trailing _ to numPendingInternalDependencies to denote member var.

M CCA/Components/Schedulers/MPIScheduler.cc

- Few cosmetic cleanups.

M CCA/Components/Schedulers/SchedulerCommon.cc
M StandAlone/tools/pfs/rawToUniqueGrains.cc
M StandAlone/tools/puda/PIC.cc
M StandAlone/tools/extractors/extractV.cc
M StandAlone/tools/extractors/extractF.cc
M StandAlone/tools/extractors/partextract.cc
M StandAlone/partvarRange.cc
M StandAlone/tools/puda/jim1.cc
M StandAlone/tools/puda/jim3.cc
M StandAlone/tools/puda/varsummary.cc
M StandAlone/tools/puda/puda.cc
M StandAlone/tools/puda/POL.cc
M StandAlone/slb.cc

- Cosmetic white space fixes.
- numLevels() casts to avoid warnings.

M CCA/Components/Arches/Radiation/RadHypreSolver.cc

- Few cosmetic changes.

M CCA/Components/Regridder/RegridderCommon.cc
M CCA/Components/Regridder/SingleLevelRegridder.cc
M CCA/Components/Regridder/TiledRegridder.cc

- Cosmetic white space fixes.
- numLevels() casts to avoid warnings.

M CCA/Ports/Output.h

- Use const vars when possible.
- White space, English.

M CCA/Ports/LoadBalancer.h

- Cosmetic: Alphabetize/sort #includes, line up variables, untabbify, white space, {} around one line ifs, English.

M Core/OS/Dir.h
M Core/OS/Dir.cc
M Core/OS/Dir_boost.cc

- Use 'const' when variables don't change.
- Cosmetic: line up variables, untabbify, white space, {} around one line ifs, English.
- Don't use "std::" in half the file and not in the other half.

M Core/Grid/Patch.h
M Core/Grid/Patch.cc

- Cosmetic: Line up variables, untabbify, white space, {} around one line ifs, English.

M Core/Grid/Grid.h
M Core/Grid/Grid.cc

- Added readLevelsFromFile(), parseLevelFromFile(), and parseGridFromFile() to parse XML without creating a full DOM.
This provides a 50% memory decrease (per process) on Vulcan (LLNL-BGQ) for 8K processors when restarting the
advect problem. At some point in the future it might be nice to replace my (brute force - straightfoward -
assumes that the input xml file is very well behaved) approach with the streaming reader functions from the
lib xml library. This is not done at this point as it is unclear how well that library will fit into our use
case, how much time it will take to convert to, and the fact that we want to get this pushed out to the users asap.
- Cosmetic: Line up variables, untabbify, white space, {} around one line ifs, English, coding standards.
- numLevels is now an unsigned int.

M Core/Grid/Task.cc

- Cosmetic: Alphabetize/sort #includes, line up variables, untabbify, white space, {} around one line ifs, English.

M Core/Grid/SimulationState.h
M Core/Grid/SimulationState.cc

- Cosmetic: Alphabetize/sort #includes.

M Core/Grid/Level.h
M Core/Grid/Level.cc

- Returned patch from addPatch() is not used anywhere so remove the return type.
- Cosmetic: line up variables, untabbify, white space, {} around one line ifs, English.

M Core/Geometry/Vector.h
M Core/Geometry/Vector.cc

- Added the fromString() function.
- Cosmetic: Alphabetize/sort #includes.

M Core/Geometry/IntVector.h
M Core/Geometry/IntVector.cc

- Added the fromString() function.

M Core/Containers/HashTable.h

- Moved the call to first() into the constructor... Not quite sure what the reason for this is,
but everywhere a HashTable is created, "first()" is immediately called, so it makes sense
to just do it in once place instead of having to do it each time it is used.

D Core/Containers/StringUtil.cc
D Core/Containers/StringUtil.h
A + Core/Util/StringUtil.h
A + Core/Util/StringUtil.cc
M Core/Grid/SimulationTime.cc
M Core/Tracker/TrackerServer.cc
M Core/Persistent/Pstreams.cc
M Core/Persistent/Persistent.cc
M Core/Util/FileUtils.cc

- Moved StringUtil.* to Core/Util/ to all its use in other locations (higher up the build tree).

M Core/Containers/sub.mk

- Untabbify.

M Core/DataArchive/DataArchive.h
M Core/DataArchive/DataArchive.cc

- Rename variables so they are readable, eg: d_tsurl becomes d_ts_path_and_filename, d_tstimes becomes d_ts_times, etc.
- Change a few more functions to parse xml file data on the fly (instead of parsing DOMs), eg: queryEndiannessAndBits()
- Use NULL instead of 0.
- Pass strings as 'const &' instead of copying them every time.
- Cosmetic: Alphabetize/sort #includes, line up variables, untabbify, white space, {} around one line ifs, English.

M Core/ProblemSpec/ProblemSpec.h
M Core/ProblemSpec/ProblemSpec.cc

- Added constructor to take in a string buffer to create a new DOM from. (Use: stream parse an xml file and put the
needed pieces into a string, then turn only that information into a DOM.)
- Added routines to help in the stream parsing of an XML file: findBlock()
- checkForInputError() replaced.
- parseIntVector replaced with fromString() in respective files.

M Core/Util/DynamicLoader.cc

- Alphabetize #includes.

M Core/Util/sub.mk

- Alphabetize

A Core/Util/XMLUtils.h
A Core/Util/XMLUtils.cc

- Added new helper functions for parsing xml files on the fly.

M StandAlone/compare_uda.cc

- Cosmetic: Alphabetize/sort #includes, line up variables, untabbify, white space, {} around one line ifs, English.
- numLevels() is unsigned now.
- Bulletproofing - verify input args are actually directories.

M StandAlone/restart_merger.cc

- Minor cosmetic fixes.

M StandAlone/sus.cc

- Bulletproofing - catch case when user accidentally runs sus with a UDA and not a UPS.

239 lines of code changed in 2 files:

  • CCA/Components/DataArchiver: DataArchiver.cc (+211 -179), DataArchiver.h (+28 -25)
dav 2014-11-25 14:34 Rev.: 52760


This fix correctly creates the <restarts> block and places the
<restart ...> into it. I tested this and restarts from old UDAs
continue to work. I think only restart_merger uses the <restarts>
block anyway. Also, this has the benefit of keeping the history
of restarts on an UDA, as before it only showed the very last one.

3 lines of code changed in 1 file:

  • CCA/Components/DataArchiver: DataArchiver.cc (+3 -3)
dav 2014-10-14 16:38 Rev.: 52579

Needed to convert the ostringstream to a string...

3 lines of code changed in 1 file:

  • CCA/Components/DataArchiver: DataArchiver.cc (+3 -3)
dav 2014-10-14 15:19 Rev.: 52576


Two main fixes: Checkpointing (parsing of UPS file) fixed. Outputting
of correct SVN revision number for sus runs.

M Makefile.in
A + include/svn_info.h.template
D include/svn_info.h

Place accurate SVN information in svn_info.h each time 'make' is run.
This uses the 'svn info' command and populates the svn_info.h file
(bin/include/) using the svn_info.h.template file (src/include/).

M StandAlone/sub.mk

- sus.o depends on the svn_info.h file being created.

M CCA/Components/DataArchiver/DataArchiver.cc

- Fix checkpointing. Now both walltimeInterval and walltimeIntervalHours work.

- Updated the checkpointing code to try to open the checkpoint file
multiple times if the 'open' system call fails. This issues was
seen (at least) once on vulcan@llnl (bgq machine), and probably
occurred due to a file system glitch. It is likely that this 'fix'
will never be utilized, but it is there just in case.

29 lines of code changed in 1 file:

  • CCA/Components/DataArchiver: DataArchiver.cc (+29 -10)
dav 2014-10-03 16:14 Rev.: 52547

Fix walltimeStartHours too.

6 lines of code changed in 1 file:

  • CCA/Components/DataArchiver: DataArchiver.cc (+6 -6)
u0407585 2014-10-03 16:04 Rev.: 52546

made wallTimeInterval work again

1 lines of code changed in 1 file:

  • CCA/Components/DataArchiver: DataArchiver.cc (+1 -1)
dav 2014-10-02 16:56 Rev.: 52535

- Cleanups from Vulcan@LLNL. Mostly cosmetic, though a few real fixes
found while porting to BGQ machine.

- Replaced proc0thread0cerr with proc0cerr as proc0cerr is (now
specifically) defined to only print out from thread 0 of process 0.

M CCA/Components/SimulationController/AMRSimulationController.cc

- Cosmetic
- Alphabetize the #includes for better readability and to remove duplicates.
- Put the #ifdef USE_GPERFTOOLS around entire block, instead of having
it multiple times and leaving dead if statements around it.

M CCA/Components/SimulationController/SimulationController.cc

- Cosmetic: Fix indentation (use diff -b to better see differences.)

M CCA/Components/DataArchiver/DataArchiver.cc

- Added the ability to specify checkpoint time via hours (in addition to seconds).
- Cleaned up the code to make it more readable for parsing this
information from input file - ie, use variable names that correspond
to the data they hold.
- Commented out a few lines of code that didn't do anything.
- Indented for readability, lined up some variable assignments.

M CCA/Components/Arches/CompDynamicProcedure.cc

- Alphabetize the #includes for better readability and to remove duplicates.
- Replaced proc0thread0cerr with proc0cerr.

M CCA/Components/Arches/DQMOM.cc
M CCA/Components/Arches/PropertyModels/PropertyModelBase.h
M CCA/Components/Arches/IncDynamicProcedure.cc
M CCA/Components/Arches/Arches.cc

- Replaced proc0thread0cerr with proc0cerr.

M CCA/Components/Arches/ChemMix/ClassicTableInterface.cc

- Throw a ProblemSetupException as that is what the error is.

M Core/Exceptions/InvalidState.cc

- Propagate (user supplied) error message.

M Core/Grid/Patch.cc

- Whitespace cleanup for readability.

M Core/Grid/Grid.h

- Whitespace cleanup for readability.
- Parameter to setExtraCells() is now (explicitly) const.

M Core/Grid/Level.cc
M Core/Grid/Grid.cc

- Coding standard and whitespace cleanup.

M Core/Parallel/Parallel.h

- Updated proc0cout to handle threaded versions of Uintah. If in MPI
only mode, then only prints for proc 0. If in threaded mode, only
prints for proc 0 thread 0.
- Removed proc0thread0cout as now only proc0cout is needed.

M Core/Thread/ThreadPool.h

- Remove tabs, line up code.

M Core/Thread/Thread.h
M Core/Thread/Parallel.h
M testprograms/Thread/parallel.cc

- Added the ThreadNS namespace because there are two classes named
'Parallel' in Uintah, and the one in the new ThreadNS is only used
in a few locations and thus is easier to move into its own NS.

M StandAlone/inputs/UPS_SPEC/ups_spec.xml

- Added 'walltimeStartHours' and 'walltimeIntervalHours' (to augment the
version that uses just seconds).
- Lined up for better readability.

M tools/StackTrace/StackTrace.cc

- Fixes for the stack trace tool for machines that only provide symbol
numbers in their stack traces. However, unfortunately, this still
doesn't seem to provide a valid stack trace on Vulcan.

64 lines of code changed in 1 file:

  • CCA/Components/DataArchiver: DataArchiver.cc (+64 -52)
dav 2014-08-14 14:30 Rev.: 52305


All variables that do not change and member functions that do not
change class data should be made const. In this checkin, a number of
things passed into the Schedulers can be made const (the 'output' port
variable is the main one here).

Made a number of minor cleanups including whitespace, tab removal,
coding standard, etc.

M CCA/Components/DataArchiver/DataArchiver.h

- Clean up layout of functions.
- Make const all functions that don't chance the class' data.
- Remove superfluous ;s.

M CCA/Components/DataArchiver/DataArchiver.cc

- Add const to functions updated in .h file.
- Minor coding standard, white space, readability cleanups.

M CCA/Components/ReduceUda/UdaReducer.h
M CCA/Components/ReduceUda/UdaReducer.cc

- Line up variables for better readability.
- Pass strings as 'const &', instead of copying them.

M CCA/Components/Schedulers/SchedulerFactory.h
M CCA/Components/Schedulers/SchedulerFactory.cc
M CCA/Components/Schedulers/DynamicMPIScheduler.h
M CCA/Components/Schedulers/DynamicMPIScheduler.cc
M CCA/Components/Schedulers/SingleProcessorScheduler.h
M CCA/Components/Schedulers/SingleProcessorScheduler.cc
M CCA/Components/Schedulers/UnifiedScheduler.h
M CCA/Components/Schedulers/UnifiedScheduler.cc
M CCA/Components/Schedulers/MPIScheduler.h
M CCA/Components/Schedulers/MPIScheduler.cc
M CCA/Components/Schedulers/MessageLog.h
M CCA/Components/Schedulers/MessageLog.cc
M CCA/Components/Schedulers/SchedulerCommon.h
M CCA/Components/Schedulers/SchedulerCommon.cc

- Pass 'Output' port variable as const as it is not used to change the output.
- Line up variables for better readability, add some white space, remove spurious tabs.

M CCA/Ports/Output.h

- Add 'const' to all functions that don't change the class' data.
- White space / Readability

M StandAlone/sus.cc

- Clarify MAX_THREADS error message.

- It is unclear to me how the specification of number of threads and
<scheduler> work together... ie which one gets precedence. When I
figure it out, I will fix this further.

40 lines of code changed in 2 files:

  • CCA/Components/DataArchiver: DataArchiver.cc (+26 -15), DataArchiver.h (+14 -19)
harman 2014-07-09 14:52 Rev.: 52120

Removed weeds, includes to Models files.

0 lines of code changed in 1 file:

  • CCA/Components/DataArchiver: DataArchiver.cc (-2)
tsaad 2014-07-07 13:17 Rev.: 52107

Allow users to propagate the name of the particle position variable throughout the uda archive so that Visit can parse that information and properly visualize particles. Note that this is 100% backwards compatible with the current standard of using p.x as the particle position variable. To accomplish this, an optional uintah-level <ParticlePosision> spec has been added. That spec is propagated through the dataArchiver so that visit can pick it up. If the user does NOT provide <ParticlePosition> then things default to p.x (the current standard). Note that Visit is not yet ready for this change because it current uses an older version of Uintah. Once a new version of Uintah is released, the appropriate change will be pushed to Visit and you will be free to use whatever varlabel you like for particle position.

10 lines of code changed in 2 files:

  • CCA/Components/DataArchiver: DataArchiver.cc (+8), DataArchiver.h (+2)
jas 2014-06-11 21:20 Rev.: 51968

Add pidx to sub.mk files.

6 lines of code changed in 2 files:

  • CCA/Components/DataArchiver: sub.mk (+6)
ahumphrey 2014-05-15 14:21 Rev.: 51840

Excise last bits of Windows support from src/CCA

4 lines of code changed in 1 file:

  • CCA/Components/DataArchiver: DataArchiver.cc (+4 -19)
ahumphrey 2014-04-26 21:04 Rev.: 51782

Backout r51776 changes.

4 lines of code changed in 1 file:

  • CCA/Components/DataArchiver: DataArchiver.cc (+4 -7)
ahumphrey 2014-04-26 12:22 Rev.: 51776

Add per-level support for maxGhostCells.
- Added copious amounts of { }, formatting and whitespace.

7 lines of code changed in 1 file:

  • CCA/Components/DataArchiver: DataArchiver.cc (+7 -4)
dav 2014-04-22 13:22 Rev.: 51762


M DataArchiver/DataArchiver.cc

Commit a 'hack' to fix a bug in some file systems. Some file systems
return successfully from 'mkdir' even though they have not yet
actually made the directory (I assume they have cached the call and
will take care of it whenever they feel like it). This causes the
subsequent creation of the sub directory to fail, even though when you
go and look at the file system, the directory is there. This is
because it 'eventually' (milliseconds later) is created, just not in
time for the making of the sub directory.

This hack puts the directory creation in a loop and will try 500 times
in a row to make the directory before it gives up and throws the exception.
During actual runs, the 2nd time 'mkdir' (createSubdir()) is called it
works. Also, as a note, on a 1000 processor run, it looks like only one
or two processors run into this problem (though it is never the same
processors).

Currently there are debug statements left in the code that will report
how many times "mkdir" was called before it succeeded (if more than 1)...
Note, though, that in almost all cases, nothing is printed out as
success happens with the 1st call.

63 lines of code changed in 1 file:

  • CCA/Components/DataArchiver: DataArchiver.cc (+63 -23)
dav 2014-04-15 14:19 Rev.: 51741


Updates to allow for a (almost) clean configure/build on LLNL's BGQ Vulcan machine.

M configure.ac
M configure

- Various cleanups.
- Added --with-essl so you have to explicitly ask for it (previously configure
tried to find it for you on certain machines).
- Removed stray 'echo'.
- Added test to determine if we are running on a BGQ machine.
- Don't use 'type' to find an executable, use 'which' instead.
'type' doesn't always behave the way one would expect.
- Allow for using the mpigcc compiler directly.
- Fix the specification of FORTRAN_UNDERSCORE for xlf.
- Use a .d for depend files on BGQ machines.
- If compiling on a BGQ, then use -lmass instead of -lm for the math library.
- Removed test for PNG (we don't need/use/support it anymore).
PNG was need for NRRD support at one point.
- Removed test for MPEG (Fairly sure this was only needed for SCIRun).
- Allow for --with-mpi=built-in (Ie, using mpigcc compilers)
We originally didn't like using mpiCC compilers as they never quite
worked with configure. However, it appears that a lot of work as been
done over the years making them work better. Also, at LLNL, there are
so many paths that are needed (and separate libraries) for MPI support
that it is just easier to allow the mpigcc compiler to provide them.
- Update the --with-mpi check to loop over possible libraries instead of
having to hard code every possible test in a separate SCI_TRY_LINK.
- Fix --with-petsc so that if you give it an invalid dir, it let's you know.
- Add magic PETSc compiler flags for BGQ as we are using the gcc compiler
but PETSc was compiled with xlc...

M configVars.mk.in

- Add IS_BGQ flag.
- Remove PNG and MPEG references.
- Hack: Add in PETSc flags for xlc petsc use with gcc.
- Make a few HAVE_lib/lib_INCLUDE/lib_LIBRARY sections be laid out consistently.
- Don't put @flag@ in the INCLUDES variable... make a stand-alone var for them
and use them the way all the other vars are used.
- Move the specification of the CORE_STATIC_LIBS to after the specification of
the F_LIBRARY (fortran library) as they need to reference it.

M aclocal.m4

- Renamed 'debugging' flag to 'verbose'.
- Remove RPATH from the link line when linking statically.

M Makefile.in

- Make 'cleanreally' remove all libs (lib/*.so lib/*.a lib/*.dylib) in
addition to all .o files.

M build_scripts/so_epilogue.mk

- No real changes, just indentation so it is readable...

M StandAlone/sub.mk

- Remove unwanted tabs, add whitespace to make more readable.

M StandAlone/tools/puda/sub.mk

- Add Core/Datatypes to the list of required static libs for linking.

M include/sci_defs/error_testdefs.h.in

- Added in a #if check that allows an individual file to override
the SCI_ASSERTION_LEVEL. This is required (at least for now)
because on Vulcan (BGQ), if assertions are off, then the Datatypes.cc
file causes a run time segfault (in both debug and optimized
builds). However, if assertions are turned on for this one file,
then it runs correctly. Still need to dig into what is going on...

M CCA/Components/Models/Radiation/sub.mk

- Needed INCLUDE flags should be specified for each library.

M CCA/Components/MPM/ConstitutiveModel/fortran/sub.mk

- Some of the fortran flags that are hard coded for this library
are not valid on the BGQ machine.

M CCA/Components/MPMArches/fortran/param4.h
M CCA/Components/Models/Radiation/fortran/m_param4.h
M CCA/Components/Arches/fortran/param4.h

- Remove C style comments as they don't compile using xlf on Vulcan.

M CCA/Components/MPM/ConstitutiveModel/fortran/MIGUtils.cc

- Add some magic macro hackiness to fix symbol names (dealing with
fortran underscores) instead of hard coding them.

M CCA/Components/DataArchiver/DataArchiver.cc

- Fix spacing/whitespace issues.
- Check for BGQ and if so, don't use fdatasync() as it is not implemented.

M Core/OS/Dir_boost.cc

- Newest ? boost uses boost:filesystem3, so we need to check and use the
correct namespace.

M Core/Math/sci_lapack.cc

- Add some magic macro hackiness to fix symbol names (dealing with
fortran underscores) instead of hard coding them.
- Add warning messages if lapacksvd is called but the code path is
not implemented...

M Core/Datatypes/Matrix.h
M Core/Datatypes/SearchGrid.h
M Core/Datatypes/Datatype.h
M Core/Datatypes/Color.h
M Core/Datatypes/TypeName.h
M Core/Datatypes/NrrdData.h
M Core/Datatypes/String.h
M Core/Datatypes/MatrixOperations.h
M Core/Datatypes/DenseColMajMatrix.h
M Core/Datatypes/SparseRowMatrix.h
M Core/Datatypes/PropertyManager.h
M Core/Datatypes/DenseMatrix.cc
M Core/Datatypes/Image.h
M Core/Datatypes/ColumnMatrix.h
M Core/Datatypes/DenseMatrix.h

- share.h has been removed (Windows dll thing)... Therefore remove
(now) meaningly SCISHARE.

M Core/Malloc/malloc.cc

- If DISABLE_SCI_MALLOC is not defined, then we should not be prototyping
malloc(), free(), etc.

27 lines of code changed in 1 file:

  • CCA/Components/DataArchiver: DataArchiver.cc (+27 -22)
harman 2014-03-14 16:54 Rev.: 51652

added {} to conditionals
reduceUdaSetup()
--remove the file (checkpoint/index.xml) before copying the checkpoint directory to the new uda.
That file is created upstream when it shouldn't be.

6 lines of code changed in 1 file:

  • CCA/Components/DataArchiver: DataArchiver.cc (+6 -2)
harman 2014-03-07 17:31 Rev.: 51620

reduceUdaSetup()
- set the next checkpoint timestep = SHRT_MAX
This will fix the checkpoint/index.xml overwrite bug when using reduceUda.

2 lines of code changed in 1 file:

  • CCA/Components/DataArchiver: DataArchiver.cc (+2)
harman 2014-02-10 15:41 Rev.: 51541

DataArchiver.cc
- reduceUdaSetup()
set d_outputInitTimestep = true;

DataArchive.cc/.h
- changed createdVarLabels_ -> d_createdVarLabels

- added method reduceUda_ReadUda(). This is a specialization of restartInitialize()
and is used by reduceUda to read variables from the uda and put them into the
DW.

UdaReducer.cc/h
- more descriptive task name computeLabels -> readDataArchive.

* Now works on bigger udas and a smaller number of procs.

7 lines of code changed in 1 file:

  • CCA/Components/DataArchiver: DataArchiver.cc (+7 -2)
harman 2014-02-06 11:09 Rev.: 51530

DataArchiver.cc
reduceUdaSetup()
- use Dir::copy() instead of copyFile(). On large machines (mira)
only a subset of system calls are available. The work around is to use Dir::copy()
and enable boost.

UdaReducer.cc
- added addtional user warning about configuring with boost.


5 lines of code changed in 1 file:

  • CCA/Components/DataArchiver: DataArchiver.cc (+5 -7)
harman 2014-02-05 12:45 Rev.: 51528

reduceUda:
- only copy checkpoint directories if they exist.
- added warning. Only only 1 core is used
during the copy and it could be really slow on big checkpoint directories.

8 lines of code changed in 1 file:

  • CCA/Components/DataArchiver: DataArchiver.cc (+8 -5)
harman 2014-01-29 11:20 Rev.: 51514

DataArchiver.cc
- reduceUdaSetup()
Just use a plain copy for coping the checkpoints.
Now copying the original ups and input.xml.org files

-beginOutputTimestep()
fixed compiler warning

- copy_outputProblemSpec()
cleaned up output statement

AMRSimulationController.cc
- run() inside reduceUda conditional block
setting the intital physical time from reduceUda

Dir.cc
- getFilenamesBySuffix()
comment out cout statement

UdaReducer.cc
- polished, added comments, cleaned up user output

- added user message

- initialize()
set delt = 0. You must have this if outputInitTimestep was used.

- computeLabels()
removed code that will never be used.

- deleted finalizeTimestep related code. It's not needed

- needRecompile()
recompile the taskgraph every timestep. The saved variable list
and the number of matls could change from timestep to timestep.

reduce_uda is in final testing phase. All initial tests show that it's working.

23 lines of code changed in 1 file:

  • CCA/Components/DataArchiver: DataArchiver.cc (+23 -13)
harman 2014-01-28 13:18 Rev.: 51513

removed stray cout.

0 lines of code changed in 1 file:

  • CCA/Components/DataArchiver: DataArchiver.cc (-1)
harman 2014-01-28 12:48 Rev.: 51512

copySection()
- Slight generalization. Removed the hardcoded file name and use the name passed in.

copy_outputProblemSpec()
- added a method that copies the component's specifications to a new timestep.xml.

writeto_xml_files()
- Added call to copy_outputProblemSpec() if using reduceUda.

74 lines of code changed in 2 files:

  • CCA/Components/DataArchiver: DataArchiver.cc (+60 -30), DataArchiver.h (+14 -11)
harman 2014-01-27 16:36 Rev.: 51510

Stepping gently.

UdaReducer.cc
- updated debugstream messages.
- no longer setting the current top level timestep in the initialization task.

DataArchiever.cc/h
- created a map that is used only by reduceUda that holds what the directory timesteps are
and is keyed by the simulation timestep.

- added getTimestepTopLevel()
This returns the simulation timestep or if reduceUda is used a directory timestep.

- reduceUdaSetup()
created the global map that holds the directory timesteps

-makeTimestepDirs() & writeto_xml_files() & outputVariables()
use getTimestepTopLevel() for the timestep stamp.

75 lines of code changed in 2 files:

  • CCA/Components/DataArchiver: DataArchiver.cc (+66 -19), DataArchiver.h (+9)
harman 2014-01-24 11:51 Rev.: 51501

Overall:
Renamed functions and tasks to be more descriptive
Split big functions and tasks into smaller chunks of single purpose code where appropriate
Cleaned up the SCI_DEBUG output so you can now follow what is going on.
Note none of the logic was touched.

Specifics:

executedTimestep -> findNext_OutputCheckPoint_Timestep
-> writeto_xml_files


outputTimestep() -> makeTimestepDirs()

task:outputReduction -> outputReductionVars()

task:output -> task:outputVariables()

finalizeTimestep() -> finalizeTimestep + sched_allOutputTasks


174 lines of code changed in 2 files:

  • CCA/Components/DataArchiver: DataArchiver.cc (+140 -84), DataArchiver.h (+34 -23)
harman 2014-01-22 12:54 Rev.: 51487

Overall
Cleaning out combined_patches, reuse combinePatchSetup() & more heavy construction on reduceUda, details below.

sus.cc
- removed combine_patch option and related code.
- renamed doCombinePatches() -> setReduceUdaFlags()

Output.h
- alphabetize includes
- renamed doCombinePatches() -> setReduceUdaFlags()

SimulationController.h
- renamed doCombinePatches() -> setReduceUdaFlags()
- removed d_combinedPatches variable

SimulationController.cc
- renamed doCombinePatches() -> setReduceUdaFlags()
- remove d_combinedPatches variable
- cleaned up schizophrenic indentation
- using proc0cout instead of cout with conditional wrappers
- pulled reduceUda code from preGridSetup()

AMRSimulationController.cc
- removed d_combinePatches variable
- added d_timeinfo code from SimulationController to reduceUda conditional block


UdaReducer.cc/.h
- removed piles of code that failed for various reasons.

DataArchiver.h
- renamed doCombinePatches() -> setReduceUdaFlags()

DataArchiver.cc
-- renamed doCombinePatches() -> setReduceUdaFlags()
- cleaned up debugstream output so you can follow it.
- minor reformatting
- reduceUdaSetup()
- the entire checkpoints directory is now being copied to the new uda.


99 lines of code changed in 2 files:

  • CCA/Components/DataArchiver: DataArchiver.cc (+97 -65), DataArchiver.h (+2 -3)
jas 2014-01-16 00:47 Rev.: 51467

Updated copyright information.

3 lines of code changed in 3 files:

  • CCA/Components/DataArchiver: DataArchiver.cc (+1 -1), DataArchiver.h (+1 -1), sub.mk (+1 -1)
harman 2014-01-08 13:23 Rev.: 51443

outputTimestep()
removed commented out variables in the parameter list

- removed 80 columns wraps
- added vertical horizontal spaces
- add {}

67 lines of code changed in 2 files:

  • CCA/Components/DataArchiver: DataArchiver.cc (+63 -31), DataArchiver.h (+4 -3)
harman 2014-01-08 10:26 Rev.: 51442

No longer naming local saveItem class variables label_ or matlSet_

Now consistently using d_varname for global variables.

Cosmetics:
- removed some 80 column wraps
- added vertical and horizontal spaces
- added dividers between methods

87 lines of code changed in 2 files:

  • CCA/Components/DataArchiver: DataArchiver.cc (+75 -67), DataArchiver.h (+12 -11)
Generated by StatSVN 0.7.0