Peter Boyle
f43589369a
Compile options tweak
2015-05-15 12:33:18 +01:00
Peter Boyle
c99922b591
Out of source compile now working
2015-05-15 12:21:40 +01:00
Peter Boyle
3ed30169ea
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
180b06d7e3
GCC and ICPC complained on more careful typeing
2015-05-15 11:50:44 +01:00
Peter Boyle
3bd376853c
Move platform dependent out to Grid_simd.h
2015-05-15 11:50:00 +01:00
Peter Boyle
6bba16ccf7
ngo store
2015-05-15 11:49:39 +01:00
Peter Boyle
e8efa6320e
Parallel for replace
2015-05-15 11:48:04 +01:00
Peter Boyle
e3b61bdfce
Forces inlining upon icpc
2015-05-15 11:43:49 +01:00
Peter Boyle
86b9d24b62
Force inlining upon icpc
2015-05-15 11:43:20 +01:00
Peter Boyle
3e3a8dc0c0
More elegant enable_if
2015-05-15 11:42:51 +01:00
Peter Boyle
4350c1e0f7
More elegant to do boolean logic inside the enable_if construct
...
Should have done that from the beginning and should move this into
a global edit
2015-05-15 11:42:03 +01:00
Peter Boyle
8c59605e05
Force inlining on ICPC because inline apparently is not enoguh
2015-05-15 11:41:31 +01:00
Peter Boyle
e59b6a805c
strong_inline forces ICPC to do it.
2015-05-15 11:40:59 +01:00
Peter Boyle
5d8303e94d
Force strong_inline to force ipcc's hand
2015-05-15 11:40:31 +01:00
Peter Boyle
1339a7f8b0
Switch to strong_inline macro to force icpc's hand
2015-05-15 11:40:00 +01:00
Peter Boyle
e58cc72fe5
Promote to strong inline to force ICPC's hand. Annoying.
2015-05-15 11:39:25 +01:00
Peter Boyle
074430af0d
Formatting change
2015-05-15 11:38:54 +01:00
Peter Boyle
873110d482
Filed bug report Bug 66153 on GCC-5.
...
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66153
2015-05-15 11:38:04 +01:00
Peter Boyle
4cee0e8653
Silly formatting change
2015-05-15 11:37:07 +01:00
Peter Boyle
6b2a786779
gcc doesn't like collapse(2) for some reason I can't figure
2015-05-15 11:36:22 +01:00
Peter Boyle
cf27f22dc0
ICPC and GCC5 fixes
2015-05-15 11:35:02 +01:00
Peter Boyle
40192841a4
Using boolean logic inside enable_if is more elegant
2015-05-15 11:32:45 +01:00
Peter Boyle
1771f97551
Key of mm_malloc.h
2015-05-15 11:32:11 +01:00
Peter Boyle
2eaf73e8b3
strong inline required to force icpc
2015-05-15 11:31:41 +01:00
Peter Boyle
43bdbb5080
Linear op added
2015-05-13 11:25:34 +01:00
Peter Boyle
7f3ae64a31
OMP dslash working
2015-05-13 10:59:22 +01:00
Peter Boyle
d388b831b4
cout IO for all types
2015-05-13 09:24:10 +01:00
Peter Boyle
b4a570477c
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
52174da232
Enhanced SIMD interfacing
2015-05-12 20:41:44 +01:00
Peter Boyle
65c91eae64
Threading support rework.
...
Placed parallel pragmas as macros; implemented deterministic thread reduction in style of
BFM.
2015-05-12 07:51:41 +01:00
Peter Boyle
8b765be2b1
Moving some things around for pretty
2015-05-11 19:09:49 +01:00
Peter Boyle
a411b48a91
Adding a better controlled threading class, preparing to
...
force in deterministic reduction.
2015-05-11 18:59:03 +01:00
Peter Boyle
ebcb87abe1
Got command line args working
2015-05-11 14:36:48 +01:00
paboyle
fa5779537c
Command line args and a general clean up
2015-05-11 12:43:10 +01:00
Peter Boyle
242e447bc5
Lots of changes required to compile for MIC under ICPC
2015-05-10 23:29:21 +01:00
Peter Boyle
352bccf6ca
Merge branch 'master' of https://github.com/paboyle/Grid
...
Conflicts:
lib/qcd/Grid_qcd_wilson_dop.cc
2015-05-10 15:37:47 +01:00
Peter Boyle
c946e77143
Expression template hack
2015-05-10 15:35:30 +01:00
Peter Boyle
015fbee772
Expression template engin
2015-05-10 15:34:20 +01:00
Peter Boyle
133493dc79
Small tweak to enable benchmarking to suppress gauge field bandwidth as a test.
...
This is a short term hack while I benchmark.
2015-05-10 15:25:23 +01:00
Peter Boyle
58d32a4d0e
Assertion should never hit, but did due to a bug
2015-05-10 15:24:37 +01:00
Peter Boyle
6bb17502f9
Moving operator stuff into separate file so that we can switch on/off replacement with
...
expression templates
2015-05-10 15:23:49 +01:00
Peter Boyle
8299bc39ea
Fixing breakage in the Comms non compile
2015-05-10 15:23:09 +01:00
Peter Boyle
7f04b85368
Bringing expression templates for faster vector loops
2015-05-10 15:22:31 +01:00
Peter Boyle
5415180676
Wilson perf improvements with Gauge prefetching
2015-05-06 06:37:21 +01:00
Peter Boyle
7b0dd6c5d6
Cleaned up for Linux
2015-05-05 22:09:22 +01:00
Peter Boyle
cb4b82b09f
streaming store cases
2015-05-05 18:14:09 +01:00
Peter Boyle
cd990ba13d
Streaming store option
2015-05-05 18:13:06 +01:00
Peter Boyle
249165d1b2
Added streaming stores
2015-05-05 18:09:28 +01:00
Peter Boyle
2b46ad38e2
Back to vector for now; cost of init loop is clear in the a*x + y
...
loop in memory benchmark and must move to better container class.
2015-05-03 09:48:13 +01:00
Peter Boyle
9d93d1e6d4
Comms and memory benchmarks added
2015-05-03 09:44:47 +01:00