Macaulay2 / Macaulay2/M2

Oscillators tests running out of memory

Open
#3,820 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

arm build issue package issue
Dominant language
Macaulay2
Stars
435
Forks
297
Avg merge
4d 20h
Merged PRs (30d)
11

Description

This has been happening a bunch on PPA builds for 32-bit architectures (e.g., [this one](https://launchpadlibrarian.net/793311093/buildlog_ubuntu-bionic-armhf.macaulay2_1.24.11+git202505141601-0ppa202505110408~ubuntu18.04.1_BUILDING.txt.gz).)

```m2
-- capturing check(0, "Oscillators") -- 1.42224s elapsed
-- capturing check(1, "Oscillators") -- capture failed; retrying ...
-- running check(1, "Oscillators") -- 6.94268s elapsed
-- capturing check(2, "Oscillators") -- capture failed; retrying ...
-- running check(2, "Oscillators") -- 9.40938s elapsed
-- capturing check(3, "Oscillators") -- .637755s elapsed
-- capturing check(4, "Oscillators")Too many heap sections: Increase MAXHINCR or MAX_HEAP_SECTS
```

That test takes almost 20 seconds on my system, and there a few others that take a while, too:

```m2
-- capturing check(0, "Oscillators") -- .316898s elapsed
-- capturing check(1, "Oscillators") -- capture failed; retrying ...
-- running check(1, "Oscillators") -- 2.25018s elapsed
-- capturing check(2, "Oscillators") -- capture failed; retrying ...
-- running check(2, "Oscillators") -- 4.3104s elapsed
-- capturing check(3, "Oscillators") -- .585084s elapsed
-- capturing check(4, "Oscillators") -- 19.7782s elapsed
-- capturing check(5, "Oscillators") -- warning: experimental computation over inexact field begun
-- results not reliable (one warning given per session)
-- 10.5415s elapsed
-- capturing check(6, "Oscillators") -- 9.65044s elapsed
-- running check(7, "Oscillators") -- 3.81465s elapsed
-- running check(8, "Oscillators") -- 3.84548s elapsed
-- running check(9, "Oscillators") -- 30.3098s elapsed
-- capturing check(10, "Oscillators") -- 10.3501s elapsed
```

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

Start by running the Oscillators checks and compare their behavior on a 32-bit PPA-style build, using the reported timings and the MAXHINCR/MAX_HEAP_SECTS failure as the symptoms to investigate. Trace which check causes excessive memory use or runtime, then verify that the Oscillators test suite completes without heap-section exhaustion and with improved behavior on the affected architecture.

Written by the indexing model from the issue text.

Assessment

Domain
performance, testing-qa
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
40/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.