Parallelize gcc lto

Ouverte
#1,224 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
2/5
Temps estimé
1-3 heures
Accessibilité débutants
48/100
Type d'issue
Fonctionnalité
Clarté
Clairement spécifiée
Activité
À l'abandon
Stack technique
cpp
Domaine
build-system

Piste de recherche

Commencez dans makefile vers la ligne 74 et examinez les options GCC LTO décrites dans la documentation GCC liée. Vérifiez le chemin de build utilisé lorsque STAN_CPP_OPTIMS est activé, puis vérifiez avec GCC que l’avertissement de compilation série de LTRANS est supprimé et que le linking utilise le parallélisme.

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

Description

gcc allows passing the number of threads for parallelization to use at link time with LTO. Since gcc 10.x this can be set automatically with -flto=auto which will use either GNU Make's job server or fallback to detecting the number of available CPU threads (see the gcc documentation)

An additional ifeq check can be added to makefile around line 74. This will silence the lto-wrapper warning that currently pops up about serial compilation of LTRANS jobs when compiling with gcc and STAN_CPP_OPTIMS enabled and hopefully decrease the linking time.

Langage dominant
C++
Étoiles
240
Forks
105
Merge moyen
1 j 5 h
PR mergées (30 j)
1

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de stan-dev/cmdstan

Toutes les issues de stan-dev/cmdstan

Issues similaires

Plus d'issues C++

Recevez les nouvelles issues par e-mail

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