Commit Graph
100 Commits
Author SHA1 Message Date
Peter Boyle 2a28cfb3a3 Silly formatting change 2015-05-15 11:37:07 +01:00
Peter Boyle b00622302b gcc doesn't like collapse(2) for some reason I can't figure 2015-05-15 11:36:22 +01:00
Peter Boyle 3057b2762a ICPC and GCC5 fixes 2015-05-15 11:35:02 +01:00
Peter Boyle 151a6f4e14 Using boolean logic inside enable_if is more elegant 2015-05-15 11:32:45 +01:00
Peter Boyle a36c974f26 Key of mm_malloc.h 2015-05-15 11:32:11 +01:00
Peter Boyle c0977dcfaa strong inline required to force icpc 2015-05-15 11:31:41 +01:00
Peter Boyle f1255197c2 Linear op added 2015-05-13 11:25:34 +01:00
Peter Boyle e179828662 OMP dslash working 2015-05-13 10:59:22 +01:00
Peter Boyle 680f4e3636 RNG test 2015-05-13 09:24:30 +01:00
Peter Boyle a108d5d3b0 cout IO for all types 2015-05-13 09:24:10 +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 6cec662ac5 Enhanced SIMD interfacing 2015-05-12 20:41:44 +01:00
Peter Boyle 6103c29ee3 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 b1d2c60d07 Moving some things around for pretty 2015-05-11 19:09:49 +01:00
Peter Boyle 22d384b07d Adding a better controlled threading class, preparing to
force in deterministic reduction.
2015-05-11 18:59:03 +01:00
Peter Boyle f5dcca7b1b Got command line args working 2015-05-11 14:36:48 +01:00
paboyle 43e71ff28c CML parse 2015-05-11 12:56:27 +01:00
paboyle 379943abf5 Command line args and a general clean up 2015-05-11 12:43:10 +01:00
Peter Boyle 55ccb8ccf4 Wilson perf improvements with Gauge prefetching 2015-05-06 06:37:21 +01:00
Peter Boyle b9d16a7191 streaming store cases 2015-05-05 18:14:09 +01:00
Peter Boyle 07d57b6d55 Streaming store option 2015-05-05 18:13:06 +01:00
Peter Boyle 5ebc7a1756 Added streaming stores 2015-05-05 18:09:28 +01:00
Peter Boyle bf60764e4b Updated bandwidth test 2015-05-05 18:08:53 +01:00
Peter Boyle 890b13dd5b Added a makefile 2015-05-05 17:56:42 +01:00
Peter Boyle aeda7b923d 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 193860dbc8 Comms and memory benchmarks added 2015-05-03 09:44:47 +01:00
Peter Boyle 99a1ff423d Added a comms benchmark 2015-05-02 23:51:43 +01:00
Peter Boyle f663be2a6c Added a comms benchmark 2015-05-02 23:42:30 +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 c770f96be7 Merge branch 'master' of https://github.com/paboyle/Grid 2015-04-30 16:40:13 +01:00
Peter Boyle a98c01c86a Integrated Lebesgue code and been playing with alternate implementations of the wilson dop without
any particular success in increasing the performance.
2015-04-30 16:39:06 +01:00
Peter Boyle d5b1bfb4bb Merge pull request #1 from mspraggs/patch-1
Added <map> include to GridNerscIO.h
2015-04-30 09:46:48 +01:00
Peter Boyle b7090ebba4 Benchmark wilson dhop now; 14.6GF on one core, not as fast as SU(3)xSU(3) [23GF] but still not too shabby.
Disassembling output shows ugly sequences in the permute sector. Could comparatively benchmark with and without
the if-else structure to see how much I'm losing.

Drops to 9GF as it falls out of cache. Moving to Lebesgue ordering should help there. Substantive progress.
2015-04-29 06:50:18 +01:00
Peter Boyle c72db6c6f6 Fixed the stencil sector and Wilson now agrees between stencil based implementation
and the cshift based implementation. Managed to reduce the volume of code in this
sector a little, but consolidation would be good, perhaps taking common
logic out into simple helper functions
2015-04-29 06:23:56 +01:00
Peter Boyle 25d523c0f4 Shaken out stencil to the point where I think wilson dslash is correct.
Need to audit code carefully, consolidate between stencil and cshift,
and then benchmark and optimise.
2015-04-28 08:11:59 +01:00
Peter Boyle f159495a9d Reworking CSHIFT and Stencil. Implementing Wilson and discovered rework is required 2015-04-27 13:45:07 +01:00
Peter Boyle 94f728bee4 Big updates with progress towards wilson matrix 2015-04-26 15:51:09 +01:00
Peter Boyle 51f0da7b93 Starting the implementation of wilson; incomplete and committing non-functional code which
is not yet included from elsewhere or linked to the build system.
2015-04-25 14:33:02 +01:00
Peter Boyle 9dacdc947d Update to TODO list 2015-04-25 13:04:26 +01:00
Peter Boyle c5fa18eb20 Added two spinor functionality required to support the Wilson hopping term. 2015-04-25 12:54:06 +01:00
Peter Boyle 8b4073d84c Dirac done ; remove from TODO 2015-04-24 22:56:37 +01:00
Peter Boyle 9ec3529864 Improved the gamma quite a bit.
Serial rng's which are set on node zero and broadcaste
2015-04-24 20:21:40 +01:00
Peter Boyle 42eac283e2 static names and enum list 2015-04-24 19:12:14 +01:00
Peter Boyle 38598190c3 Vectors now too and right multiple of matrix with gamma 2015-04-24 19:08:29 +01:00
Peter Boyle 2e275e1e65 Removed summation 2015-04-24 18:42:44 +01:00
Peter Boyle 80463ecaea Cleared the code out from Grid_summation to lattice/Grid_lattice_transfer.h 2015-04-24 18:41:34 +01:00
Peter Boyle 128ad0999f Moved code from summation into transfer and reduction 2015-04-24 18:40:44 +01:00
Peter Boyle d707c4e0a3 First implementation of Dirac matrices as a Gamma class. 2015-04-24 18:20:03 +01:00
Peter Boyle b9939e3974 Reorganised the TODO. Really getting somewhere 2015-04-23 20:42:30 +01:00
Peter Boyle 3083d2e908 Rename Grid_QCD 2015-04-23 20:42:09 +01:00
Peter Boyle 898f64cdd7 move 2015-04-23 20:41:22 +01:00
Peter Boyle 52a6ba9767 Slice summation working. May move this into lattice/Grid_lattice_reduction however 2015-04-23 15:13:00 +01:00
Peter Boyle 4d2198ea56 Begginings of slice summation and subblocking 2015-04-23 11:04:59 +01:00
Peter Boyle 7007d6a176 Consolidate index to coor in a single routine 2015-04-23 11:04:19 +01:00
Peter Boyle a37a9789c9 Snippets from Guido to optimise Reduce 2015-04-23 08:31:40 +01:00
Peter Boyle 5c8858f31b Better description of Intel's many ISA targets 2015-04-23 08:02:51 +01:00
Peter Boyle 47292de769 Fixing endian on linux I hope 2015-04-23 07:51:15 +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 42f167ea37 Rework of RNG to use C++11 random. Should work correctly maintaining parallel RNG across
a machine. If a "fixedSeed" is used, randoms should be reproducible across different machine
decomposition since the generators are physically indexed and assigned in lexico ordering.
2015-04-19 14:55:58 +01:00
Peter Boyle f6ab726cef Update to task list 2015-04-19 14:55:16 +01:00
Peter Boyle 5483ed641e Split all OMP directives into lattice subdir for easy maintainance of
parallelism and future OMP 4.0 offload.
2015-04-18 22:17:01 +01:00
Peter Boyle d929f88421 Update 2015-04-18 22:16:31 +01:00
Peter Boyle 6bd11d920a Finishing the reorg 2015-04-18 21:24:10 +01:00
Peter Boyle 8ddfa7e6b0 Reorganisation 2015-04-18 21:23:32 +01:00
Peter Boyle e5a25dfcb1 Build reorg with which I am a bit happier 2015-04-18 21:22:50 +01:00
Peter Boyle c94b7cc43c Clean up 2015-04-18 20:52:40 +01:00
Peter Boyle 25a8266638 More files, shorter each. 2015-04-18 20:45:00 +01:00
Peter Boyle 6eae2c1083 Shrinking and organising the files 2015-04-18 20:44:19 +01:00
Peter Boyle 354347ce91 Split up into multiple files 2015-04-18 18:54:30 +01:00
Peter Boyle 2eb5ab26bf splitting into smaller, multiple files for readability and easy find. 2015-04-18 18:47:43 +01:00
Peter Boyle af72ade26a Cleanup 2015-04-18 18:37:56 +01:00
Peter Boyle e7661d3b12 Reorg 2015-04-18 18:37:22 +01:00
Peter Boyle cffad66894 Reorganise to keep files smaller 2015-04-18 18:36:48 +01:00
Peter Boyle df9056eb4b Rename 2015-04-18 17:10:45 +01:00
Peter Boyle 2ee9322a8f Clean up caps. 2015-04-18 17:09:48 +01:00
Peter Boyle b0ce9e3934 Clean up capitalisation 2015-04-18 17:09:24 +01:00
Peter Boyle 5e9a82b72b Rename 2015-04-18 17:07:37 +01:00
Peter Boyle b5356935e9 Renaming 2015-04-18 17:07:09 +01:00
Peter Boyle eb0925d702 Cleaing up 2015-04-18 16:42:47 +01:00
Peter Boyle b47d33c4f1 Shaken out the peekIndex support.
Hardwire constants "SpinIndex, ColourIndex" and LorentzIndex in Grid_QCD.h
2015-04-18 16:17:41 +01:00
Peter Boyle 26148c3323 Build reorg 2015-04-18 14:56:05 +01:00
Peter Boyle c656164015 Reorg of build structure 2015-04-18 14:55:00 +01:00
Peter Boyle 57586c8e05 peekIndex update 2015-04-18 14:36:01 +01:00
Peter Boyle d6c02e72d6 typo 2015-04-18 12:40:55 +01:00
paboyle d4aa37112d Update README.md 2015-04-18 12:21:37 +01:00
Peter Boyle 81367eaa12 Got traceIndex, transposeIndex fully working.
Need to think about peekIndex interface and () based indexing.
2015-04-18 12:17:13 +01:00
Peter Boyle 23df6cf18e SSE flag changed 2015-04-16 17:22:52 +01:00
Peter Boyle 3e41cfecf1 Better code 2015-04-16 15:20:19 +01:00
Peter Boyle 5aac6dc85b spin trace type work 2015-04-16 14:48:21 +01:00
Peter Boyle 6d71ff98e5 Improving the trace support to support any index tracing and simplifying
implmentation in some ways
2015-04-16 14:47:28 +01:00
Peter Boyle 3cb04f555d Typo in capital 2015-04-15 12:03:38 +01:00
Peter Boyle b59553bd65 Some bug fixes 2015-04-14 23:20:16 +01:00
Peter Boyle 94f9e781f4 Reduce now going through MPI. 2015-04-14 22:40:40 +01:00
Peter Boyle 2ae42c40a8 Modified 2015-04-14 20:25:51 +01:00
Peter Boyle 1eee664092 Stencil code pretty much shaken out.
Beginning of inner product and norm2.
2015-04-14 20:22:04 +01:00
Peter Boyle eb2dd37e3c where switched back on 2015-04-10 05:54:02 +02:00
Peter Boyle 69d578478a Fixing the comms=none compile 2015-04-10 05:53:09 +02:00
Peter Boyle d9a454bc9f Fixing nocompile 2015-04-10 05:24:01 +02:00
Peter Boyle 516bc0c666 MPI exposed incorrectly in main 2015-04-10 05:22:36 +02:00