Skip to content

Preserve argtup#168

Merged
ranocha merged 1 commit into
JuliaSIMD:masterfrom
vchuravy:vc/gc_preserve
Feb 10, 2026
Merged

Preserve argtup#168
ranocha merged 1 commit into
JuliaSIMD:masterfrom
vchuravy:vc/gc_preserve

Conversation

@vchuravy

@vchuravy vchuravy commented Feb 8, 2026

Copy link
Copy Markdown
Contributor

On Julia 1.12, we are observing occasional GC faults in Trixi.

An in-depth root-cause analysis is availalble here: trixi-framework/Trixi.jl#2766 (comment)

Short explanation: Polyester is laundering object references through void pointers (the taskpointer),
if one is not exceptionally careful in manually preserving the objects, references can be easily dropped.

The Trixi example fails for me in about 30-50 tries (30s per run so about half an hour),
running multiple parallel reproducers for several hours I am unable to hit the failure again with this patch.

@ranocha ranocha left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks a lot for the detailed analysis!

@vchuravy

vchuravy commented Feb 9, 2026

Copy link
Copy Markdown
Contributor Author

Running overnight (roughly 15 hours in total), without reproducing the bug.

The nightly failure is unsettling since it means there is another memory management bug hidden somewhere...

@ranocha

ranocha commented Feb 9, 2026

Copy link
Copy Markdown
Member

Do you have an idea why two non-nightly CI jobs fail?

@vchuravy

vchuravy commented Feb 9, 2026

Copy link
Copy Markdown
Contributor Author

They are testing 1.12 and another bug is lurking. I tried looking at it today #169 and #170 but haven't had much luck unraveling that thread.

@ranocha

ranocha commented Feb 10, 2026

Copy link
Copy Markdown
Member

The same remaining CI failures also occur on the current release branch, see #171. Since this is the first time where "Julia 1" means Julia 1.12, fixing these additional failures is not required for merging this PR, which is already a strict improvement.

@ranocha ranocha merged commit e15c08e into JuliaSIMD:master Feb 10, 2026
47 of 54 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants