I observed that Singular leaks a lot and here is small testcase.
sage 10.8 on linux with system Singular
Singular for x86_64-Linux version 4.4.1 (44100, 64 bit) Jan 2025
Attaching a testcase, where
Singular.groebner_basis(algorithm="singular:std") in a loop is
interrupted by alarm() has the following properties:
In the ipython shell, each alarm starts new sage shell + new system
process Singular. I saw them in the XFCE system manager.
When exiting the main sage, the Singular subprocesses survive and use
a lot of RAM, the OOM kills other than Singular processes, which
borders with DOS.
===
def singular_leak1(n=50,ntries=100,algorithm="singular:std"):
"""
Interrupting singular.groebner_basis() with alarm
Author: Georgi Guninski Thu Jan 8 01:09:42 PM UTC 2026
"""
Kx=PolynomialRing(GF(2),'x',n)
for i in range(ntries):
print(i)
I=[Kx.random_element(degree=3) for _ in range(n//2)]
alarm(1)
try:
gb=Ideal(I).groebner_basis(algorithm=algorithm)
except Exception as e:
print(' exception',e)
cancel_alarm()
--
You received this message because you are subscribed to the Google Groups
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion visit
https://groups.google.com/d/msgid/sage-devel/CAGUWgD-dRAMCUxbpqKspzAmOyB4%3DotCnaXmnr-hvXkZne14pWA%40mail.gmail.com.