simd-math
simd-math copied to clipboard
Library for length agnostic SIMD intrinsic support and the corresponding math operations
Hi, this fixes the following compile error on clang: ``` /Users/keichi/Projects/kEDM/src/thirdparty/simd/vector_size.hpp:149:12: error: an attribute list cannot appear here explicit SIMD_ALWAYS_INLINE inline simd(const native_type& value):m_value(value) {} ^~~~~~~~~~~~~~~~~~ /Users/keichi/Projects/kEDM/src/thirdparty/simd/simd_common.hpp:52:28: note: expanded from...
Hello, I was just trying to test a parallel_reduce (sum) using one of the native simd type and found a seg fault that seems to be associated with a wrong...
Hi, If I try to build e.g. `simd_warp_solution.cpp` (from Kokkos-tutorial), with nvcc 11.4 and g++-10.2, i get several compile error, e.g. : ```shell /home/pkestene/etudes/kokkos/github/test/simd-math/vector_size.hpp(149): error: attribute does not apply to...
Related to https://github.com/NexGenAnalytics/simd-math/issues/1 TODO: - [x] Add gtest - [x] Create src/test directories and add CMake support - [ ] Add tests
Some methods seem to be missing in the API: - **sqrt**, **max** and **min** are missing in simd_common. - **cbrt** is missing for vsx and neon - **exp** is missing...
One of the simd constructor is templated but the template doesn't seem to be used: ``` template SIMD_ALWAYS_INLINE inline simd(double const* ptr, Flags /*flags*/) :m_value(_mm_loadu_pd(ptr)) {} ```
From what I can see in the [Kokkos tutorials](https://github.com/kokkos/kokkos-tutorials/blob/main/Exercises/simd_warp/Solution/simd_warp_solution.cpp), a way to use a `Kokkos::View` with the simd-math library is to use a view based on a simd type. It...
1. SIMD aware layouts 2. Execution Space defaults for storage and ABI types 3. view and deep_copy extensions for SIMD
Below is a list of features and additions required to prepared simd-math for Kokkos promotion: - [ ] CMake build elements - [ ] Unit test suite which is build...
- [ ] full set of comparison and equality operators between `simd` types - [ ] full set of boolean operators between `simd_mask` types - [ ] aligned loads -...