Directory CCA/Components/MPM/

Total Files:
29
Deleted Files:
0
Lines of Code:
23827

[root]/CCA/Components/MPM
                directory in repo CohesiveZone (5 files, 805 lines)
                directory in repo ConstitutiveModel (73 files, 46406 lines)
                    directory in repo Biswajit (9 files, 8699 lines)
                        directory in repo ElasticityModels (30 files, 2526 lines)
                        directory in repo Models (53 files, 8571 lines)
                    directory in repo PlasticityModels (126 files, 17380 lines)
                    directory in repo PortableTongeRamesh (2 files, 1620 lines)
                        directory in repo TongeRameshPTRCalcs (3 files, 4469 lines)
                    directory in repo UnusedCM (39 files, 24516 lines)
                    directory in repo fortran (5 files, 1748 lines)
                directory in repo Contact (21 files, 3884 lines)
                directory in repo Crack (29 files, 10513 lines)
                Folder removed from repo FluxBC (0 files, 0 lines)
                directory in repo HeatConduction (5 files, 1641 lines)
                directory in repo MMS (3 files, 424 lines)
                directory in repo ParticleCreator (11 files, 2234 lines)
                directory in repo PhysicalBC (25 files, 3141 lines)
                directory in repo ReactionDiffusion (5 files, 269 lines)
                    directory in repo ConductivityModels (7 files, 260 lines)
                    directory in repo DiffusionInterfaces (5 files, 260 lines)
                    directory in repo DiffusionModels (13 files, 1675 lines)
                directory in repo ThermalContact (9 files, 735 lines)

Lines of Code

CCA/Components/MPM/ Lines of Code

Developers

Author Changes Lines of Code Lines per Change
Totals 171 (100.0%) 2526 (100.0%) 14.7
guilkey 59 (34.5%) 1661 (65.8%) 28.1
harman 5 (2.9%) 344 (13.6%) 68.8
cgritton 30 (17.5%) 248 (9.8%) 8.2
allen 11 (6.4%) 208 (8.2%) 18.9
jas 46 (26.9%) 29 (1.1%) 0.6
dav 5 (2.9%) 17 (0.7%) 3.4
ahumphrey 13 (7.6%) 14 (0.6%) 1.0
leavy 1 (0.6%) 3 (0.1%) 3.0
jbhooper 1 (0.6%) 2 (0.1%) 2.0

Most Recent Commits

guilkey 2016-12-24 14:15 Rev.: 56150

Padding my SVN stats before the end of the year. Also should be fixing the
failing regression tests which would pass without the -exact flag.

0 lines of code changed in 2 files:

  • CCA/Components/MPM: SerialMPM.cc (new)
guilkey 2016-12-23 17:55 Rev.: 56149

Making XPIC2 a run time option now. Use <XPIC2> true </XPIC2> in the MPM flags to invoke this option.

39 lines of code changed in 5 files:

  • CCA/Components/MPM: MPMFlags.cc (+4), MPMFlags.h (+1), SerialMPM.cc (+34 -17)
guilkey 2016-12-21 10:03 Rev.: 56128

Putting the option to not reset the grid back in for the implicit code. This should get part of the RT running again.

0 lines of code changed in 2 files:

  • CCA/Components/MPM: ImpMPM.cc (changed)
guilkey 2016-12-19 17:31 Rev.: 56123

Adding in the code for XPIC(2). Currently commented out until I make
this a run time configurable option.

244 lines of code changed in 3 files:

  • CCA/Components/MPM: SerialMPM.cc (+226 -25), SerialMPM.h (new)
guilkey 2016-12-19 17:05 Rev.: 56120

Pruning the "don't reset the grid option", not used in years, but responsible
for consuming trillions of floating point operations. Also cleaned up some
compiler warnings.

9 lines of code changed in 8 files:

  • CCA/Components/MPM: AMRMPM.cc (new), FractureMPM.cc (new), ImpMPM.cc (+2 -13), RigidMPM.cc (+1 -9), SerialMPM.cc (+1 -5)
guilkey 2016-12-17 17:56 Rev.: 56114

Fixed warnings, removed a slug of deprecated code related to the so-called
"momentum form" which never seemed to give better answers than the standard
form. Cleaning up to make way for code that might be more useful, XPIC(2).

7 lines of code changed in 4 files:

  • CCA/Components/MPM: MPMFlags.cc (-4), MPMFlags.h (-1), SerialMPM.cc (+7 -625), SerialMPM.h (-38)
jbhooper 2016-12-14 12:39 Rev.: 56104

Rework the reaction/diffusion component to:

1) More clearly dilineate which code file does what
2) Implement a standardized ScalarDiffusionModel interface (not to be confused with a particle's diffusion interface) that must be provided for any standardized diffusion model

Both of these aid in the implementation of the Bazant diffusion/kinetics model

2 lines of code changed in 1 file:

  • CCA/Components/MPM: AMRMPM.cc (+2 -2)
guilkey 2016-11-18 18:02 Rev.: 55992

Hacking in a "fix" that will get the RT passing again. Hopefully this will be
revisited some day.

4 lines of code changed in 1 file:

  • CCA/Components/MPM: AMRMPM.cc (+4 -4)
guilkey 2016-11-09 20:55 Rev.: 55965

Interpolators now return the number of entries that need to be looped over
in the code that calls them. Currently, this number is the same as the d_size
for all of the interpolators except the fastCPDI. fastCPDI previously only allo
wed the hash function to reach 27, but now it can go as high as 64, but it
usually will not. This commit doesn't change any answers in MPM, IMPM or
MPMICE.

75 lines of code changed in 6 files:

  • CCA/Components/MPM: AMRMPM.cc (+29 -30), AMRMPM.h (+3 -2), RigidMPM.cc (+3 -2), SerialMPM.cc (+35 -36), SerialMPM.h (+5 -4)
cgritton 2016-11-09 11:40 Rev.: 55961

Implemented working interface model for diffusion across material interfaces

42 lines of code changed in 2 files:

  • CCA/Components/MPM: AMRMPM.cc (+33 -4), AMRMPM.h (+9 -1)
guilkey 2016-10-25 18:50 Rev.: 55919

Update the BC logic so that the BCs do the right thing when using fast_cpdi.
Update bulletproofing in SerialMPM.

26 lines of code changed in 3 files:

  • CCA/Components/MPM: MPMBoundCond.cc (new), SerialMPM.cc (+2)
cgritton 2016-10-25 13:28 Rev.: 55918

Cleaned up some whitespace

3 lines of code changed in 1 file:

  • CCA/Components/MPM: MPMBoundCond.cc (+3 -3)
guilkey 2016-10-13 18:27 Rev.: 55876

Make fast_cpdi an option for interpolators.

8 lines of code changed in 1 file:

  • CCA/Components/MPM: MPMFlags.cc (+8)
guilkey 2016-10-13 12:57 Rev.: 55867

In previous commit, forgot to comment out corresonding computes and requires.

2 lines of code changed in 1 file:

  • CCA/Components/MPM: SerialMPM.cc (+2 -2)
guilkey 2016-10-13 12:42 Rev.: 55866

Adding commented out code to project particle color to grid. This has
occasional utility, but not enough to tolerate the additional work.

10 lines of code changed in 1 file:

  • CCA/Components/MPM: SerialMPM.cc (+10 -6)
cgritton 2016-10-11 15:18 Rev.: 55860

Fix needed so that concentration reduction variables only are computed for specified materials.

17 lines of code changed in 1 file:

  • CCA/Components/MPM: AMRMPM.cc (+17 -11)
cgritton 2016-10-05 13:26 Rev.: 55841

Updated AutoFluxBC so that user can define setpoints based on min and max values or average.

31 lines of code changed in 3 files:

  • CCA/Components/MPM: AMRMPM.cc (+28 -4), MPMFlags.cc (+2), MPMFlags.h (+1)
cgritton 2016-09-27 15:50 Rev.: 55809

AutoCycleFluxBC now changes flux direction based on the average concentration and user inputs for max and min set points

23 lines of code changed in 3 files:

  • CCA/Components/MPM: AMRMPM.cc (+16), MPMFlags.cc (+5), MPMFlags.h (+2)
cgritton 2016-09-26 15:18 Rev.: 55794

Fixed issue with restart associated with the scalar flux boundary conditions

7 lines of code changed in 3 files:

  • CCA/Components/MPM: AMRMPM.cc (+1 -1), MPMFlags.cc (+4), MPMFlags.h (+2 -1)
cgritton 2016-09-26 13:42 Rev.: 55793

Added Factory for FluxBC models. AutoCycleFluxBC is a place holder and is currently the same as FluxBCModel.

2 lines of code changed in 1 file:

  • CCA/Components/MPM: AMRMPM.cc (+2 -1)
cgritton 2016-09-23 08:46 Rev.: 55786

Fix for memory leak

2 lines of code changed in 1 file:

  • CCA/Components/MPM: AMRMPM.cc (+2 -2)
cgritton 2016-09-22 15:55 Rev.: 55785

Fixed segfault issue associated with d_fluxbc pointer set to null.

2 lines of code changed in 1 file:

  • CCA/Components/MPM: AMRMPM.cc (+2 -4)
cgritton 2016-09-22 14:30 Rev.: 55783

Moved FluxBCModel to PhysicalBC directory

2 lines of code changed in 3 files:

  • CCA/Components/MPM: AMRMPM.cc (+1 -1), sub.mk (+1 -2)
cgritton 2016-09-22 13:47 Rev.: 55782

Moved scalar flux boundary conditions out of AMRMPM and into its own class.

54 lines of code changed in 3 files:

  • CCA/Components/MPM: AMRMPM.cc (+18 -2), AMRMPM.h (+34 -22), sub.mk (+2 -1)
dav 2016-09-19 17:47 Rev.: 55766

The main changes in this commit only effect a simulation when <outputNthProc> is
set (> 1) in the .ups file.

This commit allows for PIDX output on every process for a time step
output, while using every Nth process (if so specified) for UDA
checkpoint output. Eventually the need for this Nth Proc changing
hack (and Nth proc output itself) should go away when PIDX fully takes
over I/O.

Note, when using "Nth Process Output", both a checkpoint and a time step save
CANNOT occur on the same time step. Therefore the time step output is postponed
for one time step.

On a slightly different note, we use the term proc badly... we should use process,
or perhaps better yet, rank... as proc is usually taken to mean "processor", but
in MPI's case, means process - and the term MPI uses for process is rank.

D CCA/Ports/LoadBalancer.cc
D CCA/Ports/LoadBalancer.h
A + CCA/Ports/LoadBalancerPort.cc
A + CCA/Ports/LoadBalancerPort.h

- Renamed from LoadBalancer to LoadBalancerPort to avoid confusion with the LoadBalancer itself.
- Added "setNthProc()" so that the SimulationController can change the value as needed.

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

- Added postponeNextOutputTimestep(). This pushes off the output of a time step by one
time step. (This occurs if using Nth Process Output and a checkpoint and a time step
where to occur on the same time step.)
- Added savingAsPIDX() boolean query function so that the SimulationController
can avoid doing all of this hack when we are not using PIDX.
- Removed "getCurrentTimestep()" and "getCurrentTime()", as, per the documentation on them,
they should not be used anyway; you should get this info from the shared state. Note,
the DataArchiver name (getCurrentTime()) is different from the shared state name
(getElapsedTime()) which was also confusing.
- Pass const string parameters by reference.
- White space cleanup / alignments.

- If the input file has no <save> labels, but specifies an output interval, throw an exception.
- If the 'logname' is not available when running a simulation, put 'unknown' instead of ignoring.
Should probably find a better fix then 'unknown', but that will have to wait for another day.
- Swat some evil endls. :)
- Don't calculate 'currsecs' on every process, just on rank 0.
- Removed all calls to usingMPI() as Alan deprecated it in a recent commit.
- procOnLevel is (I hope) a boolean array... so declare and use it as such.
- Don't name a variable with a single letter. n -> var_cnt

- Did I mention white space cleanups... Please for the sake of older eyes...

M CCA/Components/ICE/ICE.cc
M CCA/Components/Models/FluidsBased/AdiabaticTable.cc
M CCA/Components/Models/FluidsBased/NonAdiabaticTable.cc
M CCA/Components/Models/FluidsBased/NonAdiabaticTable.h
M CCA/Components/Models/FluidsBased/SimpleRxn.cc
M CCA/Components/Models/FluidsBased/SimpleRxn.h
M CCA/Components/Models/Radiation/RMCRT/Radiometer.cc
M CCA/Components/OnTheFlyAnalysis/MinMax.cc
M CCA/Components/OnTheFlyAnalysis/1stLawThermo.cc
M CCA/Components/OnTheFlyAnalysis/containerExtract.cc
M CCA/Components/OnTheFlyAnalysis/lineExtract.cc
M CCA/Components/OnTheFlyAnalysis/momentumAnalysis.cc
M CCA/Components/OnTheFlyAnalysis/particleExtract.cc
M CCA/Components/OnTheFlyAnalysis/planeExtract.cc
M CCA/Components/OnTheFlyAnalysis/statistics.cc

- Use shared state getElapsedTime()
- Naming conventions: sharedState -> d_sharedState (to match other class vars in file).
- White space / alignments / etc.

M CCA/Components/LoadBalancers/CostProfiler.cc

- White space separation of #includes between CCA and Core

M CCA/Components/Arches/PressureSolverV2.cc
M CCA/Components/Arches/Radiation/RadPetscSolver.cc
M CCA/Components/Examples/Poisson2.cc
M CCA/Components/Examples/DOSweep.cc
M CCA/Components/Examples/RMCRT_Test.cc
M CCA/Components/Examples/RegridderTest.cc
M CCA/Components/Examples/SolverTest1.cc
M CCA/Components/FVM/ElectrostaticSolve.cc
M CCA/Components/ICE/impAMRICE.cc
M CCA/Components/ICE/impICE.cc
M CCA/Components/LoadBalancers/CostProfiler.h
M CCA/Components/LoadBalancers/DynamicLoadBalancer.cc
M CCA/Components/LoadBalancers/ParticleLoadBalancer.cc
M CCA/Components/MPM/AMRMPM.cc
M CCA/Components/MPM/ImpMPM.cc
M CCA/Components/MPM/SerialMPM.cc
M CCA/Components/Parent/Switcher.cc
M CCA/Components/ReduceUda/UdaReducer.h
M CCA/Components/ReduceUda/UdaReducer.cc
M CCA/Components/Regridder/RegridderCommon.h
M CCA/Components/Regridder/RegridderCommon.cc
M CCA/Components/Regridder/SingleLevelRegridder.cc

- LoadBalancer -> LoadBalancerPort
- White space cleanup / alignments.

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

- LoadBalancer -> LoadBalancerPort.
- Add setNthRank().
- getOutputProc() -> getOutputRank().
- Whitespace / alignment.
- Fix comment to indicate getOutputProc is returning an MPI rank.

M CCA/Components/LoadBalancers/ProfileDriver.h
M CCA/Components/LoadBalancers/ProfileDriver.cc
M CCA/Components/Regridder/TiledRegridder.cc
M CCA/Components/Schedulers/MPIScheduler.cc
M CCA/Components/Schedulers/SchedulerCommon.h
M CCA/Components/Schedulers/SchedulerCommon.cc

- Cosmetics: Whitespace / alignment / coding standards / alphabetize #includes / etc.
- LoadBalancer -> LoadBalancerPort

M CCA/Components/Schedulers/OnDemandDataWarehouse.h
M CCA/Components/Schedulers/OnDemandDataWarehouse.cc
M CCA/Components/Schedulers/Relocate.h
M CCA/Components/Schedulers/Relocate.cc

- Name class variables according to naming convention. (eg: aborted -> d_aborted).
- Be consistent with naming convention of class variables in same file.
- LoadBalancer -> LoadBalancerPort.

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

- LoadBalancer -> LoadBalancerPort.
- White space. Name variable "subset" more accurately: "handling_rank". I don't know
why it was named "subset" to begin with as it doesn't appear to be a "set" to me...

M CCA/Components/Schedulers/UnifiedScheduler.cc

- White space.

M CCA/Components/SimulationController/AMRSimulationController.cc

- There are a lot of cosmetic cleanups in this file, but the real/main change is:
- Add in hack to handle changing from "nth process output" (for checkpoints) to
"1 process output" (for time steps) when running with PIDX (and nth process is > 1).
- Declare variables (start) where they are used, not at the top of a function.
- Move the terminal output of the 0th timestep out of the main simulation loop.
- White space / alignment / etc.
- LoadBalancer -> LoadBalancerPort.

M CCA/Components/SimulationController/SimulationController.h
M CCA/Components/SimulationController/SimulationController.cc
M CCA/Components/Solvers/AMR/AMRSolver.cc
M CCA/Components/Solvers/AMR/HypreDriver.cc
M CCA/Components/Solvers/AMR/HypreDriverStruct.cc
M CCA/Components/Solvers/CGSolver.cc
M CCA/Components/Solvers/HypreSolver.cc
M CCA/Components/Wasatch/Expressions/Coordinate.cc
M CCA/Components/Wasatch/Expressions/PoissonExpression.cc
M CCA/Components/Wasatch/Expressions/Pressure.cc
M CCA/Components/Wasatch/Expressions/RadiationSource.cc
M CCA/Components/Wasatch/Wasatch.cc
M CCA/Ports/Scheduler.h
M CCA/Ports/sub.mk
M Core/DataArchive/DataArchive.h
M Core/DataArchive/DataArchive.cc
M Core/Grid/Grid.h
M Core/Grid/Grid.cc
M Core/Grid/Level.h
M Core/Grid/Level.cc
M StandAlone/tools/uda2vis/uda2vis.cc

- LoadBalancer -> LoadBalancerPort.
- Cosmetic white space, alpha, etc.

M CCA/Ports/Output.h

- Removed getCurrentTimestep() and getCurrentTime() as the user should get
them from the shared state.
- Added postponeNextOutputTimestep().
- Added savingAsPIDX().



6 lines of code changed in 3 files:

  • CCA/Components/MPM: AMRMPM.cc (-1), ImpMPM.cc (+4 -4), SerialMPM.cc (+2 -1)
cgritton 2016-09-15 11:31 Rev.: 55748

Currently contains the amprmpm functionality

2 lines of code changed in 1 file:

  • CCA/Components/MPM: AMRMPM.h (+2)
guilkey 2016-08-19 17:15 Rev.: 55658

Fixing the functionality of the particle splitting, add splitting of plasticity
variables to UCNH. Have DamageModelFactory create a Null model if none is
specified, rather than issuing a warning. Remove tabs from MMS code.

343 lines of code changed in 2 files:

  • CCA/Components/MPM: SerialMPM.cc (+334 -75), SerialMPM.h (+9)
allen 2016-08-16 14:33 Rev.: 55646

backed out sim state changes

104 lines of code changed in 5 files:

  • CCA/Components/MPM: AMRMPM.cc (+21 -21), FractureMPM.cc (+18 -18), ImpMPM.cc (+29 -29), RigidMPM.cc (+3 -3), SerialMPM.cc (+33 -33)
allen 2016-08-15 17:35 Rev.: 55642

cleanup of the simulation state - most everything is now private

10 lines of code changed in 1 file:

  • CCA/Components/MPM: FractureMPM.cc (+10 -10)
allen 2016-08-15 17:29 Rev.: 55641

cleanup of the simulation state - most everything is now private

8 lines of code changed in 1 file:

  • CCA/Components/MPM: FractureMPM.cc (+8 -8)
allen 2016-08-15 17:14 Rev.: 55638

cleanup of the simulation state - most everything is now private

86 lines of code changed in 4 files:

  • CCA/Components/MPM: AMRMPM.cc (+21 -21), ImpMPM.cc (+29 -29), RigidMPM.cc (+3 -3), SerialMPM.cc (+33 -33)
guilkey 2016-07-28 12:19 Rev.: 55555

Fix a small bug in the prescribed deformation code that resulted in reading
outside of an array bounds if simulation time exceeded the prescribed times in
the F-table.

1 lines of code changed in 1 file:

  • CCA/Components/MPM: SerialMPM.cc (+1 -1)
dav 2016-06-22 17:18 Rev.: 55462


Reorganize the way we include MPI. Previously files were including the mpi_defs.h (configure generated file) to get mpi.h. Now they
include UintahMPI.h (from Core/Parallel/).

Note: MPI is now required (though for all intents and purposes it already was). You can still run a serial version of the code,
you just must compile/link with MPI first.

M configure
M configure.ac

- Fix check for xml2-config.
- Fix check for mpi.h location when using 'built-in' (fixes issue with non-mpich MPIs).
- Check to see if MPI handles const correctly.
- Fix some indentation.
- No longer define HAVE_MPI or HAVE_MPICH as we require MPI now.
- Added defines for MPI_CONST_WORKS, and MPI_MAX_THREADS and MPI3_ENABLED (thought the last 2 are hard-coded and need
to have configure tests written for them).

M include/sci_defs/mpi_testdefs.h.in

- Added MPI_CONST_WORKS, MPI_MAX_THREADS, and MPI3_ENABLED #defines.
- Moved the MPI wrappers into UintahMPI.h (thus out of this configure generated file).

D include/sci_mpi.h

- Removed sci_mpi.h as it is not used and its only purpose was to allow for compilation without MPI. This
is no-longer allowed (and probably hadn't worked in a long time).

A Core/Parallel/UintahMPI.h

- Added the new file UintahMPI.h which is used to #include <mpi.h> and wrap the MPI calls.
- These wrappers were in mpi_testdefs.h.
- Replaced most of the "const" with MPICONST so that on non-const-compliant MPIs they
can be turned off (this is done through a configure check).
- Grouped a lot of the UINTAH_ENABLE_MPI3 sections into single #if's instead of having a #if for each line.

M CCA/Components/Arches/fortran/sub.mk

- Remove tabs from where they are not supposed to be.

M CCA/Components/MPM/PetscSolver.h
M CCA/Components/ICE/PressureSolve/HypreStandAlone/Hierarchy.cc
M CCA/Components/ICE/PressureSolve/HypreStandAlone/mpitest.cc
M CCA/Components/ICE/Advection/FluxDatatypes.h
M CCA/Components/Schedulers/OnDemandDataWarehouse.h
M CCA/Components/Schedulers/BatchReceiveHandler.h
M CCA/Components/Schedulers/templates.cc
M CCA/Components/Schedulers/Relocate.h
M CCA/Components/Schedulers/MPIScheduler.cc
M CCA/Ports/PIDXOutputContext.h
M Core/Grid/Variables/Stencil4.cc
M Core/Grid/Variables/ReductionVariableBase.h
M Core/Grid/Variables/Stencil7.cc
M Core/Grid/Variables/SoleVariableBase.h
M Core/Parallel/ProcessorGroup.h
M Core/Parallel/PackBufferInfo.h
M Core/Parallel/BufferInfo.h
M Core/Disclosure/TypeDescription.h
M Core/Util/DOUT.hpp
M Core/Util/InfoMapper.h
M StandAlone/tools/mpi_test/async_mpi_test.cc
M StandAlone/tools/mpi_test/mpi_hang.cc
M StandAlone/tools/mpi_test/mpi_test.cc
M StandAlone/tools/fsspeed/fsspeed.cc

- Proper indentation.
- Replaced mpi_defs.h with UintahMPI.h.
- Use <> for includes and not "" per Uintah conding standard.
- Added comment for the #endif of the #ifndef compiler guard for the .h file.
Moved some #ifndef .h compiler guards to the very top of the file.

M testprograms/Malloc/test11.cc
M testprograms/Malloc/test12.cc
M testprograms/Malloc/test13.cc

- Fix indentation.
- "__linux" doesn't exist on some systems, so added "__linux__".
Probably could remove the __linux, but not sure so I didn't.

M VisIt/libsim/visit_libsim.cc

- Use #include <>.

M StandAlone/sus.cc

- Remove the code for old MPI versions. We don't support MPI v1 any more.


11 lines of code changed in 2 files:

  • CCA/Components/MPM: PetscSolver.h (new)
ahumphrey 2016-06-21 13:57 Rev.: 55453

Redirect all MPI calls through the lightweight wrapper (header only)

This allows for standardized error checking and easy collection of runtime stats. All MPI funtions can be called from the wrapper by replacing:

MPI_ with Uintah::MPI::
e.g.
Uintah::MPI::Isend(...)
Uintah::MPI::Reduce(...)

Also enables MPI3 wrappers when MPI3 is available and protects against these when not. Will want MPI3 for non-blocking collectives. MPI3 is availalbe on Mira but not Titan yet.

* Note src/scripts/wrap_mpi_calls.sh has been added to the src tree. This has the sed foo to do this replacement src tree-wide.

* Have tested this with OpenMPI, MPICH, IntelMPI and also built on Titan and Mira.

1 lines of code changed in 1 file:

  • CCA/Components/MPM: AMRMPM.cc (+1 -1)
ahumphrey 2016-06-14 21:26 Rev.: 55445

Revert -r55443, until folks can get compilers upgraded and buildbot MPI is updated.

1 lines of code changed in 1 file:

  • CCA/Components/MPM: AMRMPM.cc (+1 -1)
ahumphrey 2016-06-14 13:47 Rev.: 55443

Redirect all MPI calls through the lightweight wrapper (header only)

This allows for standardized error checking and easy collection of runtime stats. All MPI funtions can be called from the wrapper by replacing:

MPI_ with Uintah::MPI::
e.g.
Uintah::MPI::Isend(...)
Uintah::MPI::Reduce(...)

Also enables MPI3 wrappers when MPI3 is available and protects against these when not. Will want MPI3 for non-blocking collectives. MPI3 is availalbe on Mira but not Titan yet.

* Note src/scripts/wrap_mpi_calls.sh has been added to the src tree. This has the sed foo to do this replacement src tree-wide.

* Have tested this with OpenMPI, MPICH, IntelMPI and also built on Titan and Mira.

1 lines of code changed in 1 file:

  • CCA/Components/MPM: AMRMPM.cc (+1 -1)
ahumphrey 2016-06-13 11:46 Rev.: 55440

Replace usage of NULL macro (type int) with nullptr (pointer literal of type: nullptr_t).

nullptr is implicitly convertible and comparable to any pointer type or pointer-to-member type, but is not implicitly comparable to integral types, except that it is convertible to bool (explicitly).

1 lines of code changed in 1 file:

  • CCA/Components/MPM: AMRMPM.cc (+1 -1)
ahumphrey 2016-06-10 12:31 Rev.: 55430

Revert r55429.

Still having an MPICH/OpenMPI compatibility problem.

1 lines of code changed in 1 file:

  • CCA/Components/MPM: AMRMPM.cc (+1 -1)
ahumphrey 2016-06-10 11:38 Rev.: 55429

Redirect all MPI calls through the lightweight wrapper (header only)

This allows for standardized error checking and easy collection of runtime stats. All MPI funtions can be called from the wrapper by replacing:

MPI_ with Uintah::MPI::
e.g.
Uintah::MPI::Isend(...)
Uintah::MPI::Reduce(...)

Also enables MPI3 wrappers when MPI3 is available and protects against these when not. Will want MPI3 for non-blocking collectives. MPI3 is availalbe on Mira but not Titan yet.

* Note src/scripts/wrap_mpi_calls.sh has been added to the src tree. This has the sed foo to do this replacement src tree-wide.

1 lines of code changed in 1 file:

  • CCA/Components/MPM: AMRMPM.cc (+1 -1)
ahumphrey 2016-06-07 09:19 Rev.: 55420

Removal of src/Core/Thread and related refactoring throughout the code-base.

This is the first step in a series of infrastrucutre overhauls to modernize Uintah. Though this all passes local RT (both CPU and GPU tests), I expect some fallout we haven't considered and will be standing by to deal with any issues. Once the dust settles, we will move to replacing Core/Malloc with jemalloc.

* We are now using the standard library for all multi-threading needs within the infrastructure, e.g. std::atomic, std::thread, std::mutex, etc.

* The Unified Scheduler is now the only multi-threaded scheduler, e.g. ThreadedMPIScheduler no longer exists (though the source will soon be placed into an attic).

* Threads spawned by the Unified Scheduler are detached by default (not joinable), allowing for easy, clean and independent execution. There are no longer ConditionVariables used to signal worker threads, just a simple enum for thread-state.

* What was Core/Thread/Time.* is now Core/Util/Time.* - a next step will be to migrate all internal timers, etc to use std::chrono.

* NOTE: Though much cleanup has occurred with this commit, there is still significant cleanup and formatting to be done. The scope of this commit neccessitates a more incremental approach.

8 lines of code changed in 7 files:

  • CCA/Components/MPM: AMRMPM.cc (+1 -3), FractureMPM.cc (+4 -4), RigidMPM.cc (+3 -4), SerialMPM.cc (-4), ShellMPM.cc (new), sub.mk (-1)

(28 more)

Generated by StatSVN 0.7.0