gridap / gridap/Tutorials

Spurious memory allocation reproduced with `poisson_dev_fe.jl`

Ouverte
#82 2 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
Julia
Étoiles
144
Forks
50
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

This issue is to document a strange behaviour which is reproduced in `poisson_dev_fe.jl` when the following code is executed:

```
@time begin
for i in 1:100_000
smart_sum(manual_uₕ_array_at_qₖ)
end
end
```

A comment was attached to this code, that I move from there and put here to not forget

```
WHY THE SECOND PIECE OF CODE REQUIRES A NUMBER OF ALLOCATIONS THAT GROWS
WITH THE NUMBER OF CELLS? I CAN UNDERSTAND THAT THE CACHE ARRAY of
`manual_uₕ_array_at_qₖ` REQUIRES MORE MEMORY IN ABSOLUTE TERMS, BUT I AM NOT
ABLE TO SEE WHY IT GROWS WITH THE NUMBER OF CELLS!!!! ANY HINT?
```

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

Start with poisson_dev_fe.jl and run the shown @time loop around smart_sum(manual_uₕ_array_at_qₖ). Compare allocation counts as the number of cells changes, then trace the relevant Gridap and Julia calls. Done means identifying whether the growth is expected and documenting its cause or the next action.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
julia
Domaine
performance
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.