1
0
mirror of https://github.com/paboyle/Grid.git synced 2024-09-20 17:25:37 +01:00
Commit Graph

1145 Commits

Author SHA1 Message Date
Peter Boyle
96608c70d1 chrono causing some problems on Cray systems. Suspend use for now 2015-11-04 04:28:31 -06:00
Peter Boyle
d35d63b171 Algorithm in 2015-11-04 04:27:44 -06:00
Peter Boyle
24044dbc56 Debugged a problem with checkerboarded cshift in the checker dimension which arose
only when mpi spread out in the checker dimension. Added a test that trapped and helped debug this
2015-11-04 10:00:55 +00:00
Peter Boyle
abb23df83f formatting only 2015-11-04 10:00:27 +00:00
Peter Boyle
12c5ec813c Useful debug messages (commented out) are included for preservation in case I need to revisit this 2015-11-04 09:59:27 +00:00
Peter Boyle
1271508ca2 Bug fix for spread out in x (EO) direction.
This is really annoying -- it is very hard to thread the loops with the index
recursion on buffer offset in the red-black case. Must think of a good threading
solution here.
2015-11-04 09:57:57 +00:00
Peter Boyle
ec5af35166 EO bug fix when spread out in x-direction 2015-11-04 09:56:58 +00:00
Peter Boyle
0f59356e86 Problem in comms fixed 2015-11-02 00:00:15 +00:00
8709117aea Log: generalised Logger class to allow separate logs in Grid-based applications 2015-10-27 17:31:13 +00:00
e6b9aa9076 Config.h removed form repository 2015-10-27 10:47:07 +00:00
Peter Boyle
8889af45ca FMA4 added 2015-10-09 01:00:53 +02:00
Peter Boyle
83afb2e26a Poly support for lanczos 2015-10-09 00:43:21 +02:00
Peter Boyle
6d06bd9493 Minor change in commented out code 2015-10-09 00:42:21 +02:00
Peter Boyle
6ee23f409e Lanczos addition 2015-10-09 00:41:00 +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
814c79f38d SIMD improvements for mac and madd use in complex for avx, sse 2015-10-09 00:38:52 +02:00
paboyle
1878bf97d0 Babbage fix 2015-09-30 16:04:01 -07:00
paboyle
a660ce716b No compile babbage fix 2015-09-30 16:02:44 -07:00
paboyle
f4b6d1dfea NGO stores reenabled 2015-09-30 16:02:14 -07:00
paboyle
23813ac798 No compile on babbage fix 2015-09-30 16:01:28 -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
64d64d1ab6 Updating to modify non-inlining permute routines and hopefully get better reg use and
enhance performance.
2015-09-25 08:55:04 -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
638d6675ee Tested rms dH is ~ dt^4 numerically, so believe the ForceGradient is correct now.
Paranoia makes me want to diddle with the FG step to ensure dt^2 reappears.
2015-08-31 16:33:20 +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
612957f057 pull in original license. 2015-08-21 10:19:08 +01:00
Peter Boyle
cea8ac9a22 Credits to orig source where I found the macro tricks. 2015-08-21 10:14:53 +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
77d299b414 Cosmetic 2015-08-20 16:30:52 +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
fdfe194c41 Threading bug in RNG fill fixed. 2015-08-19 14:41:05 +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
5c364f8082 One flavour rational unprec added; untested but does compile.
Moving param structs into a single header for later connection to file I/O using
macromagic.h
2015-08-18 14:40:08 +01:00
Peter Boyle
a842a6c94d One flavour rational unprec added; untested but does compile.
Moving param structs into a single header for later connection to file I/O using
macromagic.h
2015-08-18 14:40:08 +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
76f3855629 Merge branch 'master' of https://github.com/paboyle/Grid 2015-08-18 09:23:58 +01:00
Peter Boyle
8621e2409f Merge branch 'master' of https://github.com/paboyle/Grid 2015-08-18 09:23:58 +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
0bc38a69ce Adding PV pseudofermion in prep for DWF HMC.
Not compiled this yet, but cloned in from BFM.
2015-08-18 09:19:42 +01:00
Peter Boyle
25d0eae50c Adding PV pseudofermion in prep for DWF HMC.
Not compiled this yet, but cloned in from BFM.
2015-08-18 09:19:42 +01:00
Peter Boyle
24382d77bb Adding PV pseudofermion in prep for DWF HMC.
Not compiled this yet, but cloned in from BFM.
2015-08-17 23:14:48 +01:00
Peter Boyle
ef6a9e6b07 Adding PV pseudofermion in prep for DWF HMC.
Not compiled this yet, but cloned in from BFM.
2015-08-17 23:14:48 +01:00
Peter Boyle
353d66def1 Unused apparently 2015-08-16 01:41:05 +01:00
Peter Boyle
b8166af92b Unused apparently 2015-08-16 01:41:05 +01:00
Peter Boyle
afeabe0d23 Tidying 2015-08-16 00:14:10 +01:00
Peter Boyle
6180487517 Tidying 2015-08-16 00:14:10 +01:00
Peter Boyle
53da927c3c Merge branch 'master' of https://github.com/paboyle/Grid 2015-08-15 23:59:04 +01:00
Peter Boyle
f0e32f12cf Merge branch 'master' of https://github.com/paboyle/Grid 2015-08-15 23:59:04 +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
f40475f382 Reorganising the Fermion interface 2015-08-14 14:16:45 +01:00
Peter Boyle
ba8c09a58e Reorganising the Fermion interface 2015-08-14 14:16:45 +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
59d66eb17a 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
028e2061e0 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
fc9b36c769 Gamma5 mult direct 2015-08-13 10:51:29 +01:00
Peter Boyle
2c216a42f9 Gamma5 mult direct 2015-08-13 10:51:29 +01:00
Peter Boyle
45b01858a8 Gamma5 mult direct 2015-08-13 10:51:29 +01:00
Peter Boyle
c39078162e Gparity improvements 2015-08-13 10:51:01 +01:00
Peter Boyle
145b807ba2 Gparity improvements 2015-08-13 10:51:01 +01:00
Peter Boyle
1c2d148bfa Gparity improvements 2015-08-13 10:51:01 +01:00
Peter Boyle
7e9203d8e0 Some bug fixes for more complicated types introduced with gparity 2015-08-13 10:50:34 +01:00
Peter Boyle
8d4c43327b Some bug fixes for more complicated types introduced with gparity 2015-08-13 10:50:34 +01:00
Peter Boyle
546513861f Some bug fixes for more complicated types introduced with gparity 2015-08-13 10:50:34 +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
8a0be42080 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
c8dca58e6d File list update. 2015-08-11 06:37:42 +01:00
Peter Boyle
ded3945467 File list update. 2015-08-11 06:37:42 +01:00
Peter Boyle
04e0e9f5a0 File list update. 2015-08-11 06:37:42 +01:00
Peter Boyle
826fbb18c4 Preconditioned conjugate residual 2015-08-11 06:24:53 +01:00
Peter Boyle
9cd7f9ecad Preconditioned conjugate residual 2015-08-11 06:24:53 +01:00
Peter Boyle
69ce87fbe4 Preconditioned conjugate residual 2015-08-11 06:24:53 +01:00
Peter Boyle
07d672baeb Header 2015-08-11 06:23:38 +01:00
Peter Boyle
26f5ee0621 Header 2015-08-11 06:23:38 +01:00
Peter Boyle
f165b1a120 Header 2015-08-11 06:23:38 +01:00
Peter Boyle
3903dfe6a5 Gparity modifications in the Gparity compressor variant. 2015-08-11 06:22:20 +01:00
Peter Boyle
881acaa065 Gparity modifications in the Gparity compressor variant. 2015-08-11 06:22:20 +01:00
Peter Boyle
0a9ebac514 Gparity modifications in the Gparity compressor variant. 2015-08-11 06:22:20 +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
aeb7442d8f 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
ce34856e32 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
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
a1d1dc96d6 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
848104b1a9 Changes making force term test for DWF pass. 2015-08-01 22:06:07 +09:00
Peter Boyle
2994274267 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
1d0be956ae 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
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
c2aff0ccd4 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
de153b70ce 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
cc4ca48d13 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
bc09d7c3bd 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
63015324c1 Two flavour pseudofermion action 2015-07-26 12:28:03 +09:00
Peter Boyle
9de40578d3 Two flavour pseudofermion action 2015-07-26 12:28:03 +09:00
Peter Boyle
97b41c41b0 Two flavour pseudofermion action 2015-07-26 12:28:03 +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
d7e6b65a76 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
a4953610bb Merge branch 'master' of https://github.com/paboyle/Grid 2015-07-24 01:33:19 +09:00
Peter Boyle
ba4989dd45 Merge branch 'master' of https://github.com/paboyle/Grid 2015-07-24 01:33:19 +09:00
Peter Boyle
1d70a45d84 Merge branch 'master' of https://github.com/paboyle/Grid 2015-07-24 01:33:19 +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
28bdc90908 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
paboyle
e0ed320827 Bug work around 2015-07-21 22:49:36 -07:00
paboyle
c67bc303db Bug work around 2015-07-21 22:49:36 -07:00
paboyle
f62f1699cb Bug work around 2015-07-21 22:49:36 -07:00
neo
479912a5ed Merge remote-tracking branch 'upstream/master' 2015-07-21 17:17:50 +09:00
neo
d01310383f 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
8925845684 Merge 2015-07-21 13:56:22 +09:00
Peter Boyle
4e94ddad46 Merge 2015-07-21 13:56:22 +09:00
Peter Boyle
f8be0aeed1 No changes shown on git diff 2015-07-21 13:54:09 +09:00
Peter Boyle
e34f8adbf4 No changes shown on git diff 2015-07-21 13:54:09 +09:00
Peter Boyle
5ac625f716 No changes shown on git diff 2015-07-21 13:54:09 +09:00
Peter Boyle
9651ab661b Small pretty layout change 2015-07-21 13:53:23 +09:00
Peter Boyle
c7925e5c9b Small pretty layout change 2015-07-21 13:53:23 +09:00
Peter Boyle
8d654a86de Small pretty layout change 2015-07-21 13:53:23 +09:00
Peter Boyle
fb65953d82 This was needed to compile on gcc 2015-07-21 13:52:59 +09:00
Peter Boyle
9d18773fbc This was needed to compile on gcc 2015-07-21 13:52:59 +09:00
Peter Boyle
df2aac01f4 This was needed to compile on gcc 2015-07-21 13:52:59 +09:00
Peter Boyle
44cf212720 Printing change 2015-07-21 13:51:56 +09:00
Peter Boyle
821ac7b6f4 Printing change 2015-07-21 13:51:56 +09:00
Peter Boyle
0007669381 Printing change 2015-07-21 13:51:56 +09:00
Peter Boyle
cbec16fedd More info 2015-07-21 13:48:57 +09:00
Peter Boyle
01f9b1f6a4 More info 2015-07-21 13:48:57 +09:00
Peter Boyle
a700933611 More info 2015-07-21 13:48:57 +09:00
Peter Boyle
64703207d4 Tweaks to subspace set up to put in g5 r5 hermiticity 2015-07-21 12:13:03 +09:00
Peter Boyle
59baa15d9f Tweaks to subspace set up to put in g5 r5 hermiticity 2015-07-21 12:13:03 +09:00
Peter Boyle
c515d069cd Tweaks to subspace set up to put in g5 r5 hermiticity 2015-07-21 12:13:03 +09:00
Peter Boyle
021478af3b verbose 2015-07-21 12:12:29 +09:00
Peter Boyle
8a4f9d2367 verbose 2015-07-21 12:12:29 +09:00
Peter Boyle
8a7b7f1e2b verbose 2015-07-21 12:12:29 +09:00
neo
0ea846dcdc Merge remote-tracking branch 'upstream/master'
Conflicts:
	configure
2015-07-21 11:57:34 +09:00
neo
52e9c6b8db Merge remote-tracking branch 'upstream/master'
Conflicts:
	configure
2015-07-21 11:57:34 +09:00
neo
a9c15626e1 Merge remote-tracking branch 'upstream/master'
Conflicts:
	configure
2015-07-21 11:57:34 +09:00
neo
ab916d80fd More NEON functionalities 2015-07-21 11:52:15 +09:00
neo
7343a95772 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
c431816393 Cleaning up files for HMC 2015-07-07 14:59:37 +09:00
neo
48ae886c32 Cleaning up files for HMC 2015-07-07 14:59:37 +09:00
neo
97afe4125f Cleaning up files for HMC 2015-07-07 14:59:37 +09:00
neo
1e9317e5cf Simplifying HMC syntax for the final user 2015-07-06 18:32:20 +09:00
neo
19a1ffedcc 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
32e6887d5f 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
1991852025 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
2718038977 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
62d8952c0a 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
b1f94fa292 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
30c9dc473d 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
9655d43017 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
2c9ceaef94 No compile fix 2015-07-02 02:03:09 +01:00
Peter Boyle
a666e66e36 No compile fix 2015-07-02 02:03:09 +01:00
Peter Boyle
4deffd1ccb No compile fix 2015-07-02 02:03:09 +01:00
Peter Boyle
55e313bd08 Cleaning up the recursion for traceIndex<n> after the changes the enable G++ to
compile it again.
2015-07-01 23:43:57 +01:00
Peter Boyle
84ec7c40cd Cleaning up the recursion for traceIndex<n> after the changes the enable G++ to
compile it again.
2015-07-01 23:43:57 +01:00
Peter Boyle
a5c3edaca9 Cleaning up the recursion for traceIndex<n> after the changes the enable G++ to
compile it again.
2015-07-01 23:43:57 +01:00
Peter Boyle
ef0ec1d0b2 Merge branch 'master' of https://github.com/paboyle/Grid 2015-07-01 22:51:04 +01:00
Peter Boyle
69a3d3203c 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
paboyle
cb9da7b371 Temporarily disable gmp dependency simply because Cray XC30's I'm benchmarking
have a downlevel gmp version that chokes on ::max_align_t where gmp had a
bug as far as I recall.
2015-07-01 22:47:33 +01:00
paboyle
c0ea404a7c Temporarily disable gmp dependency simply because Cray XC30's I'm benchmarking
have a downlevel gmp version that chokes on ::max_align_t where gmp had a
bug as far as I recall.
2015-07-01 22:47:33 +01:00
paboyle
e3456bf559 Temporarily disable gmp dependency simply because Cray XC30's I'm benchmarking
have a downlevel gmp version that chokes on ::max_align_t where gmp had a
bug as far as I recall.
2015-07-01 22:47:33 +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
dc66161f47 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
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
f41c7dffef 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
95ecf81d42 big commit fixing nocompiles in defective C++11 compilers (gcc, icpc). stared getting to
near the bleeding edge I guess
2015-06-30 15:03:11 +01:00
Peter Boyle
74e397b29c big commit fixing nocompiles in defective C++11 compilers (gcc, icpc). stared getting to
near the bleeding edge I guess
2015-06-30 15:03:11 +01:00
Peter Boyle
98c817df1b big commit fixing nocompiles in defective C++11 compilers (gcc, icpc). stared getting to
near the bleeding edge I guess
2015-06-30 15:03:11 +01:00
Peter Boyle
f36dbfffe5 VPGCR updates 2015-06-30 15:02:27 +01:00
Peter Boyle
7cfe432ee2 VPGCR updates 2015-06-30 15:02:27 +01:00
Peter Boyle
8eaf657f95 VPGCR updates 2015-06-30 15:02:27 +01:00
Peter Boyle
a4369e1db6 big commit fixing nocompiles in defective C++11 compilers (gcc, icpc). stared getting to
near the bleeding edge I guess
2015-06-30 15:00:19 +01:00
Peter Boyle
7de5ccb879 big commit fixing nocompiles in defective C++11 compilers (gcc, icpc). stared getting to
near the bleeding edge I guess
2015-06-30 15:00:19 +01:00
Peter Boyle
c20fdd45a5 big commit fixing nocompiles in defective C++11 compilers (gcc, icpc). stared getting to
near the bleeding edge I guess
2015-06-30 15:00:19 +01:00
Peter Boyle
5f8f0bc792 Some small steps towards a multigrid 2015-06-22 12:49:44 +01:00
Peter Boyle
dec68e5c0e 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
95538bb8c6 Abstract preconditioner 2015-06-21 11:03:55 +01:00
Azusa Yamaguchi
e415587e8f Abstract preconditioner 2015-06-21 11:03:55 +01:00
Azusa Yamaguchi
fd1a8abcd1 Abstract preconditioner 2015-06-21 11:03:55 +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
945bb93e48 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
bcf1d5160f 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
f1916a7515 Will start this as a two level algorithm 2015-06-20 22:24:21 +01:00
Peter Boyle
eb5ad2884c Will start this as a two level algorithm 2015-06-20 22:24:21 +01:00
Peter Boyle
960f29c0b1 Will start this as a two level algorithm 2015-06-20 22:24:21 +01:00
Peter Boyle
5ccbac7db1 HDCG but this is not complete and placeholder for later completion 2015-06-20 22:23:57 +01:00
Peter Boyle
bce59d9911 HDCG but this is not complete and placeholder for later completion 2015-06-20 22:23:57 +01:00
Peter Boyle
fb07ee5781 HDCG but this is not complete and placeholder for later completion 2015-06-20 22:23:57 +01:00
Peter Boyle
aba5c8595a Patches for beginnings of an overlap multigrid 2015-06-20 22:22:56 +01:00
Peter Boyle
6ad96f7383 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
6cebd006d4 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