Skip to content

Allow broadcasting in ewise operations #72

@rayegun

Description

@rayegun

Forgive me if this is already an open issue.

It would be very nice to add broadcasting of vectors into matrices to the spec. See Python/Julia and more languages for prior art. For instance if you ewise_mul(A::GrB_Matrix, v::GrB_Vector) v would expand across columns. Transpose operator could be used to expand across rows.

Note that this treats GrB_Vector explicitly as a column vector, which may not be in line with the spec.

This can already be achieved with a Diagonal matrix multiplication, but this has a few issues:

  1. At least SS:GrB doesn't implement a Diagonal type internally, so it has storage/construction overhead as I understand it.
  2. To expand over columns the diagonal must be on the left, vice versa for expanding over rows. This can be a problem for operations without commutativity.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions