Parallelize gcc lto

Aperta
#1,224 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
48/100
Tipo di issue
Funzionalità
Chiarezza
Specificata chiaramente
Stato di attività
Ferma
Stack tecnologico
cpp
Ambito
build-system

Direzione di ricerca

Inizia in makefile intorno alla riga 74 e rivedi le opzioni GCC LTO descritte nella documentazione GCC collegata. Controlla il percorso di build utilizzato quando STAN_CPP_OPTIMS è abilitato, quindi verifica con GCC che l'avviso relativo alla compilazione seriale di LTRANS venga soppresso e che il linking utilizzi il parallelismo.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

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.

Lingua principale
C++
Stelle
240
Fork
105
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di stan-dev/cmdstan

Tutte le issue di stan-dev/cmdstan

Issue simili

Altre issue su C++

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.