197g / 197g/rustc-pathogen

The reason behind inflated compilation times in `deep-and-broad`

Ouverte
#1 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
Shell
Étoiles
5
Forks
0
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

This is a guess:

Old incremental builds seem not to be cleanup when the dependencies change. That leads to a quadratic number of remnant folders of incremental states. Since the incremental engine iterates *all of* them when finding a suitable build folder to pick off (and finds none), this will do a quadratic number of io actions.

Reasoning:

After executing the creation script for a while we find a ton of remanining incremental directories

```bash
$ find -type d -name 'deeper*' target/incremental | wc -l
5402
```

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Piste de recherche

The issue describes a potential cause of inflated compilation times in the `deep-and-broad` scenario, likely related to incremental compilation in rustc/cargo. Start by examining the script that creates the scenario and the target/incremental directories it leaves behind. Investigate how cargo manages incremental build folders and when they are cleaned up. Look for the code in cargo or rustc that iterates over these directories. Determine if old incremental states are being retained when dependencies change, leading to quadratic IO.

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

Évaluation

Stack technique
rust
Domaine
build-system
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

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