aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
* Correct vector alignment testeschnett2011-11-26
| | | | git-svn-id: https://svn.cct.lsu.edu/repos/numrel/LSUThorns/Vectors/trunk@36 105869f7-3296-0410-a4ea-f4349344b45a
* Use "andnot" instruction when vectorisingeschnett2011-09-26
| | | | | | | | | | | | | Use the "andnot" instruction to reduce the number of different bit masks that are required. Using fewer different bit masks may require fewer registers to hold them, or fewer load instructions to access them, thus potentially improving performance. Do not scalarize ifpos when SSE 4.1 is not available; instead, use logical operations to create a bit mask. git-svn-id: https://svn.cct.lsu.edu/repos/numrel/LSUThorns/Vectors/trunk@31 105869f7-3296-0410-a4ea-f4349344b45a
* Suggest asm statements to support SSE4a with Intel compilers.eschnett2011-08-25
| | | | | | | Indent vector architecture definitions. git-svn-id: https://svn.cct.lsu.edu/repos/numrel/LSUThorns/Vectors/trunk@30 105869f7-3296-0410-a4ea-f4349344b45a
* Make more C++ compilers understand the signbit functioneschnett2011-08-20
| | | | | | | | | | | | | Several C++ compilers cannot handle std::signbit; use a work-around instead. Correct a namespace problem when using the same identifier Vectors_SGN for different precisions (real*4 and real*8). Correct kifpos implementation incorrectly on several architectures. git-svn-id: https://svn.cct.lsu.edu/repos/numrel/LSUThorns/Vectors/trunk@29 105869f7-3296-0410-a4ea-f4349344b45a
* Use a macro name which is less likely to conflict with an existing macro.svn_bwardell2011-08-08
| | | | | | This macro is only used internally anyway. git-svn-id: https://svn.cct.lsu.edu/repos/numrel/LSUThorns/Vectors/trunk@28 105869f7-3296-0410-a4ea-f4349344b45a
* Remove TODO commenteschnett2011-08-08
| | | | git-svn-id: https://svn.cct.lsu.edu/repos/numrel/LSUThorns/Vectors/trunk@27 105869f7-3296-0410-a4ea-f4349344b45a
* Add more vectorisation tests. Add test case.eschnett2011-08-08
| | | | | | | | | | | | | | Add vectorisation test for vector creation, load, and store statements. Convert C to C++ since vectorisation requires C++. Add test case. Beautify vectorsation templates. git-svn-id: https://svn.cct.lsu.edu/repos/numrel/LSUThorns/Vectors/trunk@26 105869f7-3296-0410-a4ea-f4349344b45a
* Rename kifthen to kifpos as it more accurately reflects what it actually does.svn_bwardell2011-08-07
| | | | git-svn-id: https://svn.cct.lsu.edu/repos/numrel/LSUThorns/Vectors/trunk@24 105869f7-3296-0410-a4ea-f4349344b45a
* Unconditionally run tests and abort if any fail.svn_bwardell2011-08-07
| | | | git-svn-id: https://svn.cct.lsu.edu/repos/numrel/LSUThorns/Vectors/trunk@23 105869f7-3296-0410-a4ea-f4349344b45a
* Make definition of vec_architecture for SSE and default more explicit.svn_bwardell2011-08-07
| | | | git-svn-id: https://svn.cct.lsu.edu/repos/numrel/LSUThorns/Vectors/trunk@22 105869f7-3296-0410-a4ea-f4349344b45a
* Fix reversed definition of vec_architecture.svn_bwardell2011-08-07
| | | | git-svn-id: https://svn.cct.lsu.edu/repos/numrel/LSUThorns/Vectors/trunk@21 105869f7-3296-0410-a4ea-f4349344b45a
* Fix definition of kifthen for architectures where blend instructions are not ↵svn_bwardell2011-08-07
| | | | | | available. git-svn-id: https://svn.cct.lsu.edu/repos/numrel/LSUThorns/Vectors/trunk@20 105869f7-3296-0410-a4ea-f4349344b45a
* Also print architecture in startup message.svn_bwardell2011-08-07
| | | | git-svn-id: https://svn.cct.lsu.edu/repos/numrel/LSUThorns/Vectors/trunk@19 105869f7-3296-0410-a4ea-f4349344b45a
* Add code to test vectorisation macros.svn_bwardell2011-08-07
| | | | | | This is conditionally run dependent on the "tests" parameter which can take the values "report", "abort" or "skip". The default is "skip" which causes the tests not to run. git-svn-id: https://svn.cct.lsu.edu/repos/numrel/LSUThorns/Vectors/trunk@18 105869f7-3296-0410-a4ea-f4349344b45a
* Fix typo which caused k8ifthen to not compile if SSE4.1 was not available.svn_bwardell2011-07-21
| | | | git-svn-id: https://svn.cct.lsu.edu/repos/numrel/LSUThorns/Vectors/trunk@15 105869f7-3296-0410-a4ea-f4349344b45a
* Fix error in definition of k8abs_mask for SSE2 architectures.svn_bwardell2011-07-21
| | | | git-svn-id: https://svn.cct.lsu.edu/repos/numrel/LSUThorns/Vectors/trunk@14 105869f7-3296-0410-a4ea-f4349344b45a
* Add new API elements "kifthen" and "vec_architecture"eschnett2011-06-20
| | | | git-svn-id: https://svn.cct.lsu.edu/repos/numrel/LSUThorns/Vectors/trunk@12 105869f7-3296-0410-a4ea-f4349344b45a
* Add startup message giving vector lengthhinder2011-06-16
| | | | | | | | This allows you to check that a simulation is using vectorisation. git-svn-id: https://svn.cct.lsu.edu/repos/numrel/LSUThorns/Vectors/trunk@11 105869f7-3296-0410-a4ea-f4349344b45a
* Introduce Cactus options for vectorisationeschnett2011-06-06
| | | | | | | | | | | | | | Introduce configuration-time options for vectorisation, including options to allow architecture-specific choices that may influence performance. Introduce "middle" masked stores for large vector sizes and small loops. Clean up and simplify some of the implementation code. git-svn-id: https://svn.cct.lsu.edu/repos/numrel/LSUThorns/Vectors/trunk@10 105869f7-3296-0410-a4ea-f4349344b45a
* Change naming scheme of architecture fileseschnett2011-01-20
| | | | | | | | Add support for AVX (next-generation SSE) Add support for Double Hummer (Blue Gene/P) git-svn-id: https://svn.cct.lsu.edu/repos/numrel/LSUThorns/Vectors/trunk@7 105869f7-3296-0410-a4ea-f4349344b45a
* Make vectorisation work with PGI compilerseschnett2010-12-24
| | | | git-svn-id: https://svn.cct.lsu.edu/repos/numrel/LSUThorns/Vectors/trunk@6 105869f7-3296-0410-a4ea-f4349344b45a
* Correct vectorised fabs() function for Inteleschnett2010-12-07
| | | | git-svn-id: https://svn.cct.lsu.edu/repos/numrel/LSUThorns/Vectors/trunk@5 105869f7-3296-0410-a4ea-f4349344b45a
* Add implementationeschnett2010-12-03
| | | | git-svn-id: https://svn.cct.lsu.edu/repos/numrel/LSUThorns/Vectors/trunk@4 105869f7-3296-0410-a4ea-f4349344b45a
* Add initial implementationeschnett2010-11-29
git-svn-id: https://svn.cct.lsu.edu/repos/numrel/LSUThorns/Vectors/trunk@3 105869f7-3296-0410-a4ea-f4349344b45a