1
0
mirror of https://github.com/paboyle/Grid.git synced 2024-11-15 02:05:37 +00:00
Commit Graph

220 Commits

Author SHA1 Message Date
Peter Boyle
8c3a599148 Block solver test 2018-11-06 16:44:58 +00:00
Azusa Yamaguchi
4a47b11876 Block CG improvements to develop 2018-11-06 12:49:05 +00:00
Daniel Richtmann
2881b3e8e5
WilsonMG: Remove unnecessary static assertions 2018-06-26 14:42:30 +02:00
Daniel Richtmann
cc5d025ea4
WilsonMG: Adapt staggered GMRES/MR tests to "new" constructor 2018-06-18 16:20:20 +02:00
Daniel Richtmann
ddcb53bce2
Merge remote-tracking branch 'upstream/develop' into feature/wilsonmg 2018-06-13 09:50:37 +02:00
Daniel Richtmann
d1c80e1d46
WilsonMG: Correct years in copyright line 2018-06-13 09:44:09 +02:00
Daniel Richtmann
c73cc7d354
WilsonMG: Add tests with MG preconditioner running single precision, outer solver running in double 2018-06-12 16:10:48 +02:00
Daniel Richtmann
49fdc324a0
WilsonMG: Make MG correctness checks abort on failing tests 2018-06-12 16:10:48 +02:00
Daniel Richtmann
f32714a2d1
WilsonMG: Make running MG correctness checks optional via commandline 2018-06-12 16:10:48 +02:00
Daniel Richtmann
73a955be20
WilsonMG: Move tests for Wilson & WilsonClover into separate files 2018-06-12 16:10:48 +02:00
Daniel Richtmann
66b7a0f871
WilsonMG: Move multigrid class to separate file 2018-06-12 16:10:48 +02:00
Daniel Richtmann
11c4f5e32c
WilsonMG: Provide command line switch for reading in input xml + move default params to constructor of MultiGridParams 2018-06-12 15:01:31 +02:00
Daniel Richtmann
e9b9550298
WilsonMG: Fix incompatibility with single prec MG in construction of simd layout on coarser grids 2018-06-12 15:01:31 +02:00
Azusa Yamaguchi
7fbbb31a50 Merge branch 'develop' into feature/staggered-comms-compute
Conflicts:
	lib/qcd/action/fermion/ImprovedStaggeredFermion.cc
2018-05-21 13:07:29 +01:00
Daniel Richtmann
6c27c72585 WilsonMG: Provide more sensible default values for MG parameters 2018-05-16 17:26:09 +02:00
Daniel Richtmann
9c003d2d72 WilsonMG: Base wilson mg preconditioner entirely on existing infrastructure 2018-05-16 17:26:09 +02:00
Azusa Yamaguchi
4f4181c54a Merge branch 'feature/staggered-comms-compute' of https://github.com/paboyle/Grid into feature/staggered-comms-compute 2018-05-02 14:59:13 +01:00
Azusa Yamaguchi
b35169f1dd MultiShift for Staggered 2018-05-02 14:22:37 +01:00
Azusa Yamaguchi
a9e8758a01 Improvements to staggered tests timings 2018-04-26 10:08:05 +01:00
Daniel Richtmann
73ced656eb
Merge remote-tracking branch 'upstream/develop' into feature/wilsonmg 2018-04-03 17:51:11 +02:00
Daniel Richtmann
f69008edf1
WilsonMG: Add functionality to report timings to MG preconditioner 2018-04-03 17:26:49 +02:00
Daniel Richtmann
57a49ed22f
WilsonMG: Read in MG parameters from xml in test 2018-04-03 16:03:11 +02:00
Daniel Richtmann
ff6413a764
WilsonMG: Make number of levels chooseable at runtime
I don't like this solution though :(
2018-04-03 15:57:33 +02:00
Daniel Richtmann
2530bfed01
WilsonMG: Move params instance from global scope to test main function 2018-04-03 14:50:48 +02:00
paboyle
276f113f28 IO uses master boss node for metadata. 2018-03-30 16:17:05 +01:00
Daniel Richtmann
58c30c0cb1
WilsonMG: Add conformability checks in MG preconditioner 2018-03-28 13:24:39 +02:00
Daniel Richtmann
917a92118a
WilsonMG: Move operator test to MG testing routine 2018-03-28 12:19:25 +02:00
Daniel Richtmann
04f9cf088d
WilsonMG: Add more parameters to MultiGridParams struct 2018-03-27 17:13:11 +02:00
Daniel Richtmann
99107038f9
WilsonMG: Rationalize the level counting strategy 2018-03-27 17:06:33 +02:00
Daniel Richtmann
b78456bdf4
WilsonMG: Get rid of explicit include of GCR header 2018-03-26 15:41:53 +02:00
Daniel Richtmann
08543b6b11
WilsonMG: Provide a switch between V- and K-cycle 2018-03-26 15:37:17 +02:00
Daniel Richtmann
63ba33371f
WilsonMG: Some minor refactoring 2018-03-26 15:34:53 +02:00
Daniel Richtmann
683a7d2ddd
WilsonMG: Move comment to make clang-format happy 2018-03-26 14:59:40 +02:00
Daniel Richtmann
3c3ec4e267
WilsonMG: Move tests for Wilson & WilsonClover into the same file 2018-03-23 21:12:27 +01:00
Daniel Richtmann
0f6009a29f
WilsonMG: Huge refactor into something that could be considered an algorithm 2018-03-23 19:55:43 +01:00
Daniel Richtmann
a66cecc509
WilsonMG: Fix invalid call to MR ctor 2018-03-09 17:34:29 +01:00
Daniel Richtmann
1e63b73a14
WilsonMG: Some cleanup/formatting 2018-03-09 16:50:19 +01:00
paboyle
2018077770 Make NVCC happy with the compile. This is warning free on 9.1 on my laptop (both make and make tests). 2018-03-05 00:28:24 +00:00
paboyle
bb7d87d0a0 Coordinate handling gpu friendly 2018-02-24 22:18:33 +00:00
Azusa Yamaguchi
0f468e2179 OverlappedComm for Staggered 5D and 4D. 2018-02-22 12:50:09 +00:00
Daniel Richtmann
2976132bdd
Add first version of multigrid for wilson clover analogous to wilson one
Just like the wilson one, this algorithm

• is currently only a 2-level method since I don't have correct implementations
  for Mdir and Mdiag in CoarsenedMatrix yet (needed for further coarsening)
• needs levelization and refactoring into a proper algorithm
2018-02-08 23:52:10 +01:00
Daniel Richtmann
48177f2f2d
Add tests for all MR|GMRES solvers with wilson clover action 2018-02-08 23:52:09 +01:00
Daniel Richtmann
c4ce70a821
WilsonMG: Major cleanup 2018-02-08 23:52:08 +01:00
Daniel Richtmann
a3e009ba54
Add tests for CAGMRES solvers with staggered action 2018-02-08 17:46:28 +01:00
Daniel Richtmann
13ae371ef8
Make solver parameters match in all MR|GMRES solver tests 2018-02-08 17:33:10 +01:00
Daniel Richtmann
cc2f00f827
Remove test for MR solver with dwf action as it doesn't converge 2018-02-07 18:09:08 +01:00
Daniel Richtmann
cd61e2e6d6
Increase max iterations in test of MR solver with staggered action 2018-02-07 18:09:07 +01:00
Daniel Richtmann
323ed1a588
Add an overrelaxation parameter to the MR solver 2018-02-07 18:09:06 +01:00
Daniel Richtmann
1671adfd49
WilsonMG: Add some tests for linear operators 2018-02-07 17:15:22 +01:00
Daniel Richtmann
871649238c
WilsonMG: Stricter naming for linear operators 2018-02-01 14:43:08 +01:00
Daniel Richtmann
7c86d2085b
WilsonMG: Some minor cleanup 2018-02-01 12:24:16 +01:00
Daniel Richtmann
9292be0b69
WilsonMG: Add check for Mdiag + Σ Mdir == M
Need to test my implementations of CoarsenedMatrix::Mdiag &
CoarsenedMatrix::Mdir.
2018-01-31 14:03:30 +01:00
Daniel Richtmann
10141f90c9
WilsonMG: Rename test file 2018-01-30 10:25:09 +01:00
Daniel Richtmann
f20728baa9
WilsonMG: Some further steps towards a three level method
Currently this is very "manual" as we are still testing stuff. Will refactor
and make it an algorithm once everything works.

What currently does work:

  - All tests in MultiGridPreconditioner::runChecks for the first coarse grid
  - The tests for the intergrid operators going from the first to the second
    coarse grid
    - (1 - P R) v   == 0
    - (1 - R P) v_c == 0
  - A full solve with VPGCR and a two-level MG preconditioner

What hinders the rest of the tests from passing with a three-level method is the
absence of implementations of CoarsenedMatrix::Mdir and CoarsenedMatrix::Mdiag.
2018-01-29 18:29:49 +01:00
Daniel Richtmann
d2e68c4355
WilsonMG: Perform some minor cleanup 2018-01-29 18:07:10 +01:00
Daniel Richtmann
194e4b94bb
Make MG checking function work level-wise 2018-01-29 17:18:20 +01:00
paboyle
98af36217a Zero changes. (I mean literally) 2018-01-27 23:46:02 +00:00
paboyle
c4f82e072b _grid becomes private ; use Grid()§ 2018-01-27 00:04:12 +00:00
paboyle
3f9654e397 Hiding internals 2018-01-26 23:09:03 +00:00
Daniel Richtmann
9dc885d297
Fix a bug in Wilson MG
The calculation of the lattice size of a second coarse level was incorrect.
2018-01-18 17:02:04 +01:00
Daniel Richtmann
a70c1feecc
Remove some unnecessary stuff in Wilson MG 2018-01-18 15:48:28 +01:00
Daniel Richtmann
38328100c9
Implement correctness checks for Wilson MG 2018-01-18 15:43:15 +01:00
Daniel Richtmann
9732519c41
Apply clang-format to Wilson MG
I can provide the configuration file I used if people want that.
2018-01-18 15:14:37 +01:00
Daniel Richtmann
fa4eeb28c4
Save current state in Wilson MG test file 2018-01-17 17:56:34 +01:00
paboyle
d74c21a386 GLobal edit for QCD namespace removal & NAMESPACE macros 2018-01-15 09:37:58 +00:00
Daniel Richtmann
73434db636
Merge remote-tracking branch 'upstream/develop' into feature/ddalphaamg 2018-01-09 10:43:33 +01:00
paboyle
bda97212a9 Simplify proliferation of comms layers 2018-01-08 11:29:20 +00:00
Daniel Richtmann
c6411f8514
Merge remote-tracking branch 'upstream/develop' into feature/ddalphaamg 2018-01-08 10:37:10 +01:00
Daniel Richtmann
6cf635d61c
Remove some old code in Wilson MG 2017-12-22 13:20:09 +01:00
Daniel Richtmann
39558cce52
Multiply TVs in Wilson MG with G5 instead of G5R5 2017-12-22 13:07:56 +01:00
paboyle
3729c7a7a6 Clean up of test 2017-12-05 13:07:31 +00:00
Daniel Richtmann
4e965c168e
Implement analogon to test vector analysis in WMG codebase 2017-11-29 15:05:27 +01:00
Daniel Richtmann
f260af546e
Save current state 2017-11-28 15:03:02 +01:00
paboyle
e6a3e375cf Debug 2017-11-27 15:10:22 +00:00
paboyle
4987edbd44 Merge branch 'develop' of https://github.com/paboyle/Grid into develop 2017-11-27 12:34:56 +00:00
paboyle
ad140bb6e7 Clean on multinode target after split 1 1 2 4 -> 1 1 2 2 2017-11-27 12:34:25 +00:00
azusayamaguchi
e55397bc13 Staggerd cg 2017-11-24 14:18:30 +00:00
Daniel Richtmann
649b8c9aca
Save current state 2017-11-24 10:46:20 +01:00
paboyle
94b8fb5686 Debug in progress 2017-11-19 01:39:04 +00:00
Daniel Richtmann
a367835bf2
Set everything up for the implementation of FCAGMRES
The current implementation is the exact same code as normal FGMRES. This commit
only sets up the "framework" for the implementation of FCAGMRES, i.e., a test
and an include in the algorithms header file.
2017-11-09 17:30:41 +01:00
Daniel Richtmann
c6cbe533ea
Set everything up for the implementation of CAGMRES
The current implementation is the exact same code as normal GMRES. This commit
only sets up the "framework" for the implementation of CAGMRES, i.e., a test and
an include in the algorithms header file.
2017-11-09 17:14:44 +01:00
Daniel Richtmann
699d537cd6
Add FGMRES test with staggered fermions 2017-11-08 16:56:42 +01:00
Daniel Richtmann
9031f0ed95
Fix a filename in a file header 2017-11-08 16:42:26 +01:00
Daniel Richtmann
26b3d441bb
Check in forgotten FGMRES test with wilson Fermions 2017-11-08 16:39:11 +01:00
Daniel Richtmann
37b777d801
Add test for GMRES solver with staggered fermions 2017-11-08 14:28:48 +01:00
Daniel Richtmann
7f4ed6c2e5
First working version of GMRES + a test for Wilson fermions 2017-11-08 13:56:41 +01:00
Daniel Richtmann
56d32a4afb
Rename misunderstood "rsd_sq" to "rsq" in MR code 2017-11-08 13:51:08 +01:00
Daniel Richtmann
8363edfcdb
Perform some minor changes to GMRES code 2017-11-06 16:17:44 +01:00
Daniel Richtmann
74af31564f
Adapt style of wilson GMRES test to style of wilson MR test 2017-11-06 14:06:45 +01:00
Daniel Richtmann
e0819d395f
Merge remote-tracking branch 'upstream/develop' into feature/new-solver-algorithms 2017-11-06 13:09:36 +01:00
Daniel Richtmann
6f81906b00
Add test for the MR solver with staggered fermions; does not converge atm
TODO: Is this a property of staggered or did I do something wrong?
2017-10-30 16:57:55 +01:00
Daniel Richtmann
a2d83d4f3d
Add test for the MR solver with DW fermions; does not converge atm
TODO: Is this a property of DWF or did I do something wrong?
2017-10-30 16:39:30 +01:00
Daniel Richtmann
89bacb0470
Fix path in MR solver header commentary 2017-10-30 16:16:55 +01:00
Daniel Richtmann
19010ff66a
Merge remote-tracking branch 'upstream/develop' into feature/new-solver-algorithms 2017-10-30 13:16:46 +01:00
paboyle
78e8704eac Shaking out 2017-10-30 00:25:31 +00:00
paboyle
67131d82f2 Get subrank info from communicator constructor 2017-10-30 00:24:11 +00:00
paboyle
615a9448b9 Extended sub comm supported 2017-10-30 00:23:34 +00:00
paboyle
00164f5ce5 : 2017-10-30 00:22:52 +00:00
paboyle
5bf42e1e15 Update 2017-10-30 00:05:21 +00:00
paboyle
84b441800f Merge branch 'develop' into feature/lanczos-reorg 2017-10-27 14:21:38 +01:00