En parallèle faire: set-j8 comme l'option par défaut
Je pouvez définir le nombre de threads du processus de construction à l'aide de -j
argument. Par exemple, j'ai 4 coeurs +4 virtuel. Quand j'écris: make -j8
la vitesse augmente de 4 fois.
Est-il possible de définir la valeur par défaut? (Par exemple, sous Linux Gentoo, dans le fichier de configuration, il est possible de définir cette valeur par défaut).
p.s. J'ai Arch Linux
- Alors.. la valeur par défaut en C++ de faire option "run 4 fois plus lent que ce qui est possible"? Quelle étrange décision!
- En parallèle faire a beaucoup de défauts, et il en fait un mauvais défaut.
- Pubby: la Plupart des makefile auteurs ont de nombreux défauts et ne pas obtenir les dépendances à droite, conduisant finalement à de mauvaises expériences lors de la tentative des constructions parallèles 😉
- Mais souvent, c'est juste la reprise de
make
une fois de plus, fait tout droit, tout en ayant construit la plupart des choses beaucoup plus rapide. - J'ai une question qui illustre ce que vous avez dit: Erreur de construction utilisant wxWidgets -j (emplois) option avec MinGW
Vous devez vous connecter pour publier un commentaire.
Votre question n'est pas sur le fils, mais le processus (tâches) exécuté par faire.
De simple, de façon à définir ce, quand est utilisée à partir de la console d'ajouter:
à votre
.profile
fichier.Vous pouvez également utiliser
setenv MAKEFLAGS '-j 8'
, maisMAKEFLAGS
pouvez ignorer ce paramètre dans certains scénarios, car le maintien de nombre de processus exige de communiquer avec récursivemake
appels. Heureusement cette méthode fonctionne avec les versions actuelles de GNU Make.setenv
ici? Le csh builtin?Espérons que cette aide!
Voici comment je l'ai fait:
J'ai fait "alias" ma cible par défaut
all
à un "privé"_all
. La commande pour déterminer le nombre de cœurs est OSX spécifiques, autant que je sache, de sorte que vous pourriez juste l'améliorer et de le plus la croix-plate-forme, si vous voulez. Et à cause de la?=
affectation, il nous suffit de la remplacer par et env variable si/en cas de besoin.EDIT:
Vous pouvez également ajouter à votre
MAKEFLAGS
de dans le makefile lui-même, comme suit: