Allow particle sets to exist prior to relocate. Previously particle sets did not exist for preRelocate variables in the newDW until after the relocate code was called. This causes unknown variable errors.
2 lines of code changed in 1 file:
Disabled some code which is no longer needed
3 lines of code changed in 1 file:
Added a count variable to the PSPatchMatlGhost structure. This variable is used to record how many times a particle set has been added/erased in the process of combining. Doing this allows us to avoid deleting particle sets that are still needed and will hopefully resolve the issues i've been seeing reguarding particle sendsets.
55 lines of code changed in 5 files:
Fix necessary link library list so make will complete under Mac OSX.
4 lines of code changed in 3 files:
Fix another particle sendset bug.
The root of these problems lie in the fact that dependencies are scheduled per variable and sendsets are created once for all variables. If you have tasks that share some variables but not all dependencies can combine in diffent ways. This causes sendsets to be deleted even though they are still needed by other dependencies.
The current fix for this is to ensure that dependencies combine consistantly. The current logic for combining dependences is the following:
First if a new dependency is completly included in another dependency then combine with the first one of those you find. If no dependencies completly include the new dependency then combine it with the first dependency that can be extended to include this dependency without increasing the amount of communication. If this cannot be done then create a new dependency.
This seems to fix the sendset!=old_dw assert (for now).
24 lines of code changed in 1 file:
Changes based on feedback from Scott Bardenhagen.
10 lines of code changed in 1 file:
Env var check for mpirun on UPDRAFT. Don't need -mpi anymore on this computer.
8 lines of code changed in 1 file:
Global:
-2 space indentation
-loops wrapped with {}
-conditional statements wrapped with with {}
-added vertical space to improve readability
-removed comments that point out the obvious
- clean up some of the includes.
0 lines of code changed in 10 files:
--with-hdf5 now compiles. (Don't know how to run it to test, but...) The #includes and libs are found correctly.
1 lines of code changed in 1 file:
Added show_env()... useful for testing.
0 lines of code changed in 4 files:
Fix compilation errors. I believe the without hdf5 is back to
compiling. Will test with-hdf5 soon.
M include/sci_defs/hdf5_testdefs.h.in
Only #include hdf5.h if hdf5 is configured.
M Packages/Uintah/CCA/Components/Arches/TabProps/BSpline.cc
M Packages/Uintah/CCA/Components/Arches/TabProps/BSpline.h
M Packages/Uintah/CCA/Components/Arches/TabProps/StateTable.cc
M Packages/Uintah/CCA/Components/Arches/TabProps/StateTable.h
- Fixed typo: #include sci_defs/hdf needs a '5'.
- We aren't turning off the 'entire' file with #if for hdf5, we are only
turning off the hdf5 parts.
- I believe that the only place I really need to print the 'hdf5' not
configured error message is in the BSpline base class constructor.
I believe everything calls that, so it is a good central place.
If this is not the case, talk to me and we can figure a better
way to do it.
- Don't use #ifndef NO_HDF5 as this is all handled inside the class.
This is mostly a semantic issue, but does make the .h file cleaner.
- Replaced generic exceptions with SCIRun class InternalError. If
this needs to be more specific so that it can be caught and handled,
we can look into something else.
- Place #includes in better order.
- Removed and added white space to make things more readable.
- A couple of coding standard updates.
- Added #if defined( HAVE_HDF5 ) to the specific places it is needed.
- Added in some "{}" for if statements (where they were missing) as I
came across them.
- It's ok to use "using namespace std" inside a .cc file.
M Packages/Uintah/CCA/Components/Arches/TabPropsTable.cc
- '|' is binary 'or'. '||' is boolean 'or'.
- Don't need 'this' inside a class' method. (Most of the time.)
(I don't think this is one of those times.)
- '=' is assignment, '==' is comparison. ;) (Ok, so the compiler caught this one for me. ;)
230 lines of code changed in 9 files:
Committing additional changes to TabProps table reader... sus is still not compiling, however. I'm going to work to fix this later.
29 lines of code changed in 6 files:
Updating header includes to be absolute
5 lines of code changed in 5 files:
adding one more (sub.mk) file
26 lines of code changed in 1 file:
Quick fix to sub.mk file
1 lines of code changed in 1 file:
Adding TabProps Table reader
3735 lines of code changed in 15 files:
Adding a high pressure version of the ElasticPlastic model. This
attempts to do a better job of accounting for energy in high rate
MPM simulations and uses an energy form of the MieGruneisen EOS.
This included adding an "energy" field to the PlasticityState.
4087 lines of code changed in 11 files:
Initial framework for in-simulation Uintah tracking system. Messages
will be sent from sus (from each and every process sus is using) to a
simulation tracking server. This will help track the state of
simulations and where/when they fail.
M Core/Util/Socket.h
- BOLD comment about important return condition. (Hopefully gets the
users attention.)
- Added info function.
M Core/Util/Socket.cc
Accept() should be using the new socket (I believe). (Note, I think
both the old and new socket (at this point) are the same, but
still...) Displays an error message if the accept'ance fails.
Implemented the getSocketInfo() function.
M Packages/Uintah/CCA/Components/SimulationController/sub.mk
- Use the tracker.
- Alphabetize. Led to removal of duplicate DataArchiver listing.
M Packages/Uintah/CCA/Components/SimulationController/AMRSimulationController.cc
- Start using the tracker. (Currently only tracks the beginning of each timestep.)
- Better ordering of #includes.
M Packages/Uintah/StandAlone/sub.mk
Use tracker.
A Packages/Uintah/StandAlone/tools/tracker
A Packages/Uintah/StandAlone/tools/tracker/sub.mk
A Packages/Uintah/StandAlone/tools/tracker/TrackerProgram.cc
Very basic simulation tracking server. Needs to be updated to handle
a threaded server library (which needs to be implemented soon, see below.)
M Packages/Uintah/StandAlone/tools/sub.mk
- Build tracker server.
- Untabify.
M Packages/Uintah/StandAlone/sus.cc
- Add '-track' option.
M Packages/Uintah/Core/sub.mk
Use tracker.
A Packages/Uintah/Core/Tracker
A Packages/Uintah/Core/Tracker/sub.mk
A Packages/Uintah/Core/Tracker/Tracker.cc
A Packages/Uintah/Core/Tracker/TrackerClient.h
A Packages/Uintah/Core/Tracker/Tracker.h
A Packages/Uintah/Core/Tracker/TrackerServer.cc
A Packages/Uintah/Core/Tracker/TrackerServer.h
A Packages/Uintah/Core/Tracker/TrackerClient.cc
Initial commit of tracker libraries (for server and client). Server
needs to be updated to use Threads (so that a server program can query
the server library to ask about status etc (without blocking).
Currently only a few messages are sent... most of the code needs to be
updated to send tracking messages.
600 lines of code changed in 22 files:
set default values for
setMicroSlipBcs = false
set_MMS_BCs = false
set_Sine_BCs = false
This will clean up valgrind report for ICE
0 lines of code changed in 2 files:
Eliminate a memory leak.
11 lines of code changed in 4 files:
Use delete [] for argument variables.
0 lines of code changed in 2 files:
Gobal: cleaned out #includes.
using proc0cout to prevent redundant messages being output on large parallel runs.
BoundaryCondition.cc:
Eliminated processorGroup from multiple function calls. It isn't used.
CO2RateSrc.cc:
Throw an exception if carbon_balance_es hasn't been specified in the ups file.
216 lines of code changed in 18 files:
Deleted Proc0Cout.cc/h
-added macro to Parallel.h
+#define proc0cout if(Parallel::getMPIRank()==0) cout
-Dav & Justin.
0 lines of code changed in 6 files:
Initialize some variables per valgrind warnings, and plug a memory leak in
the xml parsing.
3 lines of code changed in 4 files:
Use the proper memory deallocations.
2 lines of code changed in 3 files:
Use delete [] when freeing the arrays.
1 lines of code changed in 1 file:
Use delete [] when freeing the arrays.
1 lines of code changed in 1 file:
Delete d_arrayBCs before initializing if needed.
7 lines of code changed in 1 file:
-fbounds-check is now a default flag for gfortran
0 lines of code changed in 4 files:
Created a proc0cout which is used just like cout but only prints on
processor 0. (Note it is possible (probable) that you will try to...
proc0cout << something;
...but 'something' isn't a type that proc0cout knows how to handle.
In this case, you will need to update Proc0Cout.h/cc with the
appropriate (very basic, easy to copy) code.
M Grid/sub.mk
M Parallel/sub.mk
Added Proc0Cout files. Alphabetized.
M Parallel/Parallel.h
#includes Proc0Cout as a convenience.
A Grid/Proc0Cout.h
A Grid/Proc0Cout.cc
Proc0Cout is a singleton class used to reduce debug spew. (Note, it
happens to reside in Uintah/Grid (instead of, say, Uintah/Util)
because of circular dependency issues... and I didn't want to create a
whole new directory (to solve them) just for it.)
143 lines of code changed in 6 files:
Initialze boundary conditions when load balancing because of the needRecompile function.
9 lines of code changed in 1 file:
scalarSolver.cc
- spacing
ExtraScalarSolver.cc (buildLinearMatrix)
- using allocateTemporary(var,patch,gac,1) instead of allocate(low,high)
Should not change the answers
16 lines of code changed in 2 files:
calculateVelocityCoeff()
- changed iterators to prevent accessing data out of bounds.
15 lines of code changed in 1 file:
Updates so that you can (must) select the index.xml file inside of an
UDA directory (instead of having to manually create a "name.uda" file
in the UDA directory to click on).
- Replaced "uda" with "xml" in the udaReaderMTMD.xml file... Then ran
(found in the VisIt build dir) xml2info (which updated most of these
files).
- Note, in udaReaderMTMDCommonPluginInfo.C, I had to put back in the
full paths for #includ'ing the .h files.
- In testavtudaReaderMTMDFileFormat.C.in, I added code to verify that
the input file is indeed a <Uintah_DataArchive>. This check might
should be made a little more robust...
0 lines of code changed in 14 files:
(cosmetics) ...and the associated configure.
8 lines of code changed in 1 file:
cosmetics. configure itself to come soon.
9 lines of code changed in 1 file:
Use the clamping procedure from the Parametric branch.
0 lines of code changed in 2 files:
Clamp negative heat flux values for fit data that is predominantly in one
quadrant.
11 lines of code changed in 1 file:
Forgot this one too...
0 lines of code changed in 2 files:
Forgot this file earlier...
0 lines of code changed in 2 files:
Push myworld into MPMFlags so that Todd doesn't have to see so many
error messages.
0 lines of code changed in 10 files:
Allow boundary layers to override extra cells.
88 lines of code changed in 1 file:
Add -fbounds-check to debug builds using gfortran. (This time took care of all the branches that set gfortran flags.)
12 lines of code changed in 2 files:
Add -fbounds-check to debug builds using gfortran.
8 lines of code changed in 2 files:
Add names to each build step.
78 lines of code changed in 1 file:
New mix/rxn model interface. This will require that user tag variables in the input file that should be populated from the table.
This is not turned on yet so it shouldn't affect the answers.
170 lines of code changed in 2 files:
Output the amount of compression used in the sus spew.
0 lines of code changed in 2 files:
cleaned out #includes
0 lines of code changed in 1 file:
Add cstring header.
1 lines of code changed in 1 file:
M configure.ac
M configure
- Requiring autoconf version 2.61 as 2.59 and 2.61 seem to be common
and I'd like us to avoid bouncing back and forth between the two (as
it makes the 'diff' seem huge, when it reality the changes in
configure.ac are not.) I think 2.61 is on enough machines that you
will be able to find one if you need to. Note, 2.61 is on the new
desktops that we just got (eg, blaze.sci.utah.edu).
- Removed some left over to-dos from the VisIt stuff. (FYI, these are
done in the sub.mk file.)
- Some MPIs need to link vs the fortran lib.
- Some Blas's need to link vs the math library.
15 lines of code changed in 2 files:
Handle multiple number input types (eg: [0,1]). Note, I'd like to start having sus fail soon if a .ups doesn't parse...
60 lines of code changed in 1 file:
Remind the user that no data will be save when no variables are specified in the DataArchive section of the .ups.
7 lines of code changed in 1 file:
sub.mk: Use absolute srctop. .h file: If you use 'string', you need to include it. (Dav)
0 lines of code changed in 4 files:
Cleanup VisIt stuff if 'make cleanreally'
1 lines of code changed in 1 file:
Fix for creation of the .C file from the test.C.in file. Add comments to make it a little more clear what is going on.
20 lines of code changed in 1 file:
modifyVelMassSource()
- converted iterators to new patch spec.
- cleaned out unused variables in prototype
- replaced fortran code with templated function
calculateVelMMSSource()
- deleted code that essentially did nothing.
This should not change the answers
82 lines of code changed in 7 files:
Use the return value from compare_uda to determine success or failure.
0 lines of code changed in 2 files:
Fixed a segfault
0 lines of code changed in 2 files:
If uncompression fails with Z_DATA_ERROR assume the message was not compressed and continue.
This occurs when a message that is smaller than the buffer is not compressed and is sent.
The buffer is smaller because MPI_Pack_size returns an upper bound and not the actual size.
8 lines of code changed in 1 file:
Fix for memory leaks
13 lines of code changed in 2 files:
Do not pack/unpack zero sized messages. Packing 0 sized messages increases the size of the send buffers. This should reduce communication.
Do not send 0 sized messages. There is no reason to send a message that has no data. Doing so only creates a syncronization point.
Since 0 sized messages are no longer being sent I have undone the zero sized compression check.
58 lines of code changed in 2 files:
don't compress/uncompress 0 length messages. These messages should be caught and not sent via MPI as they serve no purpose other than to slow things down.
7 lines of code changed in 1 file:
Updated error metrics output for cost profiling.
0 lines of code changed in 2 files:
Added more descriptive error messages when compression fails.
41 lines of code changed in 1 file:
Remove commented out code.
0 lines of code changed in 2 files:
Add VisIt target to uintah target
11 lines of code changed in 1 file:
Probably need this file too...
9 lines of code changed in 1 file:
Enabled gzip message compression for messages sent via the task graph.
By default this is disabled until some large scale testing and parameter studies can be performed.
To enable add this to your input file:
<Scheduler>
<compressionLevel>5</compressionLevel>
<compressionThreshold>50</compressionThreshold>
</Scheduler>
compressionLevel specifies the gzip compression level which ranges from 0 (no compression) to 9 (maximum compression)
compressionThreshold specifies the threshold for message size in bytes in which message compression will be attempted. That is any messages that are of size <=compressionThreshold will not be compressed.
88 lines of code changed in 10 files:
Added the mpi status to donesome.
9 lines of code changed in 2 files:
Removed some unnessary code.
1 lines of code changed in 1 file:
Fix memory leak.
0 lines of code changed in 2 files:
Removed a now unnecessary Allgather.
5 lines of code changed in 1 file:
Removed the blocked merging operation. The SFC code is now much simpler, easier to understand, easier to debug, and easier to maintain.
The optimizations obscured the code and had little to no effect on performance because they would only be useful if we had 3000+ patches per processor (something that will never happen).
0 lines of code changed in 2 files:
Removed the sample merging. This is part of the simplification process for this code.
8 lines of code changed in 1 file:
removed check for gnu grep. I'm assuming that it's installed.
0 lines of code changed in 2 files:
no longer used.
0 lines of code changed in 1 file:
Missed a header
2 lines of code changed in 1 file:
A few more EdgeIterator Options
25 lines of code changed in 1 file:
computemmMomentumSource()
- convertion to new patch iterators
- removed fortran code to add su to src.
34 lines of code changed in 5 files:
Added a script to run multiple parallel uda2nrrd jobs. Use Thread::exitAll() so that the exit code is correctly passed out of uda2nrrd.
162 lines of code changed in 3 files:
calculateVelDiagonal()
- conversion to new patch iterators
- added new templated function to compute AP for
StencilMatrix<SFC*Variable<double>>
This will not change the answers
43 lines of code changed in 2 files:
Added some more functionality to the getEdgeCellIterator function.
107 lines of code changed in 4 files:
calculateVelocityCoeff()
- conversion to new patch iterators
This should not change the answers
8 lines of code changed in 1 file:
Use the boundary condition framework. The answers will change due to
differences in edge node values.
88 lines of code changed in 7 files:
Add capabilities for axi-symmetric calculations with most material models.
257 lines of code changed in 29 files:
Simplifying the merge-exchange operation.
459 lines of code changed in 1 file:
Updated the test program.
0 lines of code changed in 3 files:
Complete initial implementation of axi-symmetric MPM. Currently this
only works with the HypoElastic (hypo_elastic) material model, but
extension to the other models should be simple and will be forthcoming,
as will an example input file.
108 lines of code changed in 9 files:
changed:
patch::faceAxes() -> patch::getFaceAxes()
to be consistent with getFaceDirection()
42 lines of code changed in 29 files:
averageRKHatVelocities()
- now using new patch interface for iterators.
The face velocities are now interpolated on all faces, include those
on the extra cells, in the main routine. The section of code that
applies the BC can overwrite this.
The answers should not change.
213 lines of code changed in 1 file:
updates to the stacktrace script on ranger
0 lines of code changed in 2 files:
updated
0 lines of code changed in 4 files:
Add axisymmetric flag, also put the AMR flag in the outputProblemSpec.
Axisymmetric MPM code to follow.
5 lines of code changed in 2 files:
added docs directory
- added illustration of staggard mesh
70 lines of code changed in 2 files: