paboyle
6d58cb2a68
Enable reordering of the loops in the assembler for cache friendly.
...
This gets in the way of L2 prefetching however. Do next next link in stencil
prefetching.
2016-06-30 14:35:01 -07:00
paboyle
87418e7df1
Slightly faster prefetching perf.
2016-06-13 02:32:52 -07:00
paboyle
55f65b81b5
Improvements to the assembler interface that let us move chunks of the
...
site and s loop into the kernels. This will save on function call overhead and
guarantee L2 prefetching strategy is right since OMP can't distribute the
sub-chunks of work.
2016-06-09 01:12:36 -07:00
paboyle
05acc22920
placeholder for non temporal loads optimisation
2016-06-07 13:18:21 -07: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
e503ef5590
Cleaned up
2016-06-07 00:11:36 +01:00
paboyle
a7682b0060
Only instantiate the one routine to avoid duplicate symbol under g++5/MacOS
2016-06-06 23:48:21 +01:00
paboyle
d4c9d71fc8
Merge branch 'master' of https://github.com/paboyle/Grid
2016-06-06 07:06:54 -07:00
paboyle
786ca52c43
Problems remain in the red black preconditioning of the Ls vectorisation
2016-06-06 07:05:51 -07:00
paboyle
53d06046b0
Compiling updates for KNL
2016-06-03 03:47:54 -07:00
paboyle
5d3a1a025d
timers flag
2016-06-03 03:25:38 -07:00
paboyle
139cc5f1ae
Large change with KNL preparation
2016-06-03 03:24:26 -07:00
paboyle
3a5b5c8bec
Save an old tar of tree
2016-05-12 03:20:17 -07:00
paboyle
fdbe071213
space added
2016-05-12 02:59:51 -07:00
paboyle
ab89418658
Precision change going in; useful for mixed precision algorithms for example.
2016-05-11 15:18:47 +01:00
paboyle
28cd99882c
Subslicing
2016-05-11 15:06:54 +01:00
paboyle
aceaee774c
ExtractSlice / InsertSlice for lower dimensional lattices where the lattice is not
...
distributed in the orthogonal direction.
Useful for fermion 4d/5d etc..
2016-05-11 14:12:02 +01:00
paboyle
c23375cd65
Testing travis CI integration
2016-04-30 06:30:56 -07:00
paboyle
a762a0d9ff
Attempt at CIT testing
2016-04-30 06:29:41 -07:00
paboyle
f7ca6ca889
Bernoulli reenabled -- using integral type for the discrete_distribution, but
...
then casts in the fill
2016-04-30 03:48:28 -07:00
paboyle
ec4a9b7f6c
The Bernoulli gives a no compile due to a static assertion that the type be integral
...
in 4.7 random.h
Probably need to go through an Integer type, and then conver to real after the random draw
to make clean.
2016-04-30 03:42:24 -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
paboyle
1e554350ac
The threaded coms didn't agree with GCC. Suprised, and looks like GCC bug.
2016-04-29 16:49:18 -07:00
paboyle
c79ea0dcef
Fixingn IMCI
2016-04-22 21:52:54 -07:00
paboyle
e3f141f82f
Fixed SSE compile with typecasts
2016-04-22 10:30:30 -07:00
paboyle
a6dfa2386b
GCC choked on intrinsics calls that ICPC did not
2016-04-22 06:33:41 -07:00
paboyle
8fd8bc25e9
simd 5th dim with rotation
2016-04-19 15:39:00 -07:00
paboyle
ba427abde9
simd 5d
2016-04-19 15:38:39 -07:00
paboyle
9b6ab6db16
simd in 5th dimension support
2016-04-19 15:38:01 -07:00
paboyle
806a83d38b
simd in fifth dim support for dwf
2016-04-19 15:36:19 -07:00
paboyle
7223753355
Rotate in a direction > 2 for simd_layout
2016-04-19 15:35:15 -07:00
paboyle
b27bac4669
Updates for simd in one dir
2016-04-19 15:34:10 -07:00
paboyle
c8a93d6a93
Cartesian changes to allow all simd in one direction
2016-04-19 15:18:12 -07:00
paboyle
04072a5e1f
Rotate is a temporary hack. Would like to merge ALL
...
permutes as rotates of length 2, and make any rotate active
over any subset of lane bits. This is hard, and requires general
permute; current intrinsics mean this is only really possible for specific
case by case encodings as presently performed. Intel could produce a general
permute.. would help. IBM did it in VMX.
2016-04-19 15:15:34 -07:00
paboyle
574ea4f843
const safety
2016-04-19 15:15:11 -07:00
paboyle
f2ae9682ff
Remove some timing hacks
2016-04-19 15:14:32 -07:00
paboyle
587f80cd93
Updated to compile and pass under intel SDE
2016-04-19 15:13:54 -07:00
paboyle
528eb773ad
Merged.
...
Merge branch 'master' of https://github.com/paboyle/Grid
2016-04-19 22:24:34 +01:00
paboyle
e5657510b0
Rotate support for Ls simd-ized
2016-04-19 22:24:18 +01:00
paboyle
f473919526
Rotate support
2016-04-19 22:23:51 +01:00
paboyle
c323425496
Small change
2016-04-11 10:38:43 +01:00
paboyle
650e02b344
Smaller vols too
2016-04-06 06:52:09 -07:00
paboyle
a524ca2a4b
New benchmark update
2016-04-06 03:35:56 -07:00
paboyle
23a7176b71
Loop over volumes
2016-04-06 03:22:11 -07:00
paboyle
b1192a8908
Benchmark_zmm added
2016-04-06 03:00:07 -07:00
paboyle
e8dddb1596
Adding extra benchmark
2016-04-06 10:32:54 +01:00
paboyle
c7ba47bdc7
Merge branch 'master' of https://github.com/paboyle/Grid
2016-04-06 02:56:28 +01:00
paboyle
e67fc2be18
Adding a trial for openmp overhead minimisation
2016-03-31 16:00:37 +01:00
paboyle
f473ef7591
Fixing the compile
2016-03-31 07:47:42 -07:00
paboyle
f7b1060aed
Use headers to clear macros and sub precision
2016-03-31 14:52:37 +01:00
paboyle
8052556275
Cleaning up the single/double kernel implementation switch
2016-03-31 14:51:32 +01:00
paboyle
60d965f79e
AVX512 improvements; sigfpe trapping too
2016-03-30 08:42:34 +01:00
paboyle
83b15bfcdd
Better Avx512 assembly sequence for SU3 using fmaddsub to get the imag imag sign
2016-03-30 08:39:39 +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
b6c3bc574b
Moving to a more coherent organisation of the inline assembly and arch dependencies.
2016-03-28 16:24:37 +01:00
paboyle
1e355a51e1
Interface change
2016-03-27 23:46:55 -07:00
paboyle
ad80f61fba
AVX512 shaken out
2016-03-28 00:38:05 -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
21abaf7e91
Gamma sign change
2016-03-28 00:35:45 -06:00
paboyle
165bffc2e7
Avx512 changes for assembler kernels
2016-03-26 22:25:45 -06:00
paboyle
644fd6d32e
Build avx512 clean
2016-03-25 09:35:33 -07:00
paboyle
a155a362da
Update from HDCR tuning
2016-03-16 02:31:04 -07:00
paboyle
60d4564151
ICC no compile fix
2016-03-16 02:30:40 -07:00
paboyle
d4e57f4bc6
IO Bandwidth reporting
2016-03-16 02:30:16 -07:00
paboyle
3920b2c0ab
HDCR updates
2016-03-16 02:29:58 -07:00
paboyle
2733c4b93c
hdcr updates
2016-03-16 02:29:37 -07:00
paboyle
e17c773a0b
Longer runs for vtune
2016-03-16 02:29:13 -07:00
paboyle
36a800f26c
Microsecond granularity support
2016-03-16 02:28:51 -07:00
paboyle
b75da563d9
Resurrect timestamp. Should make optional
2016-03-16 02:28:17 -07:00
paboyle
f9faec38be
Printing fix under comms none
2016-03-16 02:27:53 -07:00
paboyle
d6b64f47d9
Uint64 sum for IO rates
2016-03-16 02:27:22 -07:00
paboyle
a359f7a9f5
Merge branch 'master' of https://github.com/paboyle/Grid
2016-03-11 16:07:07 -08:00
paboyle
b606deb3f0
Uint64 gsum
2016-03-11 16:06:54 -08: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
paboyle
dc72293398
More timing info
2016-03-06 10:46:55 -08:00
paboyle
e55c35734b
Fix a nocompile
2016-03-03 20:33:28 +00:00
paboyle
325e745daa
Merge branch 'master' of https://github.com/paboyle/Grid
2016-03-02 07:04:03 -08:00
paboyle
61413565d0
Back off the inlined spin proj as not working
2016-03-02 07:03:09 -08:00
paboyle
ff129d9ad9
Redundant operations removed
2016-03-02 07:02:37 -08:00
paboyle
03fcd3b33a
Back out of the colour
2016-03-02 07:01:15 -08:00
paboyle
68b02da483
Backing off the colour
2016-03-02 07:00:43 -08:00
paboyle
e051119769
extern "C" should have been in the header file, but Cray is apparently not C++ friendly.
2016-03-02 07:00:00 -08:00
Peter Boyle
6aeaf6f568
Parallel IO worked on. I'm puzzled because I already thought I shook this out on MacOS + OpenMPI and then
...
turned up problems on the BlueWaters Cray.
Gets 75MB/s from home filesystem on parallel configuration read. Need to make the RNG IO parallel,
and also to look at aggregating bigger writes for the parallel write.
Not sure what the home filesystem is.
2016-02-21 08:03:21 -06:00
Peter Boyle
40f2db9bc0
Disable metropolis step until 10 traj covered. Should move to exposing these
...
in XML input and start having "applications" directory.
2016-02-21 08:01:44 -06:00
Peter Boyle
2cfa20cc4e
Improving the logging, got fed up with color so optionally disable.
...
Backtrace macro used everwhere
2016-02-21 07:58:53 -06:00
Peter Boyle
a5f683d124
Machine generated
2016-02-21 07:57:42 -06:00
Peter Boyle
02a57ffa6f
machine generated. Should remove from git .. but annoys downloaders
2016-02-21 07:57:02 -06:00
paboyle
3425751cb8
Missing return value
2016-02-19 01:06:03 +00:00
paboyle
db5e8050a8
Attempts at some optimisation
2016-02-18 22:33:58 +00:00
paboyle
a3fbabf404
Bug fix
2016-02-18 18:08:24 +00:00
Peter Boyle
22422a84d9
Small problem in compressor fix
2016-02-17 19:03:09 -06:00
Peter Boyle
b6f6da923e
Change to the compressor & stencil interface a little.
2016-02-17 18:27:11 -06:00
Peter Boyle
c9fadf97a5
Simplify the compressor interface again.
2016-02-17 18:16:45 -06:00
Peter Boyle
c650bb3f3d
Very small merge speed up.
2016-02-16 18:41:53 -06:00
Peter Boyle
81395e85d1
Regressing to not overlap comms and compute becasue bluewaters, edison, and cori are so rubbish at it.
2016-02-16 13:56:44 -06:00