paboyle
de3e79d300
red black for Ls vectorised is 4d red black. Update accordingly now I've made this choice
2016-07-14 23:49:42 +01:00
paboyle
adbc7c1188
Adding files for multiple implementations (cache opt) and Ls vectorisation
...
of the 5D cayley form chiral fermions for the 5d matrix. With Ls entirely
in the vector direction, s-hopping terms involve rotations.
The serial dependence of the LDU inversion for Mobius and 4d even odd
checkerboarding is removed by simply applying Ls^2 operations (vectorised
many ways) as a dense matrix operation.
This should give similar throughput but high flops (non-compulsory flops)
but enable use of the KNL cache friendly kernels throughout the code.
Ls is still constrained to be a multiple of Nsimd, which is as much as 8 for AVX512
with single precision.
2016-07-14 22:59:21 +01:00
Guido Cossu
9dc345e8e8
Debugged smearing and adding HMC functions for hirep
2016-07-13 17:51:18 +01:00
Guido Cossu
a9ae30f868
Added representations definitions for the HMC
2016-07-12 13:36:10 +01:00
paboyle
ef97e32152
Adding persistent communicators
2016-07-08 17:16:08 +01:00
Guido Cossu
5028969d4b
Added generators for the adjoint representation
2016-07-08 15:40:11 +01:00
paboyle
a0676beeb1
Open up dependency on Eigen and FFTW
2016-07-07 22:31:07 +01:00
Guido Cossu
3c49ddfaa4
Merge branch 'temporary-smearing' into develop
2016-07-07 14:04:59 +01:00
Guido Cossu
ffb8b3116c
Tested smeared RHMC Wilson1p1, accepting
2016-07-07 11:49:36 +01:00
Christopher Kelly
713520d3d2
Added tester for mixed CG
2016-07-06 16:18:19 -04:00
Christopher Kelly
85ed8175cb
Implemented mixed precision CG. Fixed filelist to exclude lib/Old directory and include Config.h.
2016-07-06 15:57:04 -04:00
Guido Cossu
e87182cf98
Debugged the copy constructor of the Lattice class
2016-07-06 15:31:00 +01:00
Guido Cossu
e3d5319470
Debugged the real() and imag() functions and added tests to Test_Simd
2016-07-06 14:16:03 +01:00
Guido Cossu
3e3b367aa9
Small changes in the Log files
2016-07-05 15:05:28 +01:00
Guido Cossu
9cb90f714e
Merge remote-tracking branch 'origin/develop' into temporary-smearing
2016-07-04 17:28:40 +01:00
Guido Cossu
6ce174cd60
Testing smearing for RHMC routines
2016-07-04 16:36:49 +01:00
Guido Cossu
17ca5240f7
Testet smeared EOWilsonRatio, accepts
2016-07-04 16:25:15 +01:00
Guido Cossu
2daffdf95d
Tested smeared WilsonRatio action, accepts
2016-07-04 16:17:28 +01:00
Guido Cossu
149f826601
Tested smearing for Nf2 WilsonFermionAction, non EO: accepts
2016-07-04 16:09:19 +01:00
Guido Cossu
565e9329ba
Changed the colouring classes
2016-06-30 16:51:03 +01:00
paboyle
8ac021de73
Added a test an fixed it for red black precon Ls innermost vectorised DWF
2016-06-07 13:16:56 -07:00
paboyle
53d06046b0
Compiling updates for KNL
2016-06-03 03:47:54 -07:00
1c4c287925
Make.inc generation fix
2016-05-01 11:18:25 -07:00
paboyle
5341977948
IMCI fixes. Thought I had committed these. The "real" disambiguation
...
between std::real and Grid::real shouldn't have been necessary and I don't
know why only the icpc v16.0 on babbage hits it.
May need a longer term rename of Grid::real or some careful EnableIf work.
2016-04-30 03:34:16 -07:00
344d251fc4
re-fix of test Make.inc
2016-04-30 00:24:50 -07:00
f6c53e5039
Merge commit '1e554350acae0e67fa7177ed0db9d4f684a54af2'
2016-04-30 00:17:52 -07:00
ba09cbae3e
function to read std::vector from a string (blank separated values)
2016-04-30 00:15:44 -07:00
paboyle
8fd8bc25e9
simd 5th dim with rotation
2016-04-19 15:39:00 -07:00
cf2f69812b
build system fix
2016-04-14 15:13:55 +01:00
neo
339be37dba
Debugging smeared HMC
2016-04-13 17:00:14 +09:00
neo
a87b744621
HMC runs but does not accept with smearing on
2016-04-07 16:45:11 +09:00
paboyle
b1192a8908
Benchmark_zmm added
2016-04-06 03:00:07 -07:00
97d0d56bcb
Debugging Smearing routines (set_fj)
2016-04-06 17:58:43 +09:00
4b1cf580e0
Debugging the Smearing routines
2016-04-05 16:19:30 +09:00
paboyle
f7b1060aed
Use headers to clear macros and sub precision
2016-03-31 14:52:37 +01:00
paboyle
1ecbf9794d
Merge branch 'master' of https://github.com/paboyle/Grid
2016-03-30 08:37:55 +01:00
paboyle
2ded354403
configure
2016-03-30 00:17:43 -07:00
paboyle
340428a1fe
Eigen fixes and HDCR work
2016-03-30 00:16:02 -07:00
paboyle
c77b7ee897
AddSub based alternate SU3 routine
2016-03-28 17:55:22 -06:00
paboyle
61469252fe
AVX512 shaken out under SDE
2016-03-28 00:37:12 -06:00
paboyle
02198ac5b5
Tolerance and more coverage
2016-03-28 00:36:17 -06:00
paboyle
165bffc2e7
Avx512 changes for assembler kernels
2016-03-26 22:25:45 -06:00
azusa
f54e0ec9bd
Try lanczos to set up hdcr subspace
2016-03-17 10:36:16 +00:00
paboyle
a155a362da
Update from HDCR tuning
2016-03-16 02:31:04 -07:00
paboyle
090e7aa930
Merge remote-tracking branch 'origin/chulwoo-dec12-2015'
...
Merge Chulwoo's Lanczos related improvements.
Merge Nd!=4 fixes for pure gauge HMC from Evan.
2016-03-08 09:55:14 +00:00
paboyle
2dce9c3cff
HDCR running on 16^3 with 2x-3x speed up.
2016-03-08 01:01:50 -08:00
Jung
1e72bd8b8c
Saving Lanczos testing program
2016-03-08 01:49:16 -05:00
paboyle
dc72293398
More timing info
2016-03-06 10:46:55 -08:00
2d8bb356e3
Smearing routines compile (still untested)
2016-02-25 02:43:59 +09:00
a7251f28c7
Stout smearing compiles (untested)
2016-02-24 03:16:50 +09:00
Jung
9f0d9ade68
Added configure flag for LAPACK. Tested ImplicitlyRestartedLanczos::calc()
...
Checking in before cleaning up
2016-02-20 02:50:32 -05:00
Peter Boyle
b6f6da923e
Change to the compressor & stencil interface a little.
2016-02-17 18:27:11 -06:00
Peter Boyle
7f927a541c
Shmem related fixes for shmem compile
2016-02-11 07:37:39 -06:00
Jung
411ac49dd7
GparityWilsonTM typedef added. Not yet tested
...
Conflicts:
configure
lib/qcd/action/fermion/WilsonKernels.h
2016-01-25 01:36:28 -05:00
Jung
b8fb05a422
Addtional routines for Lanczos (SYM2, Chebyshef)..
2016-01-25 01:26:25 -05:00
Jung
5c57d4f403
Merge branch 'master' of https://github.com/paboyle/Grid into scidac1_2
...
Conflicts:
lib/qcd/action/fermion/WilsonKernels.h
2016-01-11 11:36:45 -05:00
paboyle
d19321dfde
Overlap comms compute changes
2016-01-10 19:20:16 +00:00
paboyle
aae8bf31a7
Global edit adding copyright and license info to every source file.
2016-01-02 14:51:32 +00:00
paboyle
491a708225
Twist params set up correctly in gparity even odd 2f DWF + Wilson HMC test
2016-01-02 14:02:41 +00:00
paboyle
5a80930dd2
Charge conjugation boundary conditions for gauge fields implemented as a policy
...
class, changing the nature of covariant Cshifts used in
plaquettes, rectangles and staples.
As a result same code is used for the plaq and rect action independent of the BC type.
Should probably isolate the BC in a separate class that Gimpl takes as a template param.
Do the same with smearing policies.
This would then allow composition of BC with smearing etc....
2016-01-02 13:37:25 +00:00
paboyle
145a295231
Bug fix for stencil with large shifts (3+), would be important to naik term for example but did not
...
impact Wilson based nearest neighbour stencils.
2015-12-30 19:29:48 +00:00
Azusa Yamaguchi
78c4e862ef
Plaq, Rectangle, Iwasaki, Symanzik and DBW2 workign and HMC regresses to http://arxiv.org/pdf/hep-lat/0610075.pdf
2015-12-28 16:38:31 +00:00
paboyle
0afcf1cf13
Moved all the HMC tests over to using a single HmcRunner class that manages checkpoint strategies and such like
2015-12-22 11:19:25 +00:00
paboyle
08edbb5cbe
HMC bit repro across checkpoints. Fixed parallel RNG issue with threading.
...
Conclusion: c++11 distributions not thread safe and must us distinct dist as well as distinct engine
per site. Makes sense when you think of box muller. Also added a reset of dist on fill to ensure
repro across checkpoints.
2015-12-22 08:54:40 +00:00
paboyle
31ca609d12
HMC checkpointing .
...
Need a general HMC framework to work in restart.
2015-12-20 02:29:51 +00:00
paboyle
5710966324
Options to use mersenne twister OR ranlux48 via --enable-rng flag at configure time.
...
Can save and restore RNG state via new (serial) I/O routines in a NERSC header style file.
Store a Parallel (one per site) and a single serial RNG file.
2015-12-19 18:32:25 +00:00
paboyle
e108e708a3
Wilson TM tests and compiles in
2015-12-17 23:06:33 +00:00
paboyle
67ccb043f1
Added TM fermions for DSDR etc..
2015-12-17 22:34:28 +00:00
paboyle
34a0fde2ad
Fixes to fermion force terms after sign of gamma_mu (0...3) change.
...
Thought I had already committed these.
Believe I have got the Gparity fermion force working.
* tests/Test_gpdwf_force.cc -- correctly predicts dS for two flavour pseudofermion
based on a small dt update of U field.
* tests/Test_hmc_EODWFRatio_Gparity.cc -- ran 1 trajectory on 8^4 with dH=0.21.
Need to accumulate a full plaquette log to believe fully which will take some hours of run time.
2015-12-15 23:14:12 +00:00
paboyle
af855cc129
Updating to fix peek poke to checkerboarded arrays since Chulwoo needs this.
2015-12-12 07:11:46 +00:00
paboyle
47fe6b5a7c
Merge branch 'master' of https://github.com/aportelli/Grid into aportelli-master
2015-12-10 23:14:52 +00:00
paboyle
b3ef09a54d
Merge branch 'master' of https://github.com/paboyle/Grid
2015-12-10 23:05:38 +00:00
paboyle
8ed3940048
New files for Chroma regression
2015-12-10 22:55:59 +00:00
paboyle
3ce10aa975
Fix a regression failure on Mobius; chroma regression added
2015-12-10 22:55:00 +00:00
Azusa Yamaguchi
a32a59fc43
Merge branch 'master' of https://github.com/paboyle/Grid
2015-12-09 12:48:44 +00:00
200de272ed
IO: serialisable enums
2015-12-08 13:54:00 +00:00
Peter Boyle
26161addd0
Warn fix clang
2015-11-29 11:19:12 +00:00
paboyle
93356fd246
No compile fixes on gcc/Cray
2015-11-29 03:14:44 -08:00
Peter Boyle
f35fc4b76c
No compile fixes
2015-11-29 10:59:11 +00:00
paboyle
ca42fe6d32
Merge branch 'master' of github.com:paboyle/Grid
...
Merge done
Conflicts:
lib/serialisation/XmlIO.h
tests/Test_stencil.cc
2015-11-28 17:03:43 -08:00
paboyle
b8a38f292d
Domain decomposition SAP precon implemented and working but not as fast as I hoped.
2015-11-28 17:01:51 -08:00
Peter Boyle
bc4b252883
Merge branch 'master' of https://github.com/paboyle/Grid
2015-11-29 00:33:01 +00:00
Peter Boyle
fff0f00552
Modest changes
2015-11-29 00:31:57 +00:00
Peter Boyle
42e6055746
Try 1/x for hermitian indef approx
2015-11-29 00:31:19 +00:00
Peter Boyle
01231ce824
Stencil fix
2015-11-29 00:31:02 +00:00
Peter Boyle
41e8038c56
Makefile update
2015-11-29 00:30:19 +00:00
Azusa Yamaguchi
967be91692
update merge
2015-11-26 09:51:41 +00:00
06f8ecea04
Merge commit '899ca41cb8c8f47771bfd37cd895cbc2184e5560'
2015-11-16 18:16:25 +00:00
af19118113
new I/O interface
2015-11-16 18:14:37 +00:00
paboyle
7522e3f0dd
Stencil interface change fix no compile
2015-11-07 00:05:10 -08:00
Peter Boyle
f85b9ddd97
Remove nonfunctioning lanczos
2015-11-06 05:21:21 -06:00
paboyle
16c7993434
Merge branch 'master' of github.com:paboyle/Grid
...
Conflicts:
lib/simd/Grid_avx512.h
lib/simd/Grid_imci.h
2015-11-04 03:32:10 -08:00
paboyle
5aafdd7e1a
Inline asm for KNL, KNC, Skylake Xeon
2015-11-04 03:21:15 -08:00
Peter Boyle
dfc1de6f60
Merge branch 'master' of github.com:paboyle/Grid
2015-11-04 05:14:26 -06:00
Peter Boyle
f87526a04f
Make ICC happy
2015-11-04 05:14:03 -06:00
Peter Boyle
9183920e8b
Added an even odd stencil test, shook out a problem with spread out x-direction.
...
Generalise test to allow different types of "Field" to be used.
2015-11-04 10:03:04 +00:00
Peter Boyle
01f286c9fe
Better testing for red black cshift which was sufficient to chase down a spread out x-direction problem.
2015-11-04 10:02:17 +00:00
1b22ce5720
tests Make.inc fix
2015-10-27 10:47:52 +00:00
Peter Boyle
41299da406
files added
2015-10-09 01:01:46 +02:00
Peter Boyle
2d95dac6b6
Lanczos untested/partially tested additions. In middle of shake out but at least compiles
2015-10-09 00:40:25 +02:00
Peter Boyle
44fecd4d8d
Lanczos test
2015-10-09 00:39:21 +02:00
paboyle
3a478e5f2a
No compile babbage fix
2015-09-30 16:03:05 -07:00
Peter Boyle
9f4f65cb46
Added a decoupled memory system benchmark to remove thread synch overhead
2015-09-26 18:23:57 -07:00
Peter Boyle
5ef42add2d
Changes to remove warnings under icc; disambiguate AVX512 from IMCI correctly
...
and drop swizzles in AVX512. Don't know why these compiled.
2015-09-23 05:23:45 -07:00
Peter Boyle
2f38ebc446
Reintroducing the hand unrolled loops
2015-09-08 17:45:30 +01:00
Peter Boyle
357c6ab46d
Reunitarise. Complete the HMC and integrator changes.
2015-08-31 16:32:04 +01:00
Peter Boyle
755dca9533
Added ForceGradient integrator. dH dropped so seems to work. Will only
...
believe it is right once I have pulled a dt^4 error scaling plot out.
2015-08-31 06:23:02 +01:00
Peter Boyle
29fd004d54
Unified integrator and integrator algorithm into virtual class used as a policy for the
...
HMC.
2015-08-30 13:39:19 +01:00
Peter Boyle
aa52fdadcc
Global edit on HMC sector -- making GaugeField a template parameter and
...
preparing to pass integrator, smearing, bc's as policy classes to hmc.
Propose to unify "integrator" and integrator algorithm in a base/derived
way to override step. Want to read through ForceGradient to ensure
that abstraction covers the force gradient case.
2015-08-30 12:18:34 +01:00
Peter Boyle
76d752585b
Started a tidy up in the HMC sector. Now comfortable with the two level integrators;
...
to a little figure out what Guido had done & why -- but there is a neat saving of force
evaluations across the nesting time boundary making use of linearity of the leapP in dt.
I cleaned up the printing, reduced the volume of code, in the process sharing printing
between all integrators. Placed an assert that the total integration time for all integrators
must match at end of trajectory.
Have now verified e-dH = 1 for nested integrators in Wilson/Wilson runs with both
Omelyan and with Leapfrog so substantial confidence gained.
2015-08-29 17:18:43 +01:00
Peter Boyle
dc814f30da
Binary IO file for generic Grid array parallel I/O.
...
Number of IO MPI tasks can be varied by selecting which
dimensions use parallel IO and which dimensions use Serial send to boss
I/O.
Thus can neck down from, say 1024 nodes = 4x4x8x8 to {1,8,32,64,128,256,1024} nodes
doing the I/O.
Interpolates nicely between ALL nodes write their data, a single boss per time-plane
in processor space [old UKQCD fortran code did this], and a single node doing all I/O.
Not sure I have the transfer sizes big enough and am not overly convinced fstream
is guaranteed to not give buffer inconsistencies unless I set streambuf size to zero.
Practically it has worked on 8 tasks, 2x1x2x2 writing /cloning NERSC configurations
on my MacOS + OpenMPI and Clang environment.
It is VERY easy to switch to pwrite at a later date, and also easy to send x-strips around from
each node in order to gather bigger chunks at the syscall level.
That would push us up to the circa 8x 18*4*8 == 4KB size write chunk, and by taking, say, x/y non
parallel we get to 16MB contiguous chunks written in multi 4KB transactions
per IOnode in 64^3 lattices for configuration I/O.
I suspect this is fine for system performance.
2015-08-26 13:40:29 +01:00
Peter Boyle
476da3ee62
Separated IO reader/writers into a proper abstract base,
...
derived relationship. Have Text/Binary/Xml versions of
Reader & Writer.
Any new Reader/Writer class inheriting the interface can give object serialisation
to any desired format now.
new file: lib/serialisation/BaseIO.h
modified: lib/serialisation/BinaryIO.h
modified: lib/serialisation/Serialisation.h
modified: lib/serialisation/TextIO.h
modified: lib/serialisation/XmlIO.h
The test uses the Xml, Binary and Text formats as well as cout << Object.
2015-08-21 10:06:33 +01:00
Peter Boyle
35818fdf6c
Text and Binary readers
2015-08-20 23:04:38 +01:00
Peter Boyle
ab81a25073
XMLReader implementation and a virtual Reader/Writer template framework.
...
Test_serialisation has an example of *code* *free* object serialisation
to both ostream and to XML using macro magic.
Implementing TextReader/TextWriter, YAML, JSON etc.. should be trivial
and we can use configure time options to select the default "Reader" typedef.
Present done with
"using XMLPolicy::Reader"
to pick up the default serialisation strategy.
2015-08-20 16:21:26 +01:00
Peter Boyle
8b070ae54c
Gparity now accepting twists through constructor
2015-08-19 11:26:01 +01:00
Peter Boyle
4e085dd0ed
Domain wall even-odd 2f HMC with wilson gauge and PV 2f ratio now running and giving small dH.
...
Azusa is working hard on the rectangle term and we'll hopefully start reproducing plaquettes
from RBC-UKQCD parameters soon !
My new laptop is pretty warm and is starting to groan ;)
2015-08-19 10:26:07 +01:00
Peter Boyle
e8d63c9178
Merge branch 'master' of https://github.com/paboyle/Grid
2015-08-19 05:49:00 +01:00
Peter Boyle
c54c086f17
Even odd preconditioned one flavour ratio
...
(no support for non-const EE schur block)
2015-08-19 05:46:58 +01:00
Peter Boyle
dd6bb73ee0
Added one flavour rational ratios (unprec)
2015-08-19 04:58:40 +01:00
Peter Boyle
fc160eeccc
Added one flavour rational ratios (unprec)
2015-08-19 04:58:40 +01:00
Peter Boyle
48db72259e
EvenOdd schur decomposed mpcdagmpc version of rhmc determinant.
...
dH is also small and plaquette looks right.
2015-08-18 18:37:39 +01:00
Peter Boyle
570150f1d3
EvenOdd schur decomposed mpcdagmpc version of rhmc determinant.
...
dH is also small and plaquette looks right.
2015-08-18 18:37:39 +01:00
Peter Boyle
9c7840c3a7
rhmc for 1+1 wilson is conserving dH~0.
...
A good days work ;)
2015-08-18 16:58:56 +01:00
Peter Boyle
aef98b7226
rhmc for 1+1 wilson is conserving dH~0.
...
A good days work ;)
2015-08-18 16:58:56 +01:00
Peter Boyle
bdcbfe9310
Even Odd two flavour ratio added and dH == small
2015-08-18 10:37:08 +01:00
Peter Boyle
9306921ded
Even Odd two flavour ratio added and dH == small
2015-08-18 10:37:08 +01:00
Peter Boyle
6212807a77
Small dh obtained in two flavour ratio so looks ok.
2015-08-18 09:21:29 +01:00
Peter Boyle
7622f0c441
Small dh obtained in two flavour ratio so looks ok.
2015-08-18 09:21:29 +01:00
Peter Boyle
155c164b0c
* Finished the template/policy style introduction of gparity, except the gparity force terms.
...
So valence sector looks ok.
FermionOperatorImpl.h provides the policy classes.
Expect HMC will introduce a smearing policy and a fermion representation change policy template
param. Will also probably need multi-precision work.
* HMC is running even-odd and non-checkerboarded (checked 4^4 wilson fermion/wilson gauge).
There appears to be a bug in the multi-level integrator -- <e-dH> passes with single level but
not with multi-level.
In any case there looks to be quite a bit to clean up.
This is the "const det" style implementation that is not appropriate yet for clover since
it assumes that Mee is indept of the gauge fields. Easily fixed in future.
2015-08-15 23:25:49 +01:00
Peter Boyle
55cfc89459
* Finished the template/policy style introduction of gparity, except the gparity force terms.
...
So valence sector looks ok.
FermionOperatorImpl.h provides the policy classes.
Expect HMC will introduce a smearing policy and a fermion representation change policy template
param. Will also probably need multi-precision work.
* HMC is running even-odd and non-checkerboarded (checked 4^4 wilson fermion/wilson gauge).
There appears to be a bug in the multi-level integrator -- <e-dH> passes with single level but
not with multi-level.
In any case there looks to be quite a bit to clean up.
This is the "const det" style implementation that is not appropriate yet for clover since
it assumes that Mee is indept of the gauge fields. Easily fixed in future.
2015-08-15 23:25:49 +01:00
Peter Boyle
045c85823b
Extra test
2015-08-14 13:18:59 +01:00
Peter Boyle
e8462790a9
Extra test
2015-08-14 13:18:59 +01:00
Peter Boyle
cc63078de5
Gparity works now even if simd distributed in a Gparity twist direction.
...
Tested by doubling lattice in t-direction.
2015-08-14 12:57:42 +01:00
Peter Boyle
4dc7c36aa8
Gparity works now even if simd distributed in a Gparity twist direction.
...
Tested by doubling lattice in t-direction.
2015-08-14 12:57:42 +01:00
Peter Boyle
e6bed000c3
Gparity valence test now working.
...
Interface in FermionOperator will change a lot in future
2015-08-14 00:01:04 +01:00
Peter Boyle
7d3512ab21
Gparity valence test now working.
...
Interface in FermionOperator will change a lot in future
2015-08-14 00:01:04 +01:00
Peter Boyle
6ab73c5512
Gparity test added; partial implementation -- this is Chris K's doubled lattice only
...
and have to regress this with the 2 flavour implementation.
2015-08-12 09:49:33 +01:00
Peter Boyle
9183380946
Gparity test added; partial implementation -- this is Chris K's doubled lattice only
...
and have to regress this with the 2 flavour implementation.
2015-08-12 09:49:33 +01:00
Peter Boyle
1b3c93e22a
Rework/global edit to enforce type templating of fermion operators.
...
Allows multi-precision work and paves the way for alternate BC's and such like
allowing for example G-parity which is important for K pipi programme.
In particular, can drive an extra flavour index into the fermion fields
using template types.
2015-08-10 20:47:44 +01:00
Peter Boyle
84a66476ab
Rework/global edit to enforce type templating of fermion operators.
...
Allows multi-precision work and paves the way for alternate BC's and such like
allowing for example G-parity which is important for K pipi programme.
In particular, can drive an extra flavour index into the fermion fields
using template types.
2015-08-10 20:47:44 +01:00
Peter Boyle
2be8df93ad
Adding components for even odd decomposed determinant in HMC.
...
dH not yet conserved, so something wrong in the eo force code still
2015-08-07 08:37:15 +01:00
Peter Boyle
a01aa156b9
Adding components for even odd decomposed determinant in HMC.
...
dH not yet conserved, so something wrong in the eo force code still
2015-08-07 08:37:15 +01:00
Peter Boyle
b5a483ae60
Continued fraction overlap, partial fraction overlap force terms have a successful
...
test passing.
2015-08-01 22:48:21 +09:00
Peter Boyle
6ec087d43c
Continued fraction overlap, partial fraction overlap force terms have a successful
...
test passing.
2015-08-01 22:48:21 +09:00
Peter Boyle
bb372a6a8a
Merge problem fixed
2015-08-01 22:30:00 +09:00
Peter Boyle
772cd8199d
Merge problem fixed
2015-08-01 22:30:00 +09:00
Peter Boyle
5e9bef8a1b
Merge branch 'master' of https://github.com/paboyle/Grid
...
Conflicts:
lib/Make.inc
lib/qcd/hmc/HMC.h
tests/Make.inc
tests/Test_hmc_WilsonFermionGauge.cc
2015-08-01 22:24:54 +09:00
Peter Boyle
35feb93f56
Merge branch 'master' of https://github.com/paboyle/Grid
...
Conflicts:
lib/Make.inc
lib/qcd/hmc/HMC.h
tests/Make.inc
tests/Test_hmc_WilsonFermionGauge.cc
2015-08-01 22:24:54 +09:00
Peter Boyle
bb7d8535aa
Test for DWF force term passes
2015-08-01 22:07:05 +09:00
Peter Boyle
f37552a385
Test for DWF force term passes
2015-08-01 22:07:05 +09:00
Peter Boyle
848104b1a9
Changes making force term test for DWF pass.
2015-08-01 22:06:07 +09:00
Peter Boyle
2157a6919a
Changes making force term test for DWF pass.
2015-08-01 22:06:07 +09:00
Peter Boyle
8627e237c8
Jackson smoothed chebyshev and (untested) completion of force terms
...
for Cayley, Partial and Cont fraction dwf and overlap.
have even odd and unprec forces.
2015-08-01 05:58:35 +09:00
Peter Boyle
1d67d29183
Jackson smoothed chebyshev and (untested) completion of force terms
...
for Cayley, Partial and Cont fraction dwf and overlap.
have even odd and unprec forces.
2015-08-01 05:58:35 +09:00
neo
702ab15b6a
Amending a merge mistake
2015-07-30 17:21:42 +09:00
neo
3dd846c93c
Amending a merge mistake
2015-07-30 17:21:42 +09:00
neo
bcdc67b152
Small change in the HMC interface.
...
Example of multiple levels in the WilsonFermion hmc test.
Merge remote-tracking branch 'upstream/master'
Conflicts:
lib/qcd/hmc/HMC.h
lib/qcd/hmc/integrators/Integrator.h
lib/qcd/hmc/integrators/Integrator_algorithm.h
tests/Test_simd.cc
2015-07-30 17:16:57 +09:00
neo
490009745c
Small change in the HMC interface.
...
Example of multiple levels in the WilsonFermion hmc test.
Merge remote-tracking branch 'upstream/master'
Conflicts:
lib/qcd/hmc/HMC.h
lib/qcd/hmc/integrators/Integrator.h
lib/qcd/hmc/integrators/Integrator_algorithm.h
tests/Test_simd.cc
2015-07-30 17:16:57 +09:00
Peter Boyle
68d9463be5
Bug in two flav pseudofermion corrected to reimport gauge field upon rejection.
...
exp(-DeltaH) = 1 now, and plaquette is sensible. Will reproduce an old Wilson Gauge
Wilson Fermion SCRI plaquette with precision in mass matching shortly.
2015-07-29 21:02:07 +09:00
Peter Boyle
9ff0b2987c
Bug in two flav pseudofermion corrected to reimport gauge field upon rejection.
...
exp(-DeltaH) = 1 now, and plaquette is sensible. Will reproduce an old Wilson Gauge
Wilson Fermion SCRI plaquette with precision in mass matching shortly.
2015-07-29 21:02:07 +09:00
Peter Boyle
0b603225d1
Two flavour HMC for Wilson/Wilson is conserving energy.
...
Still to check plaq and <e(-dH)>, but nevertheless this is
progress
2015-07-29 17:53:39 +09:00
Peter Boyle
4fe110bd07
Two flavour HMC for Wilson/Wilson is conserving energy.
...
Still to check plaq and <e(-dH)>, but nevertheless this is
progress
2015-07-29 17:53:39 +09:00
Peter Boyle
f4c74e34d8
Committing incomplete work for parameter file I/O.
...
MacroMagic.h is central. Guido and I plan to move
over to generating virtual (XML, JSON, YAML, text, binary) encoding
from macro based system.
2015-07-27 18:32:28 +09:00
Peter Boyle
4cc2ef84d3
Committing incomplete work for parameter file I/O.
...
MacroMagic.h is central. Guido and I plan to move
over to generating virtual (XML, JSON, YAML, text, binary) encoding
from macro based system.
2015-07-27 18:32:28 +09:00
Peter Boyle
36b8f35eed
Elemental force term for Wilson dslash added and tests thereof passing.
...
Now need to construct pseudofermion two flavour, ratio, one flavour, ratio
action fragments.
2015-07-26 10:54:38 +09:00
Peter Boyle
d9d4c5916a
Elemental force term for Wilson dslash added and tests thereof passing.
...
Now need to construct pseudofermion two flavour, ratio, one flavour, ratio
action fragments.
2015-07-26 10:54:38 +09:00
Peter Boyle
5e370db6c5
Sizable improvement in multigrid for unsquared.
...
6000 matmuls CG unprec
2000 matmuls CG prec (4000 eo muls)
1050 matmuls PGCR on 16^3 x 32 x 8 m=.01
Substantial effort on timing and logging infrastructure
2015-07-24 01:31:13 +09:00
Peter Boyle
d1afebf71e
Sizable improvement in multigrid for unsquared.
...
6000 matmuls CG unprec
2000 matmuls CG prec (4000 eo muls)
1050 matmuls PGCR on 16^3 x 32 x 8 m=.01
Substantial effort on timing and logging infrastructure
2015-07-24 01:31:13 +09:00
Peter Boyle
5b475d5e08
5x speed up now
2015-07-22 00:30:05 +09:00
Peter Boyle
11c99d5e66
5x speed up now
2015-07-22 00:30:05 +09:00
neo
479912a5ed
Merge remote-tracking branch 'upstream/master'
2015-07-21 17:17:50 +09:00
neo
5fc6af1c77
Merge remote-tracking branch 'upstream/master'
2015-07-21 17:17:50 +09:00
Peter Boyle
987801c86d
Merge
2015-07-21 13:56:22 +09:00
Peter Boyle
4e94ddad46
Merge
2015-07-21 13:56:22 +09:00
Peter Boyle
98dfc9254f
This file is being developed and will remain hacky until the new algorithm
...
is complete
2015-07-21 13:52:23 +09:00
Peter Boyle
487fde8496
This file is being developed and will remain hacky until the new algorithm
...
is complete
2015-07-21 13:52:23 +09:00
neo
ab916d80fd
More NEON functionalities
2015-07-21 11:52:15 +09:00
neo
9adaeb061a
More NEON functionalities
2015-07-21 11:52:15 +09:00
neo
1e9317e5cf
Simplifying HMC syntax for the final user
2015-07-06 18:32:20 +09:00
neo
0f21c38ff8
Simplifying HMC syntax for the final user
2015-07-06 18:32:20 +09:00
neo
510f55ba30
Rearranging files in hmc
2015-07-06 16:46:43 +09:00
neo
fa42b652e5
Rearranging files in hmc
2015-07-06 16:46:43 +09:00
neo
f95db88d19
Added minimum norm integrator
...
Little rearrangement of HMC and integrator classes
2015-07-06 16:17:32 +09:00
neo
68fe0769a1
Added minimum norm integrator
...
Little rearrangement of HMC and integrator classes
2015-07-06 16:17:32 +09:00
neo
12e1682a87
HMC for Wilson Gauge action works
...
Fixed bug in momenta generation
2015-07-06 12:58:49 +09:00
neo
808f5820fa
HMC for Wilson Gauge action works
...
Fixed bug in momenta generation
2015-07-06 12:58:49 +09:00
neo
6261770f59
Debugged vector version of ProjectOnGroup
2015-07-06 02:24:58 +09:00
neo
0ffcdf6204
Debugged vector version of ProjectOnGroup
2015-07-06 02:24:58 +09:00
neo
7a4ed7a867
HMC ready but untested
2015-07-04 17:47:50 +09:00
neo
e6087e1820
HMC ready but untested
2015-07-04 17:47:50 +09:00
neo
250965c6ca
More progress in the HMC construction
2015-07-04 02:43:14 +09:00
neo
59be55c0ab
More progress in the HMC construction
2015-07-04 02:43:14 +09:00
neo
55f05a778f
Skeleton of HMC/Integrators
2015-07-03 16:51:41 +09:00
neo
ab3ad78ece
Skeleton of HMC/Integrators
2015-07-03 16:51:41 +09:00
Peter Boyle
ef0ec1d0b2
Merge branch 'master' of https://github.com/paboyle/Grid
2015-07-01 22:51:04 +01:00
Peter Boyle
31a0c8d783
Merge branch 'master' of https://github.com/paboyle/Grid
2015-07-01 22:51:04 +01:00
Peter Boyle
98b84d230a
Change the SIMD command correctly with precision = double vs. single and
...
connect the "Real" default precisoin to a configure flag.
Have RealF, RealD and Real types, where Real is compile target dependent single/double,
RealF is single and RealD is double etc..
2015-07-01 22:45:15 +01:00
Peter Boyle
638d2cda11
Change the SIMD command correctly with precision = double vs. single and
...
connect the "Real" default precisoin to a configure flag.
Have RealF, RealD and Real types, where Real is compile target dependent single/double,
RealF is single and RealD is double etc..
2015-07-01 22:45:15 +01:00
paboyle
c4777879e6
Remove dependency on wrong file
2015-07-01 13:04:02 +01:00
paboyle
61c3491b8b
Remove dependency on wrong file
2015-07-01 13:04:02 +01:00
Peter Boyle
e164ed6f12
Big commit fixing nocompiles in defective C++11 compilers (gcc, icpc). stared getting to
...
near the bleeding edge I guess
2015-06-30 15:17:27 +01:00
Peter Boyle
03ca506a3d
Big commit fixing nocompiles in defective C++11 compilers (gcc, icpc). stared getting to
...
near the bleeding edge I guess
2015-06-30 15:17:27 +01:00
Peter Boyle
59cd42c164
big commit fixing nocompiles in defective C++11 compilers (gcc, icpc). stared getting to
...
near the bleeding edge I guess
2015-06-30 15:01:26 +01:00
Peter Boyle
cd2fb68905
big commit fixing nocompiles in defective C++11 compilers (gcc, icpc). stared getting to
...
near the bleeding edge I guess
2015-06-30 15:01:26 +01:00
Peter Boyle
5f8f0bc792
Some small steps towards a multigrid
2015-06-22 12:49:44 +01:00
Peter Boyle
a17684ebe2
Some small steps towards a multigrid
2015-06-22 12:49:44 +01:00
Azusa Yamaguchi
a265765319
Variable preconditioned GCR with restarting.
...
Orthogonalisation depth and restart frequency is controllable via constructor
2015-06-21 10:58:46 +01:00
Azusa Yamaguchi
3b4118f33e
Variable preconditioned GCR with restarting.
...
Orthogonalisation depth and restart frequency is controllable via constructor
2015-06-21 10:58:46 +01:00
Peter Boyle
eace9051e8
Merge
...
Merge branch 'master' of https://github.com/paboyle/Grid
2015-06-20 22:25:31 +01:00
Peter Boyle
c7d77dfa0f
Merge
...
Merge branch 'master' of https://github.com/paboyle/Grid
2015-06-20 22:25:31 +01:00
Peter Boyle
aba5c8595a
Patches for beginnings of an overlap multigrid
2015-06-20 22:22:56 +01:00
Peter Boyle
b4a6dbfa65
Patches for beginnings of an overlap multigrid
2015-06-20 22:22:56 +01:00
Azusa Yamaguchi
cb92390825
Merge branch 'master' of https://github.com/paboyle/Grid
2015-06-20 14:22:29 +01:00
Azusa Yamaguchi
dc7c77e1d5
Merge branch 'master' of https://github.com/paboyle/Grid
2015-06-20 14:22:29 +01:00
Azusa Yamaguchi
9dbb326061
Add the test_quenched files
2015-06-20 14:09:26 +01:00
Azusa Yamaguchi
1e8217d880
Add the test_quenched files
2015-06-20 14:09:26 +01:00
Peter Boyle
2534199ee7
Merge branch 'master' of https://github.com/paboyle/Grid
2015-06-19 17:24:05 +01:00
Peter Boyle
a0d4f832cf
Merge branch 'master' of https://github.com/paboyle/Grid
2015-06-19 17:24:05 +01:00
neo
faf8544233
Lattice matrix exponential ok
2015-06-17 20:41:07 +09:00
neo
4eb71d2cd2
Lattice matrix exponential ok
2015-06-17 20:41:07 +09:00
Azusa Yamaguchi
b78ecd6fb2
merge
2015-06-16 20:47:31 +01:00
Azusa Yamaguchi
fd72b64ca3
merge
2015-06-16 20:47:31 +01:00
Azusa Yamaguchi
700614123d
add bug-fixed Test_nersc)_io.
2015-06-16 20:23:27 +01:00
Azusa Yamaguchi
2faf7d95db
add bug-fixed Test_nersc)_io.
2015-06-16 20:23:27 +01:00
neo
26ff0f3b50
Merge remote-tracking branch 'upstream/master'
2015-06-17 02:02:51 +09:00
neo
e31dfa79d1
Merge remote-tracking branch 'upstream/master'
2015-06-17 02:02:51 +09:00
neo
296edfbd95
Check for SUN projection and Exponential
2015-06-17 02:02:06 +09:00
neo
47159797cb
Check for SUN projection and Exponential
2015-06-17 02:02:06 +09:00
neo
a7555b41df
Corrected bug in integer multiplications for SSE4 and AVX2
...
Merge remote-tracking branch 'upstream/master'
Conflicts:
tests/Make.inc
2015-06-16 23:34:45 +09:00
neo
6e5db0b1da
Corrected bug in integer multiplications for SSE4 and AVX2
...
Merge remote-tracking branch 'upstream/master'
Conflicts:
tests/Make.inc
2015-06-16 23:34:45 +09:00
Azusa Yamaguchi
453b28bd81
Heatbath and config related removed
2015-06-16 14:18:48 +01:00
Azusa Yamaguchi
1c3c795b84
Heatbath and config related removed
2015-06-16 14:18:48 +01:00
neo
0bff862876
Merge remote-tracking branch 'upstream/master'
...
Conflicts:
lib/Make.inc
tests/Make.inc
2015-06-15 16:48:50 +09:00
neo
f7a1cef15b
Merge remote-tracking branch 'upstream/master'
...
Conflicts:
lib/Make.inc
tests/Make.inc
2015-06-15 16:48:50 +09:00
Peter Boyle
0f6ed6b633
Merge branch 'master' of https://github.com/paboyle/Grid
2015-06-14 01:27:07 +01:00
Peter Boyle
337bccf27d
Merge branch 'master' of https://github.com/paboyle/Grid
2015-06-14 01:27:07 +01:00
Azusa Yamaguchi
d47f2fe1e0
File list
2015-06-14 00:52:39 +01:00
Azusa Yamaguchi
0fa26e7d68
File list
2015-06-14 00:52:39 +01:00
Azusa Yamaguchi
eff0cb3067
Minor
2015-06-14 00:52:26 +01:00
Azusa Yamaguchi
8bac3b57ad
Minor
2015-06-14 00:52:26 +01:00
Azusa Yamaguchi
ff8bde53df
more accurate comment
2015-06-14 00:51:56 +01:00
Azusa Yamaguchi
171c95d6d8
more accurate comment
2015-06-14 00:51:56 +01:00
Azusa Yamaguchi
58019383f3
Typing
2015-06-14 00:51:37 +01:00
Azusa Yamaguchi
5484607ef2
Typing
2015-06-14 00:51:37 +01:00
Azusa Yamaguchi
21f214d6c9
Apply a heatbath sweep
2015-06-14 00:50:59 +01:00
Azusa Yamaguchi
31ab4c4c35
Apply a heatbath sweep
2015-06-14 00:50:59 +01:00
Azusa Yamaguchi
e57bc34afe
Minor change
2015-06-14 00:50:26 +01:00
Azusa Yamaguchi
a0dcbc0d16
Minor change
2015-06-14 00:50:26 +01:00
Azusa Yamaguchi
744879a3f5
be more precise on typing
2015-06-14 00:49:57 +01:00
Azusa Yamaguchi
fa6117f136
be more precise on typing
2015-06-14 00:49:57 +01:00
Azusa Yamaguchi
45c21a9c8b
TensorRemove not needed now
2015-06-14 00:49:26 +01:00
Azusa Yamaguchi
2c2112e152
TensorRemove not needed now
2015-06-14 00:49:26 +01:00
Peter Boyle
f0d190024a
Updates to ldop tests
2015-06-10 12:26:25 +01:00
Peter Boyle
5cce44edb4
Updates to ldop tests
2015-06-10 12:26:25 +01:00
Peter Boyle
0ad72b38ab
file list
2015-06-10 12:25:15 +01:00
Peter Boyle
622261b1ea
file list
2015-06-10 12:25:15 +01:00
Azusa Yamaguchi
12d7902ca0
Fix compile
2015-06-10 11:30:27 +01:00
Azusa Yamaguchi
f6667801e1
Fix compile
2015-06-10 11:30:27 +01:00
Azusa Yamaguchi
e3b4dd32c0
commit file list
2015-06-10 11:26:46 +01:00
Azusa Yamaguchi
22752f6ff0
commit file list
2015-06-10 11:26:46 +01:00
Azusa Yamaguchi
562cdc805b
Merge branch 'master' of https://github.com/paboyle/Grid
2015-06-10 11:25:57 +01:00
Azusa Yamaguchi
0457923179
Merge branch 'master' of https://github.com/paboyle/Grid
2015-06-10 11:25:57 +01:00
Azusa Yamaguchi
653a94e8ab
Successful generation of general SU N generators
...
This class will move into a utils class and gain exponentiation and ta projection
to support HMC and heatbath
2015-06-10 11:24:14 +01:00
Azusa Yamaguchi
8cf34ebbff
Successful generation of general SU N generators
...
This class will move into a utils class and gain exponentiation and ta projection
to support HMC and heatbath
2015-06-10 11:24:14 +01:00
neo
f3dd829459
Adding several iMatrix utilities
2015-06-10 14:16:33 +09:00
neo
bb4a916767
Adding several iMatrix utilities
2015-06-10 14:16:33 +09:00
Peter Boyle
e79a57b423
Merge branch 'master' of https://github.com/paboyle/Grid
...
Not sure what changed in master
2015-06-09 22:51:10 +01:00
Peter Boyle
02144fb50b
Merge branch 'master' of https://github.com/paboyle/Grid
...
Not sure what changed in master
2015-06-09 22:51:10 +01:00
Peter Boyle
5a53086e41
Solver converges
2015-06-09 22:51:02 +01:00
Peter Boyle
7d6be625fa
Solver converges
2015-06-09 22:51:02 +01:00
Peter Boyle
c4f204f440
Solver converges
2015-06-09 22:50:45 +01:00
Peter Boyle
3f8c7be6f8
Solver converges
2015-06-09 22:50:45 +01:00
Peter Boyle
4357f5acdc
Some extra tests
2015-06-09 22:43:10 +01:00
Peter Boyle
516f1a6316
Some extra tests
2015-06-09 22:43:10 +01:00
Peter Boyle
3a52bc4ce1
G5R5 update
2015-06-09 22:41:27 +01:00
Peter Boyle
3546dcac1a
G5R5 update
2015-06-09 22:41:27 +01:00
Peter Boyle
61770d4472
Files update
2015-06-09 22:40:12 +01:00
Peter Boyle
c86c15f95f
Files update
2015-06-09 22:40:12 +01:00
Peter Boyle
4d11fc0330
silly change
2015-06-09 22:36:48 +01:00
Peter Boyle
eeeaac7147
silly change
2015-06-09 22:36:48 +01:00
neo
f8eb862073
Merge remote-tracking branch 'upstream/master'
2015-06-09 19:01:07 +09:00
neo
ecf3bae150
Merge remote-tracking branch 'upstream/master'
2015-06-09 19:01:07 +09:00
neo
99ace0a89c
Adding support for iMatrix exponentiation
2015-06-09 18:59:45 +09:00
neo
e80012896a
Adding support for iMatrix exponentiation
2015-06-09 18:59:45 +09:00
Peter Boyle
1048304f30
Some unary ops and coarse grid support
2015-06-09 10:26:19 +01:00
Peter Boyle
1e5b015ee3
Some unary ops and coarse grid support
2015-06-09 10:26:19 +01:00
neo
744ac33e8b
Experimental support for ARM
2015-06-09 15:46:21 +09:00
neo
48bf4878c1
Experimental support for ARM
2015-06-09 15:46:21 +09:00
Peter Boyle
a6ac2abb64
No compile fix after merge
2015-06-08 12:12:13 +01:00
Peter Boyle
4ae47a529e
No compile fix after merge
2015-06-08 12:12:13 +01:00
Peter Boyle
98b10f587e
Merge branch 'master' of https://github.com/paboyle/Grid
...
Conflicts:
lib/Make.inc
tests/Make.inc
tests/Test_remez.cc
2015-06-08 12:08:09 +01:00
Peter Boyle
3111f50f2f
Merge branch 'master' of https://github.com/paboyle/Grid
...
Conflicts:
lib/Make.inc
tests/Make.inc
tests/Test_remez.cc
2015-06-08 12:08:09 +01:00
Peter Boyle
b0873e7ed2
Conjugate residual algorithm; some more unary functions
2015-06-08 12:04:59 +01:00
Peter Boyle
d6f1ddf99c
Conjugate residual algorithm; some more unary functions
2015-06-08 12:04:59 +01:00
Peter Boyle
769ef7b0f5
sqrt
2015-06-08 12:03:36 +01:00
Peter Boyle
0cf2037ae1
sqrt
2015-06-08 12:03:36 +01:00
Azusa Yamaguchi
a8b9109cc8
multishift conjugate gradient added and a strong test: take a diagonal
...
but non-identity matrix
l1 0 0 0 ....
0 l2 0 0 ....
0 0 l3 0 ...
. . .
. . .
. . .
And apply the multishift CG to it. Sum the poles and residues.
Insist that this be the same as the exactly taken square root
where l1,l2,l3 >= 0.
2015-06-08 11:52:44 +01:00
Azusa Yamaguchi
8688ff8b3a
multishift conjugate gradient added and a strong test: take a diagonal
...
but non-identity matrix
l1 0 0 0 ....
0 l2 0 0 ....
0 0 l3 0 ...
. . .
. . .
. . .
And apply the multishift CG to it. Sum the poles and residues.
Insist that this be the same as the exactly taken square root
where l1,l2,l3 >= 0.
2015-06-08 11:52:44 +01:00
Peter Boyle
a263e78f8d
Conjugate residual added
2015-06-05 18:16:25 +01:00
Peter Boyle
1a05882d7c
Conjugate residual added
2015-06-05 18:16:25 +01:00