[root]
CCA
(1 files, 36 lines)
Components
(1 files, 98 lines)
Arches
(76 files, 39141 lines)
BoundaryConditions
(8 files, 118 lines)
ChemMix
(11 files, 6128 lines)
CoalModels
(23 files, 6886 lines)
fortran
(1 files, 37 lines)
DigitalFilter
(3 files, 2213 lines)
LagrangianParticles
(8 files, 624 lines)
Operators
(0 files, 0 lines)
ParticleModels
(23 files, 5636 lines)
PropertyModels
(8 files, 1698 lines)
PropertyModelsV2
(23 files, 3244 lines)
Radiation
(15 files, 5246 lines)
fortran
(25 files, 3433 lines)
SourceTerms
(28 files, 6362 lines)
Task
(15 files, 2566 lines)
Transport
(17 files, 538 lines)
TransportEqns
(14 files, 11564 lines)
Utility
(22 files, 2151 lines)
WallHTModels
(3 files, 1573 lines)
fortran
(40 files, 6013 lines)
DataArchiver
(3 files, 3761 lines)
Examples
(41 files, 9200 lines)
FVM
(9 files, 135 lines)
ICE
(19 files, 16479 lines)
Advection
(12 files, 2880 lines)
CustomBCs
(15 files, 5828 lines)
EOS
(29 files, 4072 lines)
PressureSolve
(0 files, 0 lines)
HypreStandAlone
(33 files, 5772 lines)
SpecificHeatModel
(13 files, 1078 lines)
TurbulenceModel
(9 files, 1348 lines)
WallShearStressModel
(9 files, 992 lines)
LoadBalancers
(21 files, 5820 lines)
MPM
(29 files, 23827 lines)
CohesiveZone
(5 files, 805 lines)
ConstitutiveModel
(73 files, 46406 lines)
Biswajit
(9 files, 8699 lines)
ElasticityModels
(30 files, 2526 lines)
Models
(53 files, 8571 lines)
PlasticityModels
(126 files, 17380 lines)
PortableTongeRamesh
(2 files, 1620 lines)
TongeRameshPTRCalcs
(3 files, 4469 lines)
UnusedCM
(39 files, 24516 lines)
fortran
(5 files, 1748 lines)
Contact
(21 files, 3884 lines)
Crack
(29 files, 10513 lines)
FluxBC
(0 files, 0 lines)
HeatConduction
(5 files, 1641 lines)
MMS
(3 files, 424 lines)
ParticleCreator
(11 files, 2234 lines)
PhysicalBC
(25 files, 3141 lines)
ReactionDiffusion
(5 files, 269 lines)
ConductivityModels
(7 files, 260 lines)
DiffusionInterfaces
(5 files, 260 lines)
DiffusionModels
(13 files, 1675 lines)
ThermalContact
(9 files, 735 lines)
MPMArches
(9 files, 6459 lines)
fortran
(15 files, 3422 lines)
MPMFVM
(7 files, 71 lines)
MPMICE
(4 files, 4211 lines)
Models
(3 files, 340 lines)
FluidsBased
(29 files, 9334 lines)
HEChem
(23 files, 8997 lines)
Radiation
(1 files, 35 lines)
RMCRT
(11 files, 7452 lines)
randomNums
(3 files, 795 lines)
SolidReactionModel
(23 files, 2008 lines)
OnTheFlyAnalysis
(28 files, 8825 lines)
Parent
(5 files, 1552 lines)
ProblemSpecification
(3 files, 2355 lines)
ReduceUda
(3 files, 630 lines)
Regridder
(10 files, 2480 lines)
Schedulers
(44 files, 20876 lines)
SimulationController
(5 files, 2713 lines)
Solvers
(11 files, 3683 lines)
AMR
(10 files, 2878 lines)
HyprePreconds
(13 files, 1181 lines)
HypreSolvers
(19 files, 1993 lines)
SwitchingCriteria
(15 files, 1610 lines)
Wasatch
(40 files, 11571 lines)
Coal
(14 files, 1057 lines)
CharOxidation
(12 files, 601 lines)
CCK
(20 files, 1453 lines)
FirstOrderArrhenius
(6 files, 156 lines)
LangmuirHinshelwood
(8 files, 304 lines)
Devolatilization
(5 files, 480 lines)
CPD
(17 files, 658 lines)
KobayashiSarofim
(6 files, 113 lines)
doc
(1 files, 444 lines)
SingleRate
(6 files, 110 lines)
VaporizationBoiling
(4 files, 225 lines)
Expressions
(62 files, 12597 lines)
BoundaryConditions
(13 files, 2749 lines)
EmbeddedGeometry
(7 files, 913 lines)
MMS
(4 files, 1906 lines)
PBE
(11 files, 1909 lines)
Precipitation
(15 files, 2220 lines)
Particles
(11 files, 1588 lines)
PostProcessing
(13 files, 1716 lines)
TarAndSoot
(9 files, 770 lines)
Turbulence
(15 files, 2325 lines)
Operators
(10 files, 1483 lines)
Transport
(59 files, 9612 lines)
transport
(0 files, 0 lines)
Ports
(31 files, 7267 lines)
Core
(1 files, 70 lines)
Containers
(14 files, 7360 lines)
doc
(0 files, 0 lines)
DataArchive
(3 files, 2218 lines)
Datatypes
(18 files, 5599 lines)
doc
(0 files, 0 lines)
Disclosure
(5 files, 784 lines)
Exceptions
(38 files, 2843 lines)
Geometry
(15 files, 3028 lines)
GeometryPiece
(53 files, 9197 lines)
Grid
(62 files, 21438 lines)
BoundaryConditions
(31 files, 5948 lines)
PatchBVH
(9 files, 821 lines)
Variables
(94 files, 12954 lines)
IO
(6 files, 707 lines)
Labels
(7 files, 2190 lines)
Lockfree
(3 files, 870 lines)
impl
(4 files, 1007 lines)
Malloc
(9 files, 2629 lines)
Math
(53 files, 9457 lines)
TntJama
(26 files, 7810 lines)
doc
(3 files, 99 lines)
OS
(6 files, 1094 lines)
Parallel
(17 files, 3676 lines)
Persistent
(0 files, 0 lines)
ProblemSpec
(4 files, 2237 lines)
Thread
(0 files, 0 lines)
Util
(40 files, 4744 lines)
Timers
(1 files, 5 lines)
R_Tester
(11 files, 1572 lines)
helpers
(9 files, 1956 lines)
toplevel
(3 files, 1066 lines)
StandAlone
(8 files, 4515 lines)
Benchmarks
(2 files, 228 lines)
tools
(2 files, 966 lines)
VisIt
(1 files, 826 lines)
compare_mms
(11 files, 1301 lines)
dumpfields
(29 files, 5425 lines)
extractors
(9 files, 5833 lines)
fsspeed
(2 files, 201 lines)
graphview
(8 files, 1637 lines)
makedot
(2 files, 239 lines)
mpi_test
(5 files, 992 lines)
pfs
(5 files, 1728 lines)
puda
(38 files, 5712 lines)
uda2vis
(4 files, 1812 lines)
VisIt
(1 files, 39 lines)
libsim
(10 files, 2888 lines)
build_scripts
(19 files, 1634 lines)
Wasatch3PStandalone
(2 files, 109 lines)
ExprLib-build
(1 files, 36 lines)
HelperBuildScripts
(2 files, 297 lines)
NSCBC-build
(1 files, 29 lines)
RadProps-build
(1 files, 36 lines)
SpatialOps-build
(1 files, 48 lines)
TabProps-build
(1 files, 35 lines)
include
(2 files, 117 lines)
compat
(0 files, 0 lines)
sci_defs
(29 files, -740 lines)
orderAccuracy
(0 files, 0 lines)
framework_scripts
(3 files, 669 lines)
postProcessTools
(4 files, 1186 lines)
test_config_files
(1 files, 18 lines)
Examples
(6 files, 711 lines)
infrastructure
(3 files, 340 lines)
scripts
(10 files, 1004 lines)
ICE
(14 files, 2626 lines)
MPM
(3 files, 433 lines)
udaTransferScripts
(0 files, 0 lines)
testprograms
(3 files, 459 lines)
CubeRootTest
(2 files, 129 lines)
IteratorTest
(2 files, 125 lines)
Malloc
(14 files, 748 lines)
PatchBVH
(2 files, 260 lines)
RegionTest
(3 files, 306 lines)
Regridders
(6 files, 925 lines)
SFCTest
(2 files, 272 lines)
TestBoxGrouper
(9 files, 733 lines)
TestConsecutiveRangeSet
(3 files, 378 lines)
TestFastMatrix
(3 files, 368 lines)
TestMatrix3
(3 files, 640 lines)
TestRangeTree
(4 files, 653 lines)
TestSuite
(7 files, 654 lines)
Thread
(0 files, 0 lines)
tools
(3 files, 127 lines)
StackTrace
(1 files, 336 lines)
Author | Changes | Lines of Code | Lines per Change |
---|---|---|---|
Totals | 53 (100.0%) | 174 (100.0%) | 3.2 |
dav | 15 (28.3%) | 105 (60.3%) | 7.0 |
ahumphrey | 19 (35.8%) | 21 (12.1%) | 1.1 |
harman | 2 (3.8%) | 18 (10.3%) | 9.0 |
jas | 12 (22.6%) | 17 (9.8%) | 1.4 |
cgritton | 4 (7.5%) | 12 (6.9%) | 3.0 |
allen | 1 (1.9%) | 1 (0.6%) | 1.0 |
Couple of relatively minor fixes to configure system to catch corner case bugs.
M configure.ac
M configure
- Automatically add "-fp-model precise" to CFLAGS (for optimized builds) when using Intel compiler.
- Rename "with_malloc_trace" to "with_MallocTrace" for consistency and so that macro expansion will work with
this flag.
- Add in code (was already in configure.ac but not in configure?) that will remove out of date .o files that
depend on the Wasatch 3P when the W3P changes (via configure).
M aclocal.m4
- Catch when the user says something like "--with-fortran= " (User must point to a
directory and this previously allowed for bad logic to happen).
0 lines of code changed in 2 files:
Add in the Wasatch 3P NSCBC library build/check in configure system. If you are using Wasatch and pointing
to old Watach 3Ps, this will cause your build to break... you will need to update your W3P to include
the NSCBC library.
M build_scripts/build_wasatch_3p.sh
- Added in Tony Saad's build commands for NSCBC library. Added hooks to allow configure to
specify whether to build it or not.
M configVars.mk.in
- Added in HAVE_NSCBC and NSCBC_INCLUDE flags.
M configure.ac
M configure
- Order Wasatch 3P lines to always be SpatialOps, ExprLib, TabProps, RadProps, NSCBC, POKITT.
- Add in verification of NSCBC files and NSCBC flags.
- Re-ordered the Pokitt test to be after the NSCBC test (just to keep using the same order when looking W3P libs).
M CCA/Components/SimulationController/AMRSimulationController.cc
- Few layout cleanups for easier reading.
M CCA/Components/SimulationController/SimulationController.cc
- Rename 't' to 'time'. Please don't use one letter variable names.
- Commented out "stdDeviation()" function as it isn't used and causes compiler warnings.
M Core/DataArchive/DataArchive.cc
- Fix error message when looking for <Data> to accurately report the name of the file that was searched.
4 lines of code changed in 2 files:
Remove SingleProcessor Scheduler/LoadBalancer.
Most of the work here has been in removing the need for Parallel::determineIfRunningUnderMPI(), as running Uintah with MPI is now an invariant, even with only a single process. We ALWAYS run Uintah with MPI.
The last simple step will be to remove usage of Parallel::usingMPI() (which now simply returns true), and also do away with the "-mpi" command line option. Right now sus has been modified to silently ignore "-mpi" and once the nightly RT scripts have been modified, we can deprecate usage.
Note that the following examples of a single process run are synonymous and all use the MPI scheduler with 1 rank:
./sus input.ups
./sus -mpi input.ups
mpirun -np 1 ./sus input.ups
mpirun -np 1 ./sus -mpi input.ups
0 lines of code changed in 2 files:
Base set of files for the electrostatic mpm component
5 lines of code changed in 2 files:
Added regression testing environmental variables
15 lines of code changed in 1 file:
Be consistent in placement of HAVE_*.
2 lines of code changed in 1 file:
The main updates in this commit are to configure and the build system:
A number of bullet-proofing / clean-ups have been added to configure,
and the dependency of Arches on Wasatch has been removed. (Note,
Arches still needs to build TabProps/RadProps in the Wasatch 3P.) I
have tested this on several machines, but it is possible that it will
now catch some peoples' bad configure lines (that 'worked' before but
only accidentally). If your configure stops working because of this
commit, please let me know so I can help you fix it. -Dav
M configure
M configure.ac
- Force bad configure command line arguments to be errors instead of warnings.
This will help avoid users accidentally mis-typing an arg and not noticing.
The autoconf configure system does not normally allow this to happen as
their philosophy is that configure usually calls a sub-configure and passes
args down to it... Thus configure "ignores" bad args under the theory that
a "sub configure" will use them. However, we don't do this and this will
help catch configure command line typos and potentially save developers and
users a lot of headaches.
The bad news is that in order to get this functionality, we have
to hack the autconf'd generated configure script and add a
variable (enable_option_checking=fatal) at the top. I have added
a section to configure.ac with the information about doing this,
but anyone who re-generates configure needs to manually follow the
instructions.
- Configure now will immediately tell you if you have typed in an invalid
file/directory name (bad spelling, doesn't exist) for the --with flags.
Perviously this occurred manually each time (now it is part of the macro)
at the point in the configure script when the library was tested for.
- Fix handling of finding the C/C++ compilers and version checking better.
Configure now determines which compiler (eg: GCC, ICC, XLC) you are
using explicitly and can test for things (like version) appropriately.
The version check may still need to be updated a little.
- Updated the --with handling to know whether the flag was set or not. Previously
we were using a "" (blank) value, which was ambiguous.
- Flag --without as invalid on anything we don't explicitly handle (we
only handle without on a few things such as: --without-fortran or
--without-hypre).
- Allow the external Wasatch 3P to be specified on a single line (instead
of having a separate line for SpatialOps, ExprLib, etc) using
--with-wasatch3p=DIR. This will find all 4 W3P libs with one configure line.
- Got rid of IS_VS (wasn't set/used and don't know what it was for).
- While "no" and no (without quotes) are the same thing to configure, be consistent
and use "no" (with quotes) everywhere.
- Remove the BUILD_WASATCH_FOR_ARCHES logic, as we no longer need Wasatch to
be built for Arches.
- Clean up the left over files from relatively new MPI const test section.
- Fix the HAVE_ACCELERATE
- Update --enable-wasatch_3p to take a list of libs to build (in the case you only
wish to build a subset. Eg: --enable-wasatch_3p=radprops,tabprops
Pass list of libs to the build_wasatch_3p.sh script.
58 lines of code changed in 3 files:
Remove SingleDevice (Unified_SingleDevice) debug stream in favor of masking visible devices with the prefered CUDA_VISIBLE_DEVICES env var.
see: http://www.acceleware.com/blog/cudavisibledevices-masking-gpus
0 lines of code changed in 1 file:
white space clean up
1 lines of code changed in 1 file:
Significant refactoring and clenaup in schedulers and loadbalancers prior to assesment of the required changes to the MPI engine to support Kokkos views. Also moving away from all mutex protected debug output, in favor of the light-weight, printf-based Dout class and DOUT macros. We now get fully coherent debug output, regardless of the proc/thread counts. Also moving to standardized naming conventions for class, static, thread-local and global variables.
0 lines of code changed in 1 file:
Adds an additional preprocessor define to handle the case between cblas.h from macports and the native MacOSX native veclib.
1 lines of code changed in 1 file:
Small refactoring of UnifiedScheduler-related DebugStreams. Next step is replacement of these with Dout class and DOUT macros - removing all usage of cerr/cout Locks.
Update environmentalFlags.txt
0 lines of code changed in 1 file:
Introduction of the Lockfree Pool data structure and the new CommunicationList. Using this now to replace CommRecMPI and its use of the problematic MPI_Testsome() and MPIWaitsome() calls. We now store individual requests in a lock/wait/contention free Pool and call MPI_Test() and MPI_Wait on individual MPI_Requests.
This fixes the MPI_Buffer memory leak seen in the threaded scheduler, in which multiple threads think they will recieve a message, allocate a buffer and then only one thread does the actual recieve and calls the after-communcation handler to clean up the buffer. This memory leak was most pronounced at large scale with RMCRT due to the global halo requirement.
Also backing out the support for non-uniform ghost cells across AMR levels for now, until the issue of some required messages not being generated from coarse radiation mesh to some ranks. This has to do within partial dependencybatches being created due to an incomplete processor neighborhood list across levels.
MISC:
* cleaned up some old TAU remnants in doc directory and build system
* refactor and cleanup in MPIScheduler
* removed unused source code, including the old ThreadedScheduler (only one threaded scheduler now - Unified)
* cleaned up non-existent entreis in environmentalFlags.txt
1 lines of code changed in 5 files:
Added a finite folume component to solve electrostatics problems
7 lines of code changed in 2 files:
Some cleanup in the build system and also removing some sci_*.h files
Generate new configure script.
0 lines of code changed in 3 files:
Remove traces of Electric-Fence, an older unused mem tracking lib.
Generate new configure script.
1 lines of code changed in 1 file:
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.
1 lines of code changed in 2 files:
M aclocal.m4
- Fix a few old issues: eg: echo_n should ECHO_N
- Make the version check output be more verbose and thus clearer.
M configure.ac
M configure
- Fix bizarre autoconf black magic issue... It appears that AC_PROG_CC
sets the ac_objext variable, and if you don't call AC_PROG_CC, you
get (what configure thinks are) compilation failures because
ac_objext is not set. Therefore, even if the user sets the compiler
they want, you still have to call AC_PROG_CC. On an aside, you
apparently can only use AC_PROG_CC once in configure.ac as it does not
produce the same code the 2nd time and does other strange things...
9 lines of code changed in 1 file:
M configure
M configure.ac
- Move warning about not setting CC or CXX up further in the script because if CC is not set,
it will be set automatically for you by AC_PROG_CC.
- Clean up check for non-specified CC variable. Fix setting cc to gcc.
- Use "=" instead of "==" in 'test'.
M aclocal.m4
- Do NOT override user's value of NVCC_CXXFLAGS.
1 lines of code changed in 1 file:
Additions to get PoKitt (Cantera) linking in properly.
M configure
M configure.ac
- Find Cantera libs and add them to PoKiTT linking.
M configVars.mk.in
- Just a few comments about where libs come from.
M include/sci_defs/wasatch_testdefs.h.in
- PoKiTT define implies Cantera so don't need separate define.
7 lines of code changed in 1 file:
Fix the problem with fortran .h files (in Arches) not being generated correctly (on the binary
side) when CUDA is turned on.
Update the make system so that the dependency rules for CUDA enabled files are created
automatically. The user no-longer has to specify that each CUDA_ENABLED_SRCS .cu file
depends on the corresponding .cc file. Updated both Wasatch and Arches to use the
new approach.
M Makefile.in
- Add a 'function' (make-cuda-target) that will create CUDA dependency rules automatically,
instead of having the developer have to list the rules manually. This function must
be called in each sub.mk file that creates a CUDA_ENABLED_SRCS list.
- Remove all .cu and (mostly fortran) .h files from the <bin> side when
"make cleanreally" is called.
M configure
M configure.ac
- Put in check to verify that Uintah and Wasatch 3P are both (or neither) being
built with CUDA.
- Will also add Candera check once I get more info.
A include/sci_defs/wasatch_testdefs.h.in
- Place PoKitt and Candera defines in new (configure generated binary side) wasatch_defs.h
file.
M CCA/Components/Arches/sub.mk
- Fix fortran .h file dependency problem. Note, these dependencies are have been (and
continue to be) manually entered into the sub.mk file. However, previously, they
used multiple lines (eg: Source.$(OBJEXT) was written 5 times. You don't need to
do this, you can just list it once and then put all the files it depends on.
When building without CUDA, the fortran .h files are needed to create
the object files (eg: Source.o). However, if CUDA is turned on, then they are
needed to create the CUDA .cu file (eg: <bin>/Source.cu). Perviously, at least
on some machines (though the problem should have shown up on all machines?), the fortran
.h files were not being generated.
It appears that currently Arches/sub.mk is the only directory that has CUDA files that
are dependent on fortran .h files. If this occurs in other sub-dirs for Arches (as
CUDA is added to the code), then the same approach should be taken in those files.
M CCA/Components/Arches/ChemMix/sub.mk
M CCA/Components/Arches/CoalModels/sub.mk
M CCA/Components/Arches/LagrangianParticles/sub.mk
M CCA/Components/Arches/Operators/sub.mk
M CCA/Components/Arches/ParticleModels/sub.mk
M CCA/Components/Arches/PropertyModels/sub.mk
M CCA/Components/Arches/PropertyModelsV2/sub.mk
M CCA/Components/Arches/SourceTerms/sub.mk
M CCA/Components/Arches/Task/sub.mk
M CCA/Components/Arches/Transport/sub.mk
M CCA/Components/Arches/TransportEqns/sub.mk
M CCA/Components/Arches/Utility/sub.mk
M CCA/Components/Arches/WallHTModels/sub.mk
M CCA/Components/Wasatch/Expressions/BoundaryConditions/sub.mk
M CCA/Components/Wasatch/Expressions/MMS/sub.mk
M CCA/Components/Wasatch/Expressions/PostProcessing/sub.mk
M CCA/Components/Wasatch/Expressions/Turbulence/sub.mk
M CCA/Components/Wasatch/Expressions/sub.mk
M CCA/Components/Wasatch/Operators/sub.mk
M CCA/Components/Wasatch/Transport/sub.mk
M CCA/Components/Wasatch/sub.mk
- Call make system function make-cuda-target to generate CUDA .cu dependencies.
11 lines of code changed in 1 file:
Added the SVN URL to sus's output so we can identify which branch was used during a particular run.
3 lines of code changed in 1 file:
Compare_uda and other utilities do not need to link against components
6 lines of code changed in 1 file:
Remove more unused 'Register' stuff. Commit update to aclocal.m4 that is in configure already, but still not sure why these changes (from John or Tony) are necessary.
0 lines of code changed in 1 file:
A number of fixes for Titan (CUDA) and static builds in general. Also, with this commit, the stand-alone
tools such as puda and compare_uda should now work on machines that require static builds.
M configure
M configure.ac
- Turn back on the C++11 check.
- Fix check for broken exceptions (on Titan) that fails because the code is cross-compiled.
- When MPI is specified as built-in, the NVCC compiler fails to find mpi.h (as we don't specify
the -I/path/to/mpi/ flag). This commit uses the built-in compiler to find the location of mpi, and
provides the location to the NVCC compiler (using INC_MPI_H_NVCC).
- Remove some old debugging statements.
- Fix (hack) on Titan for problem with CUDA 7.0 and Boost. Must specify two -D flags.
M configVars.mk.in
- Add the INC_MPI_H_NVCC flag to the NVCC_CXXFLAGS var.
- Fix (copy/paste?) bug where cuda .d files were being deleted as thus make dependency information
was lost. I'm guessing that before this fix, Uintah CUDA developers must have experienced
strange behavior when modifying .h files as the code would not have re-built like it should have.
- Remove all .d files from the base directory... This is due to the fact that Titan's NVCC compiler
is leaving around many bogus/tmp .d files and not cleaning up after itself. It might be that
we should make a check for being on Titan (or a more general test for problematic NVCC .d
generation - though I'm not sure right off on how to write this check) - but for now the removing
of all .d files in the base dir should have no effect on anything else.
- Make verbose output not suppress the "rm" call.
M CCA/Components/Wasatch/Wasatch.h
M CCA/Components/Wasatch/Wasatch.cc
- Fix compiler warning about "const" return variables.
- White space.
M CCA/Components/ProblemSpecification/ProblemSpecReader.cc
- Allow for validation of .ups file on machines where the executable is not in build tree (eg: on Titan,
before running sus, you must move it to a file system visible to the compute nodes). In order
to use this functionality, you must copy the "inputs/" directory to the same location you move sus to.
- It appears that, when validating the .ups file, sus was doing the validation on every process. This
doesn't seem like it is necessary, so only do so now on proc 0...
M Core/Exceptions/ErrnoException.cc
- White space, {}s.
M Core/Grid/Variables/CCVariable.h
M Core/Grid/Variables/SFCYVariable.h
M Core/Grid/Variables/NCVariable.h
M Core/Grid/Variables/SFCXVariable.h
M Core/Grid/Variables/SFCZVariable.h
- Remove the "registerMe" code that is not used. Perhaps it was replaced with the current method of
registering Uintah variables but not cleaned up? Regardless, it doesn't do anything now, and
just makes tracking what is going on more difficult, so it is best that it be removed.
- Put one-line functions in a .h file on a single line to make it easier to view the class spec.
M Core/Grid/Variables/sub.mk
- Add the StaticInstantiate.cc file. This file is used to force Uintah variable registration on
machines that use static builds and don't register the variables in the normal/correct way
when the shared library (static constructors fire) is loaded.
A Core/Grid/Variables/StaticInstantiate.h
A Core/Grid/Variables/StaticInstantiate.cc
- Uintah relies on our variable types (CCVariable, NCVariable, etc) being registered with Uintah
before it allows components to create a variable of the given type. On most systems (and
specifically for shared lib builds), when the CCVariable.o code is loaded from libCore_Grid.so
static constructors fire and register the variables. However, on some machines that use static
builds (such as Titan) appear to "optimize out" these constructors, and thus the variables
never register themselves and when puda or compare_uda (etc) try to load data, the Uintah
type system says it does not recognize the type and dies. This commit adds the (hack) function
instantiateVariableTypes() which sole purpose is to create variables of all types that Uintah
uses so that they will register themselves with the type system. This function is called the
first time a DataArchive is created (on static builds). All the variables it creates go away
as soon as the function is done, but have by then registered themselves.
M Core/DataArchive/DataArchive.h
M Core/DataArchive/DataArchive.cc
- Use the instantiateVariableTypes() function the 1st time a DataArchive is created (on static builds).
- Add a few more 'const's for variables that must not change.
- Indent properly, white space.
- Move some private data to the main private section.
M Core/Disclosure/TypeUtils.cc
- Move to 80+ columns for better readability.
M Core/Disclosure/TypeDescription.cc
- Remove the (non-used) Register section.
7 lines of code changed in 1 file:
More changes from SCIRun to Uintah. Delete unused SCIRun build_script files.
5 lines of code changed in 2 files:
Remove Persistent class and all references to it.
0 lines of code changed in 1 file:
Turn off c++-11 temporarily
3 lines of code changed in 1 file:
Set the nvcc compiler flag to use c++-11
3 lines of code changed in 1 file:
"-std=c++11" is a valid option for NVCC compiler in CUDA versions >=7.0, so pass it directly to NVCC and bypass the -Xcompiler prefix (for host compilation phase).
NOTE: With this commit one can pass -std=c++11 (via CXXFLAGS for example) to Uintah at configure time and both CPU and GPU builds will complete successfully with all components enabled. Commits, r53598, r53517, etc addressed the previous issues the infrastructure had. Clang may kick up a few more. This should effect no component yet, simply adds the ability to use C++11. Once this settles, we can enforce using a C++11 compliant compiler at configure time with an M4 macro. This shouldn't be an issue as the C++11 standard is over 5 years old actually. We shouldn't need to support a compiler that old??
6 lines of code changed in 1 file:
Partial revert of r54638. and generate new configure script
7 lines of code changed in 1 file:
Update copyright date to 2016.
5 lines of code changed in 6 files:
For GPU builds:
1.) now support compute capability 5.0 & 5.2 (Maxwell)
2.) no longer support sm_2.*
2.) compile debug builds with -O0 (-m64 -g -G -O0 passed to NVCC)
5 lines of code changed in 1 file: