#1679: Update OpenMPI, hwloc
-------------------------+--------------------------------------------------
Reporter: eschnett | Owner:
Type: enhancement | Status: new
Priority: minor | Milestone:
Component: Other | Version: development version
Keywords: |
-------------------------+--------------------------------------------------
Thorns MPI and hwloc should be updated to current version.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1679>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#1680: GetComponents: do not hardcode svn --non-interactive
-------------------------------------------+--------------------------------
Reporter: bmundim | Owner: eric9
Type: defect | Status: new
Priority: minor | Milestone:
Component: GetComponents | Version: development version
Keywords: GetComponents non interactive |
-------------------------------------------+--------------------------------
While testing the ET new trunk on my laptop running Kubuntu,
I noticed that GetComponents fails to download thorns from
private svn repositories:
svn: E170001: Unable to connect to a repository at URL
'https://svn.blabla/trunk'
svn: E170001: OPTIONS of 'https://svn.blabla/trunk': authorization failed:
Could not authenticate to server: rejected Basic challenge
(https://svn.aei.mpg.de)
The solution for this was to strip out the svn option --non-interactive
hardcoded in GetComponents. kwallet would then ask for my password (only
once)
in order to unlock my svn passwords and the checkout would proceed
normally.
Note that I have configured ~/.subversion/config to store my passwords on
kwallet:
password-stores = kwallet
other users could have used gnome-keyring, keychain, etc.
It would be nice then to allow the user to use --non-interactive option or
not
instead of keeping it hardcoded. Any thoughts against it? or better
suggestions
on handling private svn repos?
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1680>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#1691: Time integration of grid arrays with MoL is incorrect when there is more
than one component per process
--------------------+-------------------------------------------------------
Reporter: hinder | Owner:
Type: defect | Status: new
Priority: minor | Milestone:
Component: Cactus | Version: development version
Keywords: |
--------------------+-------------------------------------------------------
MoL integrates its variables in local mode (loop over components), and
grid arrays are stored per process, so MoL integrates evolved grid arrays
multiple times, leading to wrong results, if there is more than one
component per process. I believe the best solution is to move integration
of grid arrays into a separate function, scheduled in a different mode
(MoL_AddArrays), either global or local. However, a quick short-term
"fix" is to copy the check that Slab makes that it is running with only a
single component per process. Users can then work around the problem by
running on more processes, and won't get silent wrong results.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1691>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#1707: Delay build of GSL until after CST has finished
-----------------------------------+----------------------------------------
Reporter: eschnett | Owner:
Type: enhancement | Status: new
Priority: major | Milestone:
Component: EinsteinToolkit thorn | Version: development version
Keywords: |
-----------------------------------+----------------------------------------
See
<https://svn.cactuscode.org/projects/ExternalLibraries/GSL/branches/eschnett
/delayed-build>.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1707>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#1039: Web-based documentation should be automatically updated
-------------------------------------+--------------------------------------
Reporter: hinder | Owner:
Type: enhancement | Status: new
Priority: minor | Milestone:
Component: EinsteinToolkit website | Version:
Keywords: Documentation |
-------------------------------------+--------------------------------------
We have documentation for Cactus and the ET on their respective websites.
This should be updated automatically when the source is changed, so it is
never out of date. There should be documentation for the current release
as well as the current development version.
There is one technical problem standing in the way of this. The system
should be automated, and it needs to have commit rights to a specific
directory in the SVN repository hosting the files. SVN accounts for CCT
machines tend to be the same as CCT login accounts, so we don't want to
store the username and password. I think the best solution is to create
an SVN account specifically for the documentation build system which is
not tied to a CCT login account. This account would be given commit
access to just the directories necessary.
The "checkout, build doc, commit" script should be kept in version control
somewhere, and a machine should be chosen on which to run it. It could be
run regularly, or just in response to commits.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1039>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#1708: Add autoconf detection for #pragma omp simd
-------------------------+--------------------------------------------------
Reporter: eschnett | Owner:
Type: enhancement | Status: new
Priority: major | Milestone:
Component: Cactus | Version: development version
Keywords: |
-------------------------+--------------------------------------------------
This pragma simd-vectorizes a loop. It is part of OpenMP 4.0.
Unfortunately, not all compilers support it. We need to add an autoconf
rule.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1708>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#1711: Tests using ADMConstraints should be converted to use ML_ADMConstraints
--------------------+-------------------------------------------------------
Reporter: hinder | Owner:
Type: defect | Status: new
Priority: major | Milestone:
Component: Other | Version: development version
Keywords: |
--------------------+-------------------------------------------------------
In May 2014, ADMConstraints was removed from the ET thornlist. However,
we have many tests which use this thorn, and they now cannot run. These
tests were not just designed to test this thorn, they test other
functionality as well. Looking at the test log file from Jenkins, I see
the following tests which are skipped solely due to ADMConstraints being
missing:
{{{
(AEIThorns/ADMMass/test/tov.par)
(AEIThorns/ADMMass/test/tov_carpet.par)
(CactusNumerical/Cartoon2D/test/schw-0050.par)
(CactusNumerical/Cartoon2D/test/test_cartoon_2.par)
(CactusNumerical/Cartoon2D/test/test_cartoon_3.par)
(EinsteinExact/EinsteinExact_Test/test/KS-tilted-EE.par)
(EinsteinInitialData/Exact/test/de_Sitter.par)
(EinsteinEvolve/GRHydro/test/test_one_hybrid.par)
(CactusNumerical/RotatingSymmetry180/test/Kerr-EE.par)
(CactusNumerical/RotatingSymmetry180/test/Kerr-rotating-180-EE.par)
(CactusNumerical/RotatingSymmetry180/test/Kerr-rotating-180
-staggered-EE.par)
(CactusNumerical/RotatingSymmetry180/test/Kerr-staggered-EE.par)
(CactusNumerical/RotatingSymmetry90/test/Kerr-rotating-90-EE.par)
(CactusNumerical/RotatingSymmetry90/test/Kerr-rotating-90-staggered-
EE.par)
(EinsteinInitialData/TOVSolver/test/test_one_boost_max.par)
(EinsteinInitialData/TOVSolver/test/test_one_static_max.par)
(EinsteinInitialData/TOVSolver/test/test_two_av.par)
(EinsteinInitialData/TOVSolver/test/test_two_max.par)
(EinsteinInitialData/TwoPunctures/test/twopunctures.par)
(EinsteinAnalysis/WeylScal4/test/teukolsky.par)
(EinsteinAnalysis/WeylScal4/test/teukolskyID.par)
(EinsteinAnalysis/WeylScal4/test/teukolskyParity.par)
}}}
I have removed ADMConstraints from the WeylScal4 tests, as it wasn't being
used there, but the other tests probably do make use of it, and need to be
ported to ML_ADMConstraints. We should add an item to the list of "things
to do when deprecating a thorn", so that we fix the tests using that thorn
before removing it.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1711>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#1487: Documentation build should be tested as part of the automated build and
test
--------------------+-------------------------------------------------------
Reporter: hinder | Owner: hinder
Type: defect | Status: new
Priority: minor | Milestone:
Component: Other | Version: development version
Keywords: |
--------------------+-------------------------------------------------------
The build of the ET documentation should be tested as part of the
automated build and test.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1487>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#791: Output timer tree as XML
-------------------------+--------------------------------------------------
Reporter: hinder | Owner: eschnett
Type: enhancement | Status: new
Priority: minor | Milestone:
Component: Carpet | Version:
Keywords: |
-------------------------+--------------------------------------------------
The attached patch to Carpet adds a parameter (off by default) which
outputs the timer tree from each process to an XML file in the output
directory at the end of the run. The output looks like this:
{{{
<timer name = "main"> 7.7702
<timer name = "CallFunction"> 0.000241
<timer name = "thorns"> 0.000233
<timer name = "CaKernel_FreeDevMem"> 0.000221
<timer name = "PostCall"> 2e-06 </timer>
<timer name = "PreCall"> 1e-06 </timer>
</timer>
</timer>
</timer>
<timer name = "CarpetStartup"> 0.00982
<timer name = "AllocateGridHierarchy"> 5e-06 </timer>
}}}
An alternative schema would be to have the name and timer value as
subelements; i.e.
{{{
<timer>
<name>main</name>
<value>7.7702</value>
<children>
<timer>
<name>CallFunction</name>
<value<0.000241</name>
...
</timer>
}}}
The <children> tag might not be necessary, but might make it easier to
parse. Having one file per process is not ideal; we would like to add
reductions across processes to give min, max, average, standard deviation
etc, also for the standard output display.
OK to commit as a work-in-progress? We can change the schema later if it
turns out to be easier to deal with.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/791>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#727: Test output changes every time some tests are run
-----------------------------------------------------------+----------------
Reporter: hinder | Owner:
Type: defect | Status: new
Priority: major | Milestone:
Component: EinsteinToolkit thorn | Version:
Keywords: testsuites QuasiLocalMeasures IDAxiOddBrillBH |
-----------------------------------------------------------+----------------
Each time a new run of the test suites is performed, the test output of
IDAxiOddBrillBH and QuasiLocalMeasures changes a little. These changes
are below the tolerances set in the test.ccl files, so the tests pass, but
there should be no change at all when the tests are run on the same
machine.
An example of the difference from one test run to the next is shown at
http://git.barrywardell.net/EinsteinToolkitTestResults.git/blobdiff/95fe088….
Another example, from QuasiLocalMeasures, is at
http://git.barrywardell.net/EinsteinToolkitTestResults.git/blobdiff/95fe088…
/qlm-ks-shifted/admbase::metric.average.asc.
The only thorns to exhibit this behaviour are IDAxiOddBrillBH and
QuasiLocalMeasures. All other test data remains unchanged from one test
run to the next. Note that the two test runs will be performed with
different executables, since a new configuration is created for each run.
I think I remember testing that simply re-running the same executable
resulted in the same test output.
Is it possible that there are a small number of points which access
uninitialised memory which changes on each run for these thorns?
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/727>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit