Loading src/TNL/Matrices/Legacy/AdEllpack.h +18 −15 Original line number Diff line number Diff line Loading @@ -122,6 +122,7 @@ public: typedef Index IndexType; typedef typename Sparse< RealType, DeviceType, IndexType >::CompressedRowLengthsVector CompressedRowLengthsVector; typedef typename Sparse< RealType, DeviceType, IndexType >::ConstCompressedRowLengthsVectorView ConstCompressedRowLengthsVectorView; typedef typename Sparse< RealType, DeviceType, IndexType >::CompressedRowLengthsVectorView CompressedRowLengthsVectorView; template< typename _Real = Real, typename _Device = Device, Loading @@ -132,6 +133,8 @@ public: void setCompressedRowLengths( ConstCompressedRowLengthsVectorView rowLengths ); void getCompressedRowLengths( CompressedRowLengthsVectorView rowLengths ) const; IndexType getWarp( const IndexType row ) const; IndexType getInWarpOffset( const IndexType row, Loading src/TNL/Matrices/Legacy/AdEllpack_impl.h +10 −0 Original line number Diff line number Diff line Loading @@ -220,6 +220,16 @@ setCompressedRowLengths( ConstCompressedRowLengthsVectorView rowLengths ) } } template< typename Real, typename Device, typename Index > void AdEllpack< Real, Device, Index >::getCompressedRowLengths( CompressedRowLengthsVectorView rowLengths ) const { TNL_ASSERT_EQ( rowLengths.getSize(), this->getRows(), "invalid size of the rowLengths vector" ); for( IndexType row = 0; row < this->getRows(); row++ ) rowLengths.setElement( row, this->getRowLength( row ) ); } template< typename Real, typename Device, typename Index > Loading src/TNL/Matrices/Legacy/BiEllpack.h +9 −6 Original line number Diff line number Diff line Loading @@ -47,6 +47,7 @@ public: typedef Index IndexType; typedef typename Sparse< RealType, DeviceType, IndexType >::CompressedRowLengthsVector CompressedRowLengthsVector; typedef typename Sparse< RealType, DeviceType, IndexType >::ConstCompressedRowLengthsVectorView ConstCompressedRowLengthsVectorView; typedef typename Sparse< RealType, DeviceType, IndexType >::CompressedRowLengthsVectorView CompressedRowLengthsVectorView; typedef typename Sparse< RealType, DeviceType, IndexType >::ValuesVector ValuesVector; typedef typename Sparse< RealType, DeviceType, IndexType >::ColumnIndexesVector ColumnIndexesVector; Loading @@ -62,6 +63,8 @@ public: void setCompressedRowLengths( ConstCompressedRowLengthsVectorView rowLengths ); void getCompressedRowLengths( CompressedRowLengthsVectorView rowLengths ) const; IndexType getRowLength( const IndexType row ) const; template< typename Real2, Loading src/TNL/Matrices/Legacy/BiEllpack_impl.h +28 −18 Original line number Diff line number Diff line Loading @@ -103,6 +103,16 @@ setCompressedRowLengths( ConstCompressedRowLengthsVectorView constRowLengths ) return this->allocateMatrixElements( this->warpSize * this->groupPointers.getElement( strips * ( this->logWarpSize + 1 ) ) ); } template< typename Real, typename Device, typename Index > void BiEllpack< Real, Device, Index >::getCompressedRowLengths( CompressedRowLengthsVectorView rowLengths ) const { TNL_ASSERT_EQ( rowLengths.getSize(), this->getRows(), "invalid size of the rowLengths vector" ); for( IndexType row = 0; row < this->getRows(); row++ ) rowLengths.setElement( row, this->getRowLength( row ) ); } template< typename Real, typename Device, typename Index > Loading src/TNL/Matrices/Legacy/CSR.h +7 −4 Original line number Diff line number Diff line Loading @@ -48,6 +48,7 @@ public: using DeviceType = Device; using IndexType = Index; typedef typename Sparse< RealType, DeviceType, IndexType >::CompressedRowLengthsVector CompressedRowLengthsVector; typedef typename Sparse< RealType, DeviceType, IndexType >::CompressedRowLengthsVectorView CompressedRowLengthsVectorView; typedef typename Sparse< RealType, DeviceType, IndexType >::ConstCompressedRowLengthsVectorView ConstCompressedRowLengthsVectorView; typedef Sparse< Real, Device, Index > BaseType; using MatrixRow = typename BaseType::MatrixRow; Loading @@ -71,6 +72,8 @@ public: void setCompressedRowLengths( ConstCompressedRowLengthsVectorView rowLengths ); void getCompressedRowLengths( CompressedRowLengthsVectorView rowLengths ) const; IndexType getRowLength( const IndexType row ) const; __cuda_callable__ Loading Loading
src/TNL/Matrices/Legacy/AdEllpack.h +18 −15 Original line number Diff line number Diff line Loading @@ -122,6 +122,7 @@ public: typedef Index IndexType; typedef typename Sparse< RealType, DeviceType, IndexType >::CompressedRowLengthsVector CompressedRowLengthsVector; typedef typename Sparse< RealType, DeviceType, IndexType >::ConstCompressedRowLengthsVectorView ConstCompressedRowLengthsVectorView; typedef typename Sparse< RealType, DeviceType, IndexType >::CompressedRowLengthsVectorView CompressedRowLengthsVectorView; template< typename _Real = Real, typename _Device = Device, Loading @@ -132,6 +133,8 @@ public: void setCompressedRowLengths( ConstCompressedRowLengthsVectorView rowLengths ); void getCompressedRowLengths( CompressedRowLengthsVectorView rowLengths ) const; IndexType getWarp( const IndexType row ) const; IndexType getInWarpOffset( const IndexType row, Loading
src/TNL/Matrices/Legacy/AdEllpack_impl.h +10 −0 Original line number Diff line number Diff line Loading @@ -220,6 +220,16 @@ setCompressedRowLengths( ConstCompressedRowLengthsVectorView rowLengths ) } } template< typename Real, typename Device, typename Index > void AdEllpack< Real, Device, Index >::getCompressedRowLengths( CompressedRowLengthsVectorView rowLengths ) const { TNL_ASSERT_EQ( rowLengths.getSize(), this->getRows(), "invalid size of the rowLengths vector" ); for( IndexType row = 0; row < this->getRows(); row++ ) rowLengths.setElement( row, this->getRowLength( row ) ); } template< typename Real, typename Device, typename Index > Loading
src/TNL/Matrices/Legacy/BiEllpack.h +9 −6 Original line number Diff line number Diff line Loading @@ -47,6 +47,7 @@ public: typedef Index IndexType; typedef typename Sparse< RealType, DeviceType, IndexType >::CompressedRowLengthsVector CompressedRowLengthsVector; typedef typename Sparse< RealType, DeviceType, IndexType >::ConstCompressedRowLengthsVectorView ConstCompressedRowLengthsVectorView; typedef typename Sparse< RealType, DeviceType, IndexType >::CompressedRowLengthsVectorView CompressedRowLengthsVectorView; typedef typename Sparse< RealType, DeviceType, IndexType >::ValuesVector ValuesVector; typedef typename Sparse< RealType, DeviceType, IndexType >::ColumnIndexesVector ColumnIndexesVector; Loading @@ -62,6 +63,8 @@ public: void setCompressedRowLengths( ConstCompressedRowLengthsVectorView rowLengths ); void getCompressedRowLengths( CompressedRowLengthsVectorView rowLengths ) const; IndexType getRowLength( const IndexType row ) const; template< typename Real2, Loading
src/TNL/Matrices/Legacy/BiEllpack_impl.h +28 −18 Original line number Diff line number Diff line Loading @@ -103,6 +103,16 @@ setCompressedRowLengths( ConstCompressedRowLengthsVectorView constRowLengths ) return this->allocateMatrixElements( this->warpSize * this->groupPointers.getElement( strips * ( this->logWarpSize + 1 ) ) ); } template< typename Real, typename Device, typename Index > void BiEllpack< Real, Device, Index >::getCompressedRowLengths( CompressedRowLengthsVectorView rowLengths ) const { TNL_ASSERT_EQ( rowLengths.getSize(), this->getRows(), "invalid size of the rowLengths vector" ); for( IndexType row = 0; row < this->getRows(); row++ ) rowLengths.setElement( row, this->getRowLength( row ) ); } template< typename Real, typename Device, typename Index > Loading
src/TNL/Matrices/Legacy/CSR.h +7 −4 Original line number Diff line number Diff line Loading @@ -48,6 +48,7 @@ public: using DeviceType = Device; using IndexType = Index; typedef typename Sparse< RealType, DeviceType, IndexType >::CompressedRowLengthsVector CompressedRowLengthsVector; typedef typename Sparse< RealType, DeviceType, IndexType >::CompressedRowLengthsVectorView CompressedRowLengthsVectorView; typedef typename Sparse< RealType, DeviceType, IndexType >::ConstCompressedRowLengthsVectorView ConstCompressedRowLengthsVectorView; typedef Sparse< Real, Device, Index > BaseType; using MatrixRow = typename BaseType::MatrixRow; Loading @@ -71,6 +72,8 @@ public: void setCompressedRowLengths( ConstCompressedRowLengthsVectorView rowLengths ); void getCompressedRowLengths( CompressedRowLengthsVectorView rowLengths ) const; IndexType getRowLength( const IndexType row ) const; __cuda_callable__ Loading