Matthias Koeppe on Sat, 18 Oct 2025 20:07:43 +0200


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: PARI/GP 2.17.2 testsuite hangs nondeterministically (macOS)


On Sat, Oct 18, 2025 at 2:03 AM Bill Allombert
<Bill.Allombert@math.u-bordeaux.fr> wrote:
> On Fri, Oct 17, 2025 at 03:18:35PM -0700, Matthias Koeppe wrote:
> > I am encountering nondeterministic hangs of PARI/GP while running its
> > testsuite on macOS. It seems to happen in particular in higher CPU
> > load situations.
> > The hang appears to be a pthread deadlock.

> Clearly it hangs in mt_queue_reset while waiting for threads to terminate.
>
> > https://github.com/passagemath/passagemath/issues/1684
>
> This report does not include any detail on the system platform.
> (what is the CPU, the OS version, the libc version, the compiler version etc.)

I test this on macOS 15 (Intel), 14, 15 (ARM), and 26, as provided by
GH Actions runners, https://github.com/actions/runner-images, using
the default compilers from Xcode (Apple clang).
The hangs show up nondeterministically on all tested platform
variants, for example in
https://github.com/passagemath/passagemath/actions/runs/18611887304/job/53071188372#step:10:1904

I reproduced these hangs locally on a machine with M1 Max running macOS 26.0.1.

> We run the full PARI test suite with  --mt=pthread on aarch64 MacOS 12.0 on a
> M1 every day and we never noticed any hangs. Maybe they happen without us
> noticing thought.  The latest buildlog is
> <https://pari.math.u-bordeaux.fr/buildlogs/caa3445f-35dd-4ced-86be-e830cd259888>

It's not happening in that log.

In these tests, you are likely missing the crucial condition "higher
CPU load situations".

I can provoke these hangs by running an unrelated parallel build that
saturates the available CPUs.

> PARI does not use OpenMP so setting OMP_NUM_THREADS should not have any effect.

Thanks, that's one fewer moving part to consider.

Matthias
-- 
Matthias Koeppe -- http://www.math.ucdavis.edu/~mkoeppe