| Commit message (Collapse) | Author | Age |
... | |
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4789 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
|
| |
This provides support for specifying READS and WRITES clauses for each
function scheduled in schedule.ccl. These list the variables which
the scheduled function reads from or writes to. This supports future
dependency-based scheduling. See
https://docs.einsteintoolkit.org/et-docs/Adding_requirements_to_the_Cactus_scheduler
for more information.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4788 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4781 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4770 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In Fortran, Cactus currently declares grid functions e.g. as (this is
the expansion of DECLARE_CCTK_ARGUMENTS)
REAL*8 gxx (X0metric,X1metric,X2metric)
where X0metric etc. are integers passed into the routine. Each grid
function group has its own, independent size. This has two
disadvantages:
- The compiler does not know that all grid functions have the same
size (namely cctk_lsh), and thus has to perform array index
calculations separately for each group
- The argument list is longer than neded
The enclosed patch declares grid functions via cctk_lsh. Grid arrays
are still declared independently.
This reduces the code size of e.g. GRHydro/GRHydro_Tmunu.F90 from 6836
to 6241 bytes on my system. I have not attempted to measure a
performance difference.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4763 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4748 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4747 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
| |
- re-introduce SILENT=no to set VERBOSE=yes, for some time
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4740 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
| |
minor cosmetics issues
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4739 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4738 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
| |
is still VERBOSE=no, but this now actually produces a lot less output: almost
no "cosmetic" lines (only ---), and no messages for pre- and postprocessing
anymore. Add VERBOSE=yes to get the old beavior of SILENT=no.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4737 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4729 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4728 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4727 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
| |
See https://trac.einsteintoolkit.org/ticket/443
Patch by Roland Haas
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4726 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4723 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
| |
The mechanism in Cactus that handles configuration.ccl files currently
cannot handle a configuration.ccl for the flesh. This patch corrects
this.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4720 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4718 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
| |
and check only the file names themselves.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4717 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
| |
"inline" keyword works as is.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4715 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4713 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4712 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4711 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
| |
(/opt/local/*) come last. This increases the probability that the
correct library is used, e.g. if a library exists both in a specific
path and in /opt/local/lib.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4705 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4704 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4703 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update and improve the auto-detection of the "restrict" keyword; add
more test cases to detect more possible failures. Disable testing the
array syntax
void foo (double A[restrict]);
where the "restrict" keyword is given within the square brackets;
instead, one can use the pointer syntax
void foo (double *restrict const A);
which is tested.
Add support for the gcc built-in function "builtin_expect", which
tells the compiler the value that an expression is most likely to
have.
Re-enable the (currently commented out) definitions for attribute(hot)
and attribute(cold).
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4702 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4701 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
| |
The rules to build CUDA source files are very similar to those for C
and C++, and different from those for the Fortran. Reorder reorder
these makefile rules to make the code easier to understand.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4700 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
|
| |
functions into a new file cctk_ScheduleFunctions.h, which is included
into cctk.h.
This is done only for C (and C++) since Fortran prototypes cannot be
declared at file scope.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4695 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
| |
PATCH, GIT available
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4694 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4692 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4691 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
| |
actually uses that very variable for a list of default options. Use GZIP_CMD instead
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4690 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4689 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4688 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
| |
should be called CUCC, not NVCC. nvcc is only NVidia's CUDA C compiler.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4685 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4684 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
|
| |
Cactus supports a variable OPTIMISE=yes/no to control whether optimisation is performed during compilation. Setting this variable to "yes" (for example, make sim-config OPTIMISE=yes) adds the flags in C_OPTIMISE_FLAGS to CFLAGS so that optimisation is performed. This is the default. Setting OPTIMISE=no does not add the flags. For gcc, this results in an unoptimised configuration as gcc assumes -O0 as the default. The Intel compiler, however, uses -O2 as the default. Hence, setting OPTIMISE=no has no effect on Intel, and -O2 is still used.
This patch adds new configuration options C_NO_OPTIMISE_FLAGS, CXX_NO_OPTIMISE_FLAGS, F77_NO_OPTIMISE_FLAGS and F90_NO_OPTIMISE_FLAGS to complement the *_OPTIMISE_FLAGS options. These are added to the flags when OPTIMISE=no is used, and they default to -O0, which for the commonly used gcc and Intel compilers will lead to an unoptimised configuration.
This requires a CONFIG-reconfig, but this is not enforced because this option doesn't affect most people, and failing to -reconfig is not fatal.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4681 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
|
| |
The regular expression used to match variable settings was absorbing
whitespace into the variable value. Changing to a non-greedy RE fixes
this. This problem caused GSL to not find its directory, as it didn't
expect a space on the end of GSL_DIR.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4667 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4664 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
| |
gcc' __attribute__(__aligned__(...)) if present. This is necessary for
vectorisation.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4662 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4661 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
| |
cctki_Capabilities.h was renamed to cctk_Capabilities.h.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4660 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Thorns can specify that they can make use of a particular capability
(for example HDF5), but that it is not absolutely required. It is
currently not possible to detect a capability in the source code or
make system of a thorn because there is no preprocessor macro and no
make variable defined to indicate that the capability is available.
Additionally, the preprocessor definitions which are explicitly
provided by a capability are written to an include file which is
malformed and hence these definitions cannot be read. This commit:
* Introduces makefile and preprocessor variables HAVE_CAPABILITY_<cap>
for each provided capability
* Removes the incorrect definition line causing the include file to be
malformed
* Renames cctki_Capabilities.h to cctk_Capabilities.h and causes
cctk_Capabilities.h to be included from cctk.h by all thorns
* Excludes cctk_Capabilities.h from dependency checking (dependencies
of the files included from this one will be sufficient)
[Patch from Ian Hinder]
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4659 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
| |
__attribute__((noinline)) if that is supported by the compiler.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4658 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
special CPP flags for debugging. These complement the existing
C_DEBUG_FLAGS and CPPFLAGS. In particular, the following flags are
added:
CPP_DEBUG_FLAGS
FPP_DEBUG_FLAGS
CPP_OPTIMISE_FLAGS
FPP_OPTIMISE_FLAGS
CPP_PROFILE_FLAGS
FPP_PROFILE_FLAGS
CPP_OPENMP_FLAGS
FPP_OPENMP_FLAGS
CPP_WARN_FLAGS
FPP_WARN_FLAGS
Applications are e.g. adding -Wall to CPP_WARN_FLAGS, or -fopenmp to
CPP_OPENMP_FLAGS.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4656 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
| |
be searched when the openmpi binaries are executed. This can happen e.g. when using openmpi which was compiled with the intel compiler, but the corresponding intel module wasn't loaded
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4655 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
| |
Modify force-reconfigure to force people to reconfigure their builds
because the way unsued variables are handles changed.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4653 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
| |
module files outside of scratch can be found, closes ET ticket #99
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4652 17b73243-c579-4c4c-a9d2-2d5706c11dac
|