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
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
Daniel Richtmann
e7b1933e88
Add a test for the MR solver 2017-10-27 14:38:57 +02:00
Daniel Richtmann
074db32e54
Fix build of gmres test 2017-10-27 14:08:48 +02:00
Azusa Yamaguchi
034de160bf Staggered updates : Schur fixed and added a unit test for Test_staggered_cg_schur.cc giving stronger check 2017-10-26 20:58:46 +01:00
paboyle
2db05ac214 Test for split/unsplit in isolation 2017-10-26 07:48:03 +01:00
paboyle
d577211cc3 Relax stoppign condition 2017-10-25 23:57:54 +01:00
paboyle
f4336e480a Faster converge time 2017-10-25 23:53:44 +01:00
Daniel Richtmann
1ab8d5cc13
Save two more files 2017-10-24 16:58:05 +02:00
Daniel Richtmann
53cfa44d7a
Save current state 2017-10-24 16:58:03 +02:00
paboyle
9fe6ac71ea Starting reorg of Blocked lanczos 2017-10-11 10:12:07 +01:00
paboyle
bf58557fb1 Block compressed Lanczos 2017-10-10 14:15:11 +01:00
paboyle
10cb37f504 Merge branch 'develop' of https://github.com/paboyle/Grid into develop 2017-10-10 14:09:44 +01:00
Azusa Yamaguchi
1374c943d4 Correct Schur operator called 2017-10-10 13:59:50 +01:00
paboyle
d1c6288c5f Merge branch 'develop' of https://github.com/paboyle/Grid into develop 2017-10-10 13:38:40 +01:00
Azusa Yamaguchi
bb7378cfc3 Schur for staggered 2017-10-10 12:02:18 +01:00
paboyle
153672d8ec Split CG testing 2017-10-09 23:20:58 +01:00
Azusa Yamaguchi
09f4cdb11e Merge branch 'develop' of https://github.com/paboyle/Grid into feature/staggering 2017-10-04 10:51:16 +01:00
Azusa Yamaguchi
1e54882f71 Stagger 2017-10-04 10:51:06 +01:00
paboyle
e5c19e1fd7 RB constructor change 2017-10-02 12:25:52 +01:00
paboyle
a11d0a33d1 Merge branch 'feature/dwf-multirhs' of https://github.com/paboyle/Grid into feature/dwf-multirhs 2017-10-02 11:42:07 +01:00
paboyle
4f8b6f26b4 Merge branch 'develop' into feature/dwf-multirhs 2017-10-02 11:41:49 +01:00
paboyle
073525c5b3 Small patch from cori 2017-10-02 03:38:21 -07:00
paboyle
5918769f97 Subtle Naik term bug updated in Stencil; less on logical && with a function call on right 2017-09-16 12:51:26 +01:00
Azusa Yamaguchi
d9cd4f0273 Staggered multinode block cg debugged. Missing global sum.
Code stalls and resumes on KNL at cambridge. Curious.

CG iterations 23ms each, then 3200 ms pauses. Mean bandwidth reports
as 200MB/s. Comms dominant in the report. However, the time behaviour suggests it
is *bursty*.... Could be swap to disk?
2017-08-23 15:07:18 +01:00
paboyle
ac740f73ce Works on Cori 2017-07-02 16:47:58 -07:00
paboyle
dee68fc728 IO working multiple nodes again. Strategy of all nodes writing metadata is unsafe.
Only one rank should do this. must identify this rank. Means pass communicator to the
Objects.
2017-07-02 23:33:48 +01:00
paboyle
57002924bc NERSC shakeout of this 2017-07-02 14:58:30 -07:00
paboyle
600d7ddc2e Proof of concept : Multi RHS solver, running independent solves on different ranks 2017-06-22 18:54:34 +01:00
paboyle
6ebf9f15b7 Splitting communicators first cut 2017-06-22 08:14:34 +01:00
paboyle
1d7aa673a4 Include BlockCG by default 2017-06-21 21:08:53 +01:00
paboyle
7e35286860 Simplified lanczos, added Eigen diagonalisation.
Curious if we can deprecate dependencly on BLAS.
Will see when we get 48^3 running on our BG/Q port
2017-06-21 02:26:03 +01:00
paboyle
0486ff8e79 Improved the lancos 2017-06-20 18:46:01 +01:00
Azusa Yamaguchi
e9cc21900f Block solver complete for staggered. Now stable on mass 0.003 and
gives 8x (!) speed up on Haswell laptop vs. standard CG for 8 RHS solves.

166 iterations vs. 537 iterations so algorithmic gain + 2x in flop rate gain.

Better than a slap in the face with a wet kipper.
2017-06-20 12:37:41 +01:00
Azusa Yamaguchi
0a8faac271 Fix make tests compile 2017-06-19 22:54:18 +01:00
Azusa Yamaguchi
cfe3cd76d1 Block solver improvements 2017-06-19 14:04:21 +01:00
Guido Cossu
20999c1370 Merge branch 'develop' into feature/hmc_generalise 2017-05-05 12:47:17 +01:00
paboyle
33f0ed1a33 No compile fix 2017-05-05 11:04:30 +01:00
Guido Cossu
3344788fa1 Merge branch 'develop' into feature/hmc_generalise 2017-05-01 12:13:56 +01:00
paboyle
8e161152e4 MultiRHS solver improvements with slice operations moved into lattice and sped up.
Block solver requires a lot of performance work.
2017-04-18 10:51:55 +01:00
paboyle
bf516c3b81 higher precision reduction variables in norm and inner product 2017-04-15 12:27:28 +01:00
paboyle
d80d802f9d MultiRHS solver test 2017-04-10 00:12:12 +09:00
paboyle
3d99b09dba Start of blockCG 2017-04-09 23:42:10 +09:00
Guido Cossu
8c540333d5 Merge branch 'develop' into feature/hmc_generalise 2017-04-05 14:41:04 +01:00
paboyle
6af459cae4 Christoph's coefficients. 2017-03-31 17:07:43 +09:00
paboyle
cb9a297a0a Chulwoo's Zmobius test 2017-03-30 13:30:25 +09:00
paboyle
4b17e8eba8 Merge branch 'develop' into feature/bgq-asm
Conflicts:
	lib/qcd/action/fermion/Fermion.h
	lib/qcd/action/fermion/WilsonFermion.cc
	lib/util/Init.cc
	tests/Test_cayley_even_odd_vec.cc
2017-03-28 04:49:30 -04:00
paboyle
18bde08d1b Merge branch 'feature/staggering' into develop 2017-03-28 15:25:55 +09:00
Chulwoo Jung
0b61f75c9e Adding ZMobius CG test 2017-03-13 00:12:43 -04:00
Guido Cossu
4e34132f4d Correcting modules use in test files 2017-03-10 23:54:53 +09:00
Guido Cossu
7270c6a150 Integrator works now 2017-02-24 17:03:42 +00:00
Guido Cossu
902afcfbaf Adding metric and the implicit steps 2017-02-21 11:30:57 +00:00
Guido Cossu
97a6b61551 Covariant laplacian and implicit integration 2017-02-20 11:17:27 +00:00
Guido Cossu
bafb101e4f Testing different versions of the Laplacian 2017-02-13 15:38:11 +00:00
Guido Cossu
08fdf05528 Added and tested the covariant laplacian + CG solver 2017-02-13 15:05:01 +00:00
Guido Cossu
c3d7ec65fa All tests compile. 2017-02-10 10:27:51 +00:00
Guido Cossu
e0571c872b Merge branch 'develop' into feature/hmc_generalise 2017-02-09 16:12:00 +00:00
a37e71f362 New automatic implementation of gamma matrices, Meson and SeqGamma are broken 2017-01-23 19:13:43 -08:00
Guido Cossu
5214846341 Adding a resource manager 2016-12-22 12:41:56 +00:00
Guido Cossu
ce1a115e0b Removing redundant arguments for integrator functions, step 1 2016-12-20 17:51:30 +00:00
Guido Cossu
af0ccdd8e9 Moving output order 2016-12-14 02:02:42 +00:00
Guido Cossu
2fb92dbc6e Cleaning up previous debug lines 2016-12-13 07:53:43 +00:00
Guido Cossu
5c74b6028b Commit for debugging, lot of IO 2016-12-13 06:35:30 +00:00
Guido Cossu
e0be2b6e6c Adding a new tests for the Ls vec CG 2016-12-13 04:59:18 +00:00
Azusa Yamaguchi
389e0a77bd Staggerd Fermion 5D 2016-11-29 13:13:56 +00:00
Guido Cossu
977b0a6dd9 Merge branch 'develop' into feature/hmc_generalise 2016-10-20 17:04:41 +01:00
Guido Cossu
2e453dfbf5 Added some instrumentation to benchmark the force computation 2016-10-06 17:52:45 +01:00
Guido Cossu
c065e454c3 Adding Binrary IO, untested 2016-10-06 10:12:11 +01:00
629283726b build system: local Grid link flag moved to configure.ac 2016-08-03 15:07:42 +01:00
9e5b934d21 improved LAPACK configuration 2016-08-02 17:26:54 +01:00
e9f30cab2c first working version for the new build system 2016-07-30 17:53:18 +01:00
paboyle
a0676beeb1 Open up dependency on Eigen and FFTW 2016-07-07 22:31:07 +01:00