Performance improvements in GEMM for Power

This commit is contained in:
Chip Kerchner
2022-04-05 12:18:53 +00:00
committed by Everton Constantino
parent e1df3636b2
commit 403fa33409
7 changed files with 895 additions and 813 deletions

View File

@@ -213,6 +213,11 @@ public:
return ploadt<PacketT, AlignmentT>(&operator()(i, j));
}
template<typename PacketType>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE void storePacket(Index i, Index j, const PacketType &p) const {
pstoret<Scalar, PacketType, AlignmentType>(&operator()(i, j), p);
}
template<typename SubPacket>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE void scatterPacket(Index i, Index j, const SubPacket &p) const {
pscatter<Scalar, SubPacket>(&operator()(i, j), p, m_stride);
@@ -311,6 +316,11 @@ public:
return pgather<Scalar,PacketT>(&operator()(i, j),m_incr.value());
}
template<typename PacketType>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE void storePacket(Index i, Index j, const PacketType &p) const {
pscatter<Scalar, PacketType>(&operator()(i, j), p, m_incr.value());
}
template<typename SubPacket>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE void scatterPacket(Index i, Index j, const SubPacket &p) const {
pscatter<Scalar, SubPacket>(&operator()(i, j), p, m_stride);