Commit Graph
1921 Commits
Author SHA1 Message Date
conrad 8047a5f342 use type promotion for fp16 2025-08-04 17:06:11 +10:00
conrad 600642f829 simplifications 2025-08-04 15:52:34 +10:00
conrad 9d68301372 use promoted type instead of specialising for fp16 2025-08-04 15:19:43 +10:00
conrad 20ca20b31b expand specialised handling of fp16 2025-08-01 13:01:09 +10:00
conrad 972f2f648f simplification 2025-07-30 12:16:24 +10:00
conrad 273b91efab rename op_accu_fp16mat to op_accu_mat_promote 2025-07-30 12:12:45 +10:00
conrad c3b3a42f46 add specialisations for Proxy 2025-07-30 12:09:45 +10:00
conrad 8bf1eb2af8 reduce compiler processing when fp16 is not available 2025-07-30 11:39:36 +10:00
conrad 9072a2f7c8 place-holder implementation of specialised accu() for fp16 2025-07-30 00:19:41 +10:00
conrad 8abea07d35 simplify handling of openmp 2025-07-29 23:28:51 +10:00
conrad 2fe2b5fa36 fix group names 2025-07-29 23:07:37 +10:00
conrad aba91e9610 refactor accu() into op_accu and spop_accu 2025-07-29 22:43:11 +10:00
conrad 89e7703875 specialisation for fp16 2025-07-28 12:56:45 +10:00
conrad 276c968a6b use type promotion for op_cdot 2025-07-28 12:12:29 +10:00
conrad 1e3001be06 type promote components instead of just the result 2025-07-28 12:04:22 +10:00
conrad 648710482d use more precise traits 2025-07-28 01:03:30 +10:00
conrad 839f895bbb use semantically more precise traits 2025-07-28 00:27:33 +10:00
conrad 866dcdbd2c use conditional promotion of accumulator type instead of specialised functions 2025-07-27 19:05:39 +10:00
conrad 723676eb7f use at least float for accumulator in dot products involving compound expressions 2025-07-27 18:31:46 +10:00
conrad 6b63c96af1 use dot products specialised for fp16 2025-07-27 17:51:49 +10:00
conrad 39be977b55 check aliasing only if element types are the same 2025-07-26 00:32:59 +10:00
conrad 95fda0d2e3 combine cond_rel function definitons and bodies into one file 2025-07-26 00:16:37 +10:00
conrad 3f577dc19c use constexpr instead of forced inline 2025-07-26 00:02:39 +10:00
conrad c9d547c862 use constexpr instead of forced inline 2025-07-25 23:39:48 +10:00
conrad 854d470c63 simplifications 2025-07-25 20:53:21 +10:00
conrad 4af55d5abb simplifications 2025-07-25 16:26:29 +10:00
conrad 13e400d50e simplifications 2025-07-25 13:56:47 +10:00
conrad e798206b1a use constexpr instead of forced inline 2025-07-24 00:36:00 +10:00
conrad 9302d2911b don't use divide-and-conquer when matrix size is too large for LAPACK with 32 bit ints 2025-07-23 23:44:43 +10:00
conrad e727967b39 use void_ptr instead of (void*) 2025-07-23 15:51:38 +10:00
conrad 92837026c3 add __has_include guards around headers that may not be present 2025-07-23 15:31:57 +10:00
conrad 583efe0eb0 simplification 2025-07-23 12:58:00 +10:00
conrad 59fccc4457 also use __F16C__ to indicate hardware support for fp16 2025-07-23 12:55:25 +10:00
conrad 0bb7d88a3e more informative warnings 2025-07-23 12:00:50 +10:00
conrad 03ee00c429 simplifications 2025-07-22 18:22:46 +10:00
conrad d37ef70517 change 'fp16_' prefix in matrix typedefs to 'h' 2025-07-22 14:00:27 +10:00
conrad 08817332b7 rename shift to circshift 2025-07-21 12:56:21 +10:00
conrad 34722ecab1 rename shift to circshift 2025-07-21 12:52:41 +10:00
conrad a3a1372972 add circshift() versions of shift() 2025-07-21 12:47:41 +10:00
conrad 9237785486 remove long deprecated options 2025-07-19 21:38:48 +10:00
conrad 9e084f7dab use forced optimisation when BLAS is not available 2025-07-18 14:20:21 +10:00
conrad cce74c0e49 use direct_dot() instead of direct_dot_generic() since the former can now detect integer types 2025-07-18 14:20:01 +10:00
conrad 0db44c0fa8 use forced optimisation only for fp16 2025-07-18 14:09:27 +10:00
conrad fb2fd4a049 split direct_dot_generic() into direct_dot_generic_short() and direct_dot_generic_long() 2025-07-18 11:44:59 +10:00
conrad 996bb45534 rename direct_dot_arma() to direct_dot_generic() 2025-07-18 11:13:51 +10:00
conrad 0601761cf2 add handling of cx_fp16 2025-07-18 00:11:38 +10:00
conrad 084a695129 add TODO 2025-07-17 18:37:42 +10:00
conrad 344f123ac4 add warning message 2025-07-17 18:33:37 +10:00
conrad deaf5c413a don't use divide-and-conquer when matrix size is too large for LAPACK with 32 bit ints 2025-07-17 18:31:14 +10:00
conrad 9fcd2f3449 add TODOs 2025-07-17 17:06:22 +10:00