Macaulay2 / Macaulay2/M2

More linear algebra speed issues

Open
#3,513 5 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Engine Linear Algebra
Dominant language
Macaulay2
Stars
435
Forks
297
Avg merge
4d 20h
Merged PRs (30d)
11

Description

I keep finding new issues with doing linear algebra in M2 (I know this isn't M2's specialty but still...), see e.g. #2718.

I have this sample 461x149 QQ-valued matrix `m` which I'm not going to reproduce here.

(1) Asking for `kernel m` takes 16.7s on my desktop.

(2) Asking for `kernel promote(m,QQ[])` takes 2.2s. (?!?)

(3) Asking for `reducedRowEchelonForm m` takes 0.04s (as should be).

Clearly (1) shouldn't take more time than (3).

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the reported timings for `kernel m`, `kernel promote(m,QQ[])`, and `reducedRowEchelonForm m` using the 461x149 QQ-valued matrix described in the issue. Read the related discussion in #2718 and trace the entry points for these operations. Done means explaining or correcting why `kernel m` is substantially slower than the comparable row-reduction operation.

Written by the indexing model from the issue text.

Assessment

Domain
performance
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.