mirror of
https://gitlab.com/libeigen/eigen.git
synced 2024-12-21 07:19:46 +08:00
db5691ff2b
Added `EIGEN_HAS_STD_HASH` macro, checking for C++11 support and not running on GPU. `std::hash<float>` is not a device function, so cannot be used by `std::hash<bfloat16>`. Removed `EIGEN_DEVICE_FUNC` and only define if `EIGEN_HAS_STD_HASH`. Same for `half`. Added `EIGEN_CUDA_HAS_FP16_ARITHMETIC` to improve readability, eliminate warnings about `EIGEN_CUDA_ARCH` not being defined. Replaced a couple C-style casts with `reinterpret_cast` for aligned loading of `half*` to `half2*`. This eliminates `-Wcast-align` warnings in clang. Although not ideal due to potential type aliasing, this is how CUDA handles these conversions internally. |
||
---|---|---|
.. | ||
src | ||
Cholesky | ||
CholmodSupport | ||
Core | ||
Dense | ||
Eigen | ||
Eigenvalues | ||
Geometry | ||
Householder | ||
IterativeLinearSolvers | ||
Jacobi | ||
KLUSupport | ||
LU | ||
MetisSupport | ||
OrderingMethods | ||
PardisoSupport | ||
PaStiXSupport | ||
QR | ||
QtAlignedMalloc | ||
Sparse | ||
SparseCholesky | ||
SparseCore | ||
SparseLU | ||
SparseQR | ||
SPQRSupport | ||
StdDeque | ||
StdList | ||
StdVector | ||
SuperLUSupport | ||
SVD | ||
UmfPackSupport |