Skip to content

[RFC]: add blas/ext/base/gswap-columns #1052

Description

@kgryte

This API interchanges two columns in an input matrix.

API signature:

gswapColumns( order, M, N, i, j, A, LDA )
gswapColumns.ndarray( M, N, i, j, A, strideA1, strideA2, offsetA )

For column-major, this should be a straightforward wrapper around gswap after computing the respective offsets (i.e., index of the first indexed elements for each column). For row-major, one should iterate across rows and swap individual elements.

We can likely support negative i and j which, if negative, should be normalized to i = N + i and j = N + j, respectively.

Follow on Work

Once this RFC is completed, the following packages can be added:

  • [RFC]: add blas/ext/base/dswap-columns
  • [RFC]: add blas/ext/base/sswap-columns
  • [RFC]: add blas/ext/base/cswap-columns
  • [RFC]: add blas/ext/base/zswap-columns

Metadata

Metadata

Assignees

Labels

EnhancementTask to enhance existing functionality.FeatureTask to add a new feature.difficulty: 2May require some initial design or R&D, but should be straightforward to resolve and/or implement.estimate: <2hrsTask which should take less than 2 hours.priority: NormalNormal priority concern or feature request.🤖 AIAllowed to use AI.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions