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

46 Commits

Author SHA1 Message Date
Peter Boyle
d4289a33b8 AMD FMA4 addition 2015-10-09 00:44:20 +02: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
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
772cd8199d Merge problem fixed 2015-08-01 22:30:00 +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
neo
a9c15626e1 Merge remote-tracking branch 'upstream/master'
Conflicts:
	configure
2015-07-21 11:57:34 +09:00
neo
9adaeb061a More NEON functionalities 2015-07-21 11:52:15 +09:00
6b8190a032 gitignore update 2015-07-17 11:15:17 +09:00
neo
ab3ad78ece Skeleton of HMC/Integrators 2015-07-03 16:51:41 +09: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
5cce44edb4 Updates to ldop tests 2015-06-10 12:26:25 +01:00
neo
48bf4878c1 Experimental support for ARM 2015-06-09 15:46:21 +09:00
Peter Boyle
63a61fcc2a 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
neo
3055d2cf2c Addedd Ta functionality to the tensor types
Merge remote-tracking branch 'upstream/master'

Conflicts:
	configure
2015-06-04 18:11:32 +09:00
neo
5a5ee83d28 Small modification to the configure files 2015-06-04 14:17:58 +09:00
Peter Boyle
1d0df449e8 Reorganise of file naming 2015-06-03 12:47:05 +01:00
neo
727bc32150 Merge remote-tracking branch 'upstream/master' 2015-05-29 11:41:39 +09:00
neo
f41e4e8b1b Some modifications to the configure to check SIMD support 2015-05-29 11:41:02 +09:00
Peter Boyle
b72ca15bd2 Improving the reduction to go through our on permute.
Must also do this for avx512
2015-05-27 16:07:17 +01:00
neo
19bd6f103a Check at configure time if CPU supports the requested SIMD optimization 2015-05-27 18:30:11 +09:00
neo
3cb34af82c Added a .gitignore file to eliminate autoconf files from commits 2015-05-27 11:10:51 +09:00
Guido Cossu
8abf6403d5 Corrected AVX regression error. Tested. 2015-05-27 10:49:33 +09:00
neo
da46b56e85 Adding support for doxygen generation 2015-05-27 10:34:56 +09:00
neo
1a24801246 checked performance of new vector libaries.
Added check for c++11 support on the configure.ac
2015-05-26 12:02:54 +09:00
neo
baa382f055 Added check of mpfr and gmp at configure time
It generates automatically the linker flags or complains if not found.
2015-05-19 13:54:55 +09:00
neo
99aecf1f2e Minor modification to the configure.ac
Enables silent rules (use make V=1 to override)
Prints a summary after configure is completed
2015-05-18 17:15:14 +09:00
neo
b4cd37276b Corrected some compilation errors (zolotarev.h) and SSE4 vsplat and conj to make cshift test pass. 2015-05-18 16:48:14 +09:00
Peter Boyle
11cb3e9a01 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
0b4d3544b9 clang++ 3.4/5/7 compile happy for AVX and SSE
icpc compiles happy on MacOSX both with -xCOMMON-AV512 and native AVX

gcc-5 does not compile happy; can work around by renaming lattice peek/poke/transpose/trace templates
relative to tensor ones, but gcc goes into a recursive template instantiation due to
matching error. I think this is a gcc bug and have filed a report https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66153
2015-05-15 11:52:11 +01:00
Peter Boyle
48f425d31c I have made the Cshift work successfully with open mp threading in
every routine. Collapse(2) is now working under clang-omp++.
2015-05-13 00:31:00 +01:00
Peter Boyle
f5dcca7b1b Got command line args working 2015-05-11 14:36:48 +01:00
Peter Boyle
5555a852be Lots of changes required to compile for MIC under ICPC 2015-05-10 23:29:21 +01:00
Peter Boyle
55ccb8ccf4 Wilson perf improvements with Gauge prefetching 2015-05-06 06:37:21 +01:00
Peter Boyle
35d949cc17 Cleaned up for Linux 2015-05-05 22:09:22 +01:00
Peter Boyle
4a1d4f1b3c Starting a benchmarking sub dir 2015-05-02 17:52:36 +01:00
Peter Boyle
31fd146cc0 Improving the byte swap support for portability 2015-05-01 10:57:33 +01:00
Peter Boyle
4d2198ea56 Begginings of slice summation and subblocking 2015-04-23 11:04:59 +01:00
Peter Boyle
b32c14b433 Got the NERSC IO working and fixed a bug in cshift. 2015-04-22 22:46:48 +01:00
Peter Boyle
26148c3323 Build reorg 2015-04-18 14:56:05 +01:00
Peter Boyle
5aac6dc85b spin trace type work 2015-04-16 14:48:21 +01:00
Peter Boyle
48a38ef4fd Major rework of extract/merge/permute processing debugged and working. 2015-04-06 11:26:24 +01:00
Peter Boyle
9ba89e64dc MPI is now working and passing basic tests. Will start to construct a more sensible test suite shortly
since testing requirements now go beyond what a single Grid_main.cc can do.

Will need a more organised src tree for this and will require substantial reorg of build system.
2015-04-03 04:52:53 +01:00
Peter Boyle
73aaec2df8 Commit 2015-03-29 22:04:49 +01:00
Azusa Yamaguchi
83f0dc19ff Changes for MIC 2015-03-04 13:25:23 +00:00
Peter Boyle
3901b7d77a Place them in to avoid forced autoreconf on user 2015-03-04 11:53:59 +00:00