Comment accélérer la compilation avec Pacman

Salut, cette fois je vous apporte un petit conseil (que beaucoup savent probablement déjà), mais que plusieurs personnes qui utilisent habituellement des distributions basées sur Pacman ils ne savent probablement pas, et pour le pire: utilisent un seul noyau pour compiler.

Recommande fortement lis le "Considérations pour la compilation" avant de compiler fou et idiot

Allons-y…

Connaître notre nombre de processeurs

Nous allons d'abord voir combien de processeurs nous avons à disposition (les plus experts n'ont pas peur, il y a évidemment des différences entre les threads et les processeurs physiques, mais makepkg utilise les threads d'exécution comme paramètres), pour cela nous exécutons:

lscpu | grep '^ CPU (s):'

Dans mon cas, il renvoie:

[x11tete11x @ Jarvis ~] $ lscpu | grep '^ Processeur (s):' Processeur (s): 8 [x11tete11x @ Jarvis ~] $

En effet, dans le cas des processeurs Intel avec Hyper-Threading montre également les fils d'exécution.

Modifiez le fichier /etc/makepkg.conf

Nous éditons le fichier /etc/makepkg.conf dire à makepkg d'utiliser tous les processeurs disponibles; En termes de cela, selon le wiki Gentoo, le nombre de "travaux" à réaliser provient du compte suivant:

Nombre de processeurs + HT (HiperThreading en cas d'Intel pris en charge) + 1

Nous éditons:

sudo nano /etc/makepkg.conf

et nous modifions la ligne MAKEFLAGS (sans commenter ) avec la valeur correspondante, dans mon cas cela ressemblerait à ceci:

MAKEFLAGS = "- j9"

Nous enregistrons les modifications et le tour est joué, nous pouvons maintenant compiler nos packages en utilisant différents cœurs dans l'une de nos distributions en fonction de Pacman

Ensuite, je joins une vidéo dans laquelle vous pouvez voir comment «simplescreenrecorder» est compilé dans chaque cas, avec le MARQUEFLAGS (MAKEFLAGS = »- j9 ″), et sans le MAKEFLAGS(#MAKEFLAGS = »- j9 ″):


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.

  1.   Yoyo dit

    Oncle c'est, comme on dit dans ma ville «la bite au vinaigre» je veux dire, très bien 😛

    J'ai 4 cœurs, j'en ai 4, je suppose que je vais devoir mettre un 5 non?

    Au fait, corrigez makekpg.conf, que si vous ne voulez pas rendre le copy / pastero fou, c'est makepkg.conf

    Pacman règne !!!! 😛

    1.    x11tête11x dit

      Je viens de voir la petite erreur xD, j'ai déjà envoyé les garçons pour la corriger xD
      effectivement, dans votre cas, ce serait 5 xD.

      Je savais que tu allais aimer cet article xD hahaha

      1.    Manuel de la source dit

        Corrigée. 🙂

        1.    Manuel de la source dit

          Mon agent utilisateur me trahit, maintenant je suis à Arch ...

          Tout cela pour utiliser le même profil Firefox sur les deux distributions. 😛

      2.    routier dit

        Je profite de cette occasion pour commenter que si vous utilisez BFS (si vous ne savez pas ce que c'est alors vous ne l'utilisez pas), les performances maximales sont atteintes avec le nombre de cœurs tel quel, sans rien ajouter.

      3.    Fermer dit

        Et s'il me jette que j'ai "2" je mets 3 non?

      4.    x11tête11x dit

        Exact @ShutdowN

      5.    Azureus dit

        Je t'aime putain, je l'ai fait quand tu as reçu l'article, maintenant je l'utilise parce que je ne savais pas comment compiler hahaha.
        C'est bien parce que conky me dit que les 4 threads de mon i3 sont à 100% et quand je l'ai édité, je pense que je n'avais qu'un seul thread configuré. J'adore ça, je compile mon propre noyau en ce moment, voyons comment ça marche: v

    2.    thalskart dit

      Je suis d'accord avec Yoyo, même si dans ma ville ça ne se dit pas, c'est «la bite au vinaigre»! Dès que je rentre à la maison, je l'essaye.

      1.    cacho dit

        Qu'est-ce que tu goûte quand tu rentres chez toi ... la bite? hahaha
        tu m'as fait rire …
        Embrasser

  2.   Yoyo dit

    Je savais qu'il y en avait 5 parce que j'ai dit dans cet article comment compiler le noyau pour Debian à la main hahaha

    http://yoyo308.com/2013/11/22/como-compilar-e-instalar-el-ultimo-kernel-3-12-1-en-crunchbang-waldorf-debian-wheezy/

    1.    x11tête11x dit

      putain de voiture spamero xD hahaha

      1.    Manuel de la source dit

        Ne t'inquiète pas, je l'ai déjà dans le viseur de mon banhammer, muahahahaha.

      2.    nano dit

        "My banhammer", ne me faites pas vous frapper aussi pour faire baisser vos fumées <3

        1.    Manuel de la source dit

          Sors d'ici, tête de radis, continue de travailler ou je vais chercher le bâton.

      3.    animé dit

        Hahaha .. oh mon Dieu, j'aime cette communauté.

  3.   routier dit

    Ccache est également très utile, mais cela nécessite une compilation préalable pour accélérer la compilation.

    1.    thalskart dit

      Je n'ai pas compris, vous compilez pour accélérer la compilation?

      1.    routier dit

        ccache est un outil (largement utilisé par les utilisateurs de gentoo) qui permet de sauvegarder des fichiers intermédiaires à partir de la compilation d'une archive, résultant en la prochaine compilation de cet exécutable beaucoup, beaucoup plus rapidement. Également utile pour les développeurs d'applications et pour les personnes qui construisent et mettent constamment à jour leur propre noyau.

      2.    Yukiteru dit

        ccache est un cache de compilation, lorsque vous l'activez, la première compilation que vous faites dure aussi longtemps qu'elle devrait durer (si c'est Java, Firefox et LibreOffice ensemble vous vous assurez de quelques heures de compilation si votre matériel n'est pas très puissant), mais le la deuxième compilation du même logiciel (la même version, avec quelques changements dans ses options de compilation ou ses correctifs) sera beaucoup plus rapide car le ccache vérifie que beaucoup de ce qui est compilé est prêt et réduit le temps de compilation. Cependant, parfois cela pose des problèmes (pas à cause de quelque chose dans le Gentoo Wiki, ils mettent l'avertissement) et dans la liste FirefoxOS, ils le font également, donc si vous voulez mettre en cache, faites-le avec la même version, si vous allez dans une autre, effacez le cache et recommencez.

      3.    thalskart dit

        Merci à tous les deux pour l'information, je ne savais pas

  4.   Eduardo dit

    Je suis à Arch depuis un an et demi et je n'avais jamais entendu parler de cette astuce, merci.

  5.   hjoaco dit

    être pauvre, ça craint!
    hahahahahahaha

  6.   arch utilisateur dit

    Je vous remercie. ces données sont très bonnes

  7.   place Luis dit

    j'ai une question…

    J'utilise cette option depuis un moment (le nombre qu'il m'a lancé était de 4 donc il reste #MAKEFLAGS = »- j5 ″)

    mais je remarque que lorsque je mets à jour certains programmes, le CPU passe à 100% et il est difficile d'utiliser d'autres programmes pendant que cela se produit ...

    puis-je faire quelque chose entre les deux? par exemple, mettez un #MAKEFLAGS = »- j3 ″ ???? ou est-ce quelque chose qui est activé ou désactivé sans terrain d'entente?

    salutations.

    1.    x11tête11x dit

      Luis, oui, vous pouvez mettre -j3 sans problème, ce que fait ce paramètre est de définir dans combien de «threads» (pour ne pas entrer dans les détails, disons que les threads sont dans combien de «portions parallèles» vous allez traiter ce que vous allez faire) sera utilisé pour ce processus

  8.   anonyme dit

    parfait, maintenant je le mets. Merci vieux!