Commit Graph
100 Commits
Author SHA1 Message Date
Peter Boyle 2022a7205c Remove extra layers of checks now it works 2015-06-09 22:43:41 +01:00
Peter Boyle 4357f5acdc Some extra tests 2015-06-09 22:43:10 +01:00
Peter Boyle 4963f7356a 5d OpDir direction interface refers to the 5d dims, not 4d to present a
sensible and consistent external interface.
2015-06-09 22:41:59 +01:00
Peter Boyle 3a52bc4ce1 G5R5 update 2015-06-09 22:41:27 +01:00
Peter Boyle 708d4f7533 g5 and g5R5 hermitian are now differentiated 2015-06-09 22:40:58 +01:00
Peter Boyle 61770d4472 Files update 2015-06-09 22:40:12 +01:00
Peter Boyle a57ca0bbe7 Prettier reporting 2015-06-09 22:39:37 +01:00
Peter Boyle 1f2498918d Got this sorted with the promote working in a test 2015-06-09 22:39:13 +01:00
Peter Boyle 25bfff370a Starting to use 2015-06-09 22:38:13 +01:00
Peter Boyle 6403e3021f Debugged finally. A silly mistake in permute cost me a day of debug. 2015-06-09 22:37:21 +01:00
Peter Boyle 4d11fc0330 silly change 2015-06-09 22:36:48 +01:00
Peter Boyle e8b43944e7 Merge branch 'master' of https://github.com/paboyle/Grid
Conflicts:
	lib/Make.inc
2015-06-09 10:27:10 +01:00
Peter Boyle 1048304f30 Some unary ops and coarse grid support 2015-06-09 10:26:19 +01:00
Peter Boyle f19518d564 Unary ops and coarse grid support 2015-06-09 10:25:29 +01:00
Peter Boyle a6ac2abb64 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 b0873e7ed2 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 42c22d4cae Prep for multigrid 2015-06-08 12:02:53 +01:00
Peter Boyle aad51ffe3a Prep for mgrid 2015-06-08 12:02:26 +01:00
Peter Boyle a263e78f8d Conjugate residual added 2015-06-05 18:16:25 +01:00
Peter Boyle 337b6e83af Rework the linop support to get different forms of red black schur solver
Moo on diag, or MooInv Moe MeeInv Meo
2015-06-05 10:17:10 +01:00
Peter Boyle f22170ad49 comment improvement 2015-06-05 05:31:27 +01:00
Peter Boyle 7678fbd30d PartialFraction Hw with Zolo and Tanh approx converged under CG and passed EO breakdown
and hermiticity tests.
2015-06-04 13:28:37 +01:00
Peter Boyle 1e4eca8321 Merge branch 'master' of https://github.com/paboyle/Grid
Conflicts:
	lib/tensors/Tensor_trace.h
2015-06-04 12:17:00 +01:00
Peter Boyle 5aa8bf77db Mistaken commit that prevented compile ; fixing 2015-06-04 12:01:51 +01:00
Peter Boyle 54c082dc35 Allow traceIndex on a different index to distribute replicated across a vector index 2015-06-04 09:41:16 +01:00
Peter Boyle 9c1ab656d4 CG Tests work for wilson kernel cont frac zolo and tanh 2015-06-04 06:02:00 +01:00
Peter Boyle 1ad689e4d5 Implementing the Hw kernel continued fraction 5d overlap cases 2015-06-04 00:23:16 +01:00
Peter Boyle 802e94e9ca First pass at continued fraction; solver and even odd decomposition tests pass.
Have to make ContFrac class virtual and derive end non-abstract actions for the particular
cases.
2015-06-04 00:00:45 +01:00
Peter Boyle e68d087010 Assist for generating file lists contained in Make.inc files for convenience when things are added 2015-06-03 13:07:00 +01:00
Peter Boyle 3254bb2c8e Make.inc needed in repo 2015-06-03 12:49:36 +01:00
Peter Boyle 54b56959f5 Convenience script to build the list of headers and .cc files in the library 2015-06-03 12:47:46 +01:00
Peter Boyle f9b070d64d Reorganise of file naming 2015-06-03 12:47:05 +01:00
Peter Boyle 6cb38dc5dc Overlap Wilson Cayley tanh & zolo 2015-06-03 11:26:54 +01:00
Peter Boyle 2b083ca987 CG test written and passes i.e. converges with small true residual
in RedBlack MpcDagMpc, Unprec MdagM and Schur red black solver for
each of.

DomainWallFermion
MobiusFermion
MobiusZolotarevFermion
ScaledShamirFermion
ScaledShamirZolotarevFermion
2015-06-03 10:54:03 +01:00
Peter Boyle c659c76053 Scaled Shamir and Scaled Shamir Zolotarev aliases for special cases of Mobius. 2015-06-03 09:51:06 +01:00
Peter Boyle 68e26140ee Mobius Caley form, Mobius Zolotarev operators. Pass Even Odd vs unprec test and hermiticity checks
in tests/Grid_any_evenodd.cc; will work on inversion tests shortly.
2015-06-03 09:36:26 +01:00
Peter Boyle 494d2b8b61 Reorg; moving prec/unprec/schur CG for Wilson and DWF into tests as these are really tests and not benchmarks
(no performance reports, only convergence test).
2015-06-02 17:25:26 +01:00
Peter Boyle 0bc004de7c Domain wall fermions now invert ; have the basis set up for
Tanh/Zolo * (Cayley/PartFrac/ContFrac) * (Mobius/Shamir/Wilson)
Approx        Representation               Kernel.

All are done with space-time taking part in checkerboarding, Ls uncheckerboarded

Have only so far tested the Domain Wall limit of mobius, and at that only checked
that it
i)  Inverts
ii) 5dim DW == Ls copies of 4dim D2
iii) MeeInv Mee == 1
iv) Meo+Mee+Moe+Moo == M unprec.
v) MpcDagMpc is hermitan
vi) Mdag is the adjoint of M between stochastic vectors.

That said, the RB schur solve, RB MpcDagMpc solve, Unprec solve
all converge and the true residual becomes small; so pretty good tests.
2015-06-02 16:57:12 +01:00
Peter Boyle 6f725748ed Updated line counter 2015-05-31 15:11:09 +01:00
Peter Boyle 66d997e031 Large scale change to support 5d fermion formulations.
Have 5d replicated wilson with 4d gauge working and matrix regressing
to Ls copies of wilson.
2015-05-31 15:09:02 +01:00
Peter Boyle 8c357dca8b Integer wrap problem fixed. 2015-05-29 14:11:34 +01:00
Peter Boyle 62dccb3247 Weak scale the benchmarks automatically. 2015-05-28 13:47:01 +01:00
Peter Boyle c0c1ebe757 Works now with Clang-avx, Clang-sse and ICPC-avx, ICPC-sse 2015-05-28 11:35:43 +01:00
Peter Boyle bd81ac0f17 Improving the reduction to go through our on permute.
Must also do this for avx512
2015-05-27 16:07:17 +01:00
Peter Boyle e468d75286 Auto gen files should never have been committed, but making everyone run
aclocal, automake, autoconf is a pain in the ass.
2015-05-26 22:20:40 +01:00
Peter Boyle 22d073eb2b Simd revert to Guido's commit. I edited concurrently and things went bad. 2015-05-26 22:20:09 +01:00
Peter Boyle ccf10a973a Merge branch 'master' of https://github.com/paboyle/Grid
Conflicts:
	lib/Grid_simd.h
2015-05-26 20:04:08 +01:00
Peter Boyle 6ef0096dc9 Strip out the dslash kernel implementation 2015-05-26 19:55:18 +01:00
Peter Boyle 20100d0a40 Hand unrolled version of dslash in a separate class.
Useful to compare; raises Intel compiler from 9GFlop/s to 17.5 Gflops.
                   on ivybridge core. Raises Clang form 14.5 to 17.5
2015-05-26 19:54:03 +01:00
Peter Boyle c2ffb1a098 Makefile update 2015-05-25 14:43:08 +01:00
Peter Boyle d7f5172860 Schur complement based red-black inversion working 2015-05-25 13:47:12 +01:00
Peter Boyle 201a110c51 Better EO support letting Schur solver work 2015-05-25 13:46:28 +01:00
Peter Boyle 1d4b1c48cc Most cosmetic 2015-05-25 13:45:32 +01:00
Peter Boyle f6cade41b4 Better checkerboard tracking. 2015-05-25 13:45:08 +01:00
Peter Boyle 6e76f0c6cd move constants into red black 2015-05-25 13:44:35 +01:00
Peter Boyle 55ad54e0ff Updates now schur red black solver working 2015-05-25 13:43:58 +01:00
Peter Boyle 00ee531005 Herm op 2015-05-25 13:42:36 +01:00
Peter Boyle ca30116144 red black fix 2015-05-25 13:42:12 +01:00
Peter Boyle 41ba13f951 Merge branch 'master' of https://github.com/paboyle/Grid 2015-05-23 09:36:08 +01:00
Peter Boyle 31a40fa37f Added 2015-05-23 09:36:01 +01:00
Peter Boyle 602248d5fe Extra targets 2015-05-23 09:35:37 +01:00
Peter Boyle 2ba641b25e More targets 2015-05-23 09:34:50 +01:00
Peter Boyle 2d30e82dcb Improving even odd sector; lot of work and through required cleaning this 2015-05-23 09:34:16 +01:00
Peter Boyle 0b165afd9e Rely on default constructors 2015-05-23 09:33:42 +01:00
Peter Boyle 3954792f37 Better pragma use 2015-05-23 09:32:37 +01:00
Peter Boyle 8c7b5f5d3b Cosmetic 2015-05-23 09:31:15 +01:00
Peter Boyle be8b4f89d6 Iterator required 2015-05-23 09:30:28 +01:00
Peter Boyle a11850d2fb Merge pull request #7 from coppolachan/master
Added full support for SSE4
2015-05-22 05:58:59 +01:00
Peter Boyle e0cc5ba920 Streaming store option ifdef 2015-05-21 06:47:05 +01:00
Peter Boyle 1b9ecbac3b Compile time select if we do the streaming store copy. Relies on Clang++ eliminating object copies,
and other compliers do not necessarily cope.
2015-05-21 06:39:00 +01:00
Peter Boyle ac0941be9a adding two routines containing only a single operation so I can easily see the assembly dump 2015-05-21 06:37:46 +01:00
Peter Boyle fb159e1cff Minor change 2015-05-21 06:37:20 +01:00
Peter Boyle 8bc0033326 useful to dump assembler 2015-05-21 06:36:47 +01:00
Peter Boyle db786fac13 Didn't like a print statement 2015-05-21 06:36:15 +01:00
Peter Boyle 046485a7bb better comms benchmarking 2015-05-21 06:35:46 +01:00
Peter Boyle 9058135da0 Unroll pragma abstraction 2015-05-21 06:34:33 +01:00
Peter Boyle 8fdff33b3a Merging in
Merge branch 'master' of https://github.com/paboyle/Grid
2015-05-19 21:30:13 +01:00
Peter Boyle 91ed085ca4 Build a simple kernel to compare intel compiler and clang in simple environment 2015-05-19 21:29:40 +01:00
Peter Boyle efc0d1e0b9 Reworking to keep intel compiler happy 2015-05-19 21:29:07 +01:00
Peter Boyle 2d8b5a8191 Optimisation... 2015-05-19 15:50:47 +01:00
Peter Boyle b520694b00 Merge branch 'coppolachan-master' 2015-05-19 15:05:32 +01:00
Peter Boyle 3fe7275332 Merged
Merge branch 'master' of https://github.com/coppolachan/Grid into coppolachan-master

Conflicts:
	lib/simd/Grid_vector_types.h
2015-05-19 15:05:07 +01:00
Peter Boyle a6e1ea216d Got unpreconditioned conjugate gradient to run and converge on a random (uniform random,
not even SU(3) for now) gauge field. Convergence history is correctly indepdendent of decomposition
on 1,2,4,8,16 mpi tasks.
Found a couple of simd bugs which required fixed and enhanced the Grid_simd.cc test suite.
Implemented the Mdag, M, MdagM, Meooe Mooee schur type stuff in the wilson dop.
2015-05-19 13:57:35 +01:00
Peter Boyle 6f387b4916 Merge branch 'coppolachan-master' 2015-05-18 16:36:58 +01:00
Peter Boyle 9bfe0e63f4 lib/algorithms/approx/bigfloat.h 2015-05-18 16:35:48 +01:00
Peter Boyle 30494bd96d Merge branch 'master' of https://github.com/coppolachan/Grid into coppolachan-master
Conflicts:
	lib/algorithms/approx/bigfloat.h
2015-05-18 16:34:21 +01:00
Peter Boyle 6f038a7f6d Convience function 2015-05-18 16:28:29 +01:00
Peter Boyle 193fd5532f Remez tested 2015-05-18 12:09:25 +01:00
Peter Boyle 1887c77498 Getting closer to having a wilson solver... introducing a first and untested
cut at Conjugate gradient. Also copied in Remez, Zolotarev, Chebyshev from
Mike Clark, Tony Kennedy and my BFM package respectively since we know we will
need these. I wanted the structure of

algorithms/approx
algorithms/iterative

etc.. to start taking shape.
2015-05-18 07:47:05 +01:00
Peter Boyle 6eb8dfd902 Working towards solvers 2015-05-17 00:19:03 +01:00
Peter Boyle e841395dfd Updating preparing for solvers etc.. 2015-05-16 23:35:08 +01:00
Peter Boyle cf99a1f37d Better build automation 2015-05-16 07:16:45 +01:00
Peter Boyle deac65a92d Merge branch 'master' of https://github.com/paboyle/Grid 2015-05-16 06:42:03 +01:00
Peter Boyle f6e54a7bd4 Moved things around 2015-05-16 06:40:10 +01:00
Peter Boyle 53260e7a39 Typoo xifed 2015-05-16 05:49:32 +01:00
Peter Boyle a900790b44 Update Grid_lattice_trace.h 2015-05-16 04:40:28 +01:00
Peter Boyle b731bf6976 Pretty syntax 2015-05-16 04:37:26 +01:00
Peter Boyle 5f8b82b90c Optimisation and syntax pretty 2015-05-16 04:36:22 +01:00