AnglaisFrançaisEspagnol

Ad


Icône de favori OnWorks

likwid-pin - En ligne dans le Cloud

Exécutez likwid-pin dans le fournisseur d'hébergement gratuit OnWorks sur Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS

Il s'agit de la commande likwid-pin qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS

PROGRAMME:

Nom


likwid-pin - épingle une application séquentielle ou filetée à des processeurs dédiés

SYNOPSIS


broche likwid [-vhqipS] [-c ] [-s ] [-d ]

DESCRIPTION


broche likwid est une application en ligne de commande pour épingler une application séquentielle ou multithread
vers des processeurs dédiés. Il peut être utilisé en remplacement de ensemble de tâches (1). L'opposé de
taskset pas de masque d'affinité mais des processeurs uniques sont spécifiés. Pour multithread
applications basées sur la bibliothèque pthread le pthread_create l'appel à la bibliothèque est surchargé
via LD_PRELOAD et chaque thread créé est épinglé à un processeur dédié comme spécifié
in liste_core

Par défaut, chaque thread généré est épinglé au noyau dans l'ordre des appels à
pthread_create. Il est possible d'ignorer des threads uniques en utilisant l'option de ligne de commande -s.

Pour les implémentations OpenMP, les compilateurs gcc et icc sont explicitement pris en charge. D'autres peuvent aussi
. broche likwid définit la variable d'environnement OMP_NUM_THREADS pour vous si ce n'est déjà fait
présent. Il définira autant de threads que présents dans l'expression de la broche. Soit conscient que
avec pthreads, le thread parent est toujours épinglé. Si vous créez par exemple 4 threads avec
pthread_create et n'utilisez pas le processus parent en tant que travailleur que vous devez toujours fournir
num_threads+1 identifiants de processeur.

broche likwid prend en charge différentes numérotations pour l'épinglage. Par numérotation physique par défaut de
les noyaux sont utilisés. c'est aussi la numérotation likwid-topologie(1) rapports. Mais aussi
une numérotation logique à l'intérieur du nœud ou des sockets peut être utilisée. Si vous utilisez un N (par exemple -c
N:0-6) les cœurs sont numérotés logiquement sur l'ensemble du nœud. Les noyaux physiques viennent en premier. Si
un système, par exemple, a 8 cœurs avec 16 threads SMT avec -c N:0-7, vous obtenez tous les cœurs physiques.
Si vous spécifiez -c N:0-15, vous obtenez tous les cœurs physiques et tous les threads SMT. Avec S, vous pouvez
spécifiez les numérotations logiques à l'intérieur des sockets, encore une fois les cœurs physiques viennent en premier. vous pouvez mélanger
différents domaines séparés par @. Par exemple -c S0:0-3@S2:2-3 vous épinglez le thread 0-3 sur logique
les cœurs 0-3 sur le socket 0 et les threads 4-5 sur les cœurs logiques 2-3 sur le socket 2.

Pour les applications où la politique de premier contact sur les systèmes numa ne peut pas être utilisée broche likwid
peut être utilisé pour activer le placement de mémoire entrelacée. Cela peut accélérer considérablement la
performances des codes multithread liés à la mémoire. Tous les nœuds numa auxquels l'utilisateur a épinglé les threads
sont utilisés pour l'entrelacement.

OPTIONS


-v imprime les informations de version sur la sortie standard, puis se ferme.

-h imprime un message d'aide sur la sortie standard, puis se ferme.

-c OR OR <dispersion politique>
spécifier une liste numérique de processeurs. La liste peut contenir plusieurs éléments,
séparés par des virgules et des plages. Par exemple 0,3,9-11. Vous pouvez également utiliser logique
numérotations, soit au sein d'un nœud (N), soit d'un socket (S ) ou un domaine numa (M ).
likwid-pin prend également en charge l'épinglage logique dans un cpuset avec un préfixe L. Si tu
omettre cette option likwid-pin épinglera les threads aux processeurs sur le nœud
avec les cœurs physiques d'abord. Voir ci-dessous pour plus de détails sur l'utilisation d'une expression de thread ou
politique de dispersion

-s
Spécifiez le masque de saut en tant que numéro HEX. Pour chaque bit défini, le fil correspondant est
sauté.

-S Tous les domaines de mémoire ccNUMA appartenant à la liste de threads spécifiée seront nettoyés
avant la course. Peut résoudre les problèmes de cache de tampon de fichiers sous Linux.

-p imprime les domaines de thread disponibles pour l'épinglage logique. Si utilisé en combinaison
avec -c, les ID de processeur physique sont imprimés sur stdout.

-i définir la politique de mémoire numa pour qu'elle s'entrelace sur tous les nœuds numa impliqués dans l'épinglage

-q exécution silencieuse sans sortie

-d
définir le délimiteur utilisé pour afficher la liste des processeurs physiques (-p & -c)

EXEMPLE


1. Pour l'application pthread standard :

broche likwid -c 0,2,4-6 ./monApp

Le processus parent est épinglé au processeur 0. Thread 0 au processeur 2, thread 1 à
processeur 4, thread 2 au processeur 5 et thread 3 au processeur 6. Si plusieurs threads sont
créé que spécifié dans la liste des processeurs, ces threads sont épinglés au processeur 0 comme
se retirer.

2. Pour gcc OpenMP, autant d'identifiants doivent être spécifiés dans la liste des processeurs qu'il y a de threads :

OMP_NUM_THREADS=4 ; broche likwid -c 0,2,1,3 ./monApp

3. Un contrôle total sur l'épinglage peut être obtenu en spécifiant un masque de saut. Par exemple
la commande suivante ignore l'épinglage du thread 1 :

OMP_NUM_THREADS=4 ; broche likwid -s Assistance -c 0,2,1,3 ./monApp

4. Le commutateur -c prend en charge la définition de threads dans un domaine d'affinité spécifique comme
Nœud NUMA ou groupe de cache. Les domaines d'affinité disponibles peuvent être récupérés avec le -p
switch et aucune autre option sur la ligne de commande. Les domaines d'affinité communs sont N
(nœud entier), SX (socket X), CX (groupe de cache X) et MX (groupe de mémoire X). Plusieurs
les domaines d'affinité peuvent être définis séparés par @. Afin d'épingler 2 filetages sur chaque douille
d'un système à 2 prises :

OMP_NUM_THREADS=4 ; broche likwid -c S0:0-1@S1:0-1 ./monApp

5. Une autre définition d'argument du commutateur -c permet d'épingler les threads en fonction
à une expression comme E:N:4:1:2. La syntaxe est E : :
fils>( : : ). L'exemple épingle 8 threads avec 2 threads SMT par
core sur une machine SMT 4:

OMP_NUM_THREADS=4 ; broche likwid -c E:N:8:2:4 ./monApp

6. La dernière alternative pour le commutateur -c est la dispersion automatique des threads sur
domaines d'affinité. Par exemple, pour disperser les threads sur tous les domaines de mémoire dans un
système:

OMP_NUM_THREADS=4 ; broche likwid -c M:dispersion ./monApp

Utilisez likwid-pin en ligne en utilisant les services onworks.net


Serveurs et postes de travail gratuits

Télécharger des applications Windows et Linux

  • 1
    libusb
    libusb
    Bibliothèque pour activer l'espace utilisateur
    programmes d'application pour communiquer avec
    Périphériques USB. Public : Développeurs, Fin
    Utilisateurs/Bureau. Langage de programmation : C
    Catégories ...
    Télécharger libusb
  • 2
    LAMPÉE
    LAMPÉE
    SWIG est un outil de développement logiciel
    qui relie les programmes écrits en C et
    C++ avec une variété de
    langages de programmation. SWIG est utilisé avec
    différent...
    Télécharger SWIG
  • 3
    Thème de réaction WooCommerce Nextjs
    Thème de réaction WooCommerce Nextjs
    Thème React WooCommerce, construit avec
    Suivant JS, Webpack, Babel, Node et
    Express, en utilisant GraphQL et Apollo
    Client. Boutique WooCommerce dans React (
    contient : Produits...
    Télécharger le thème WooCommerce Nextjs React
  • 4
    archlabs_repo
    archlabs_repo
    Repo de paquets pour ArchLabs Ceci est un
    application qui peut également être récupérée
    de
    https://sourceforge.net/projects/archlabs-repo/.
    Il a été hébergé dans OnWorks en...
    Télécharger archlabs_repo
  • 5
    Projet Zéphyr
    Projet Zéphyr
    Le projet Zephyr est une nouvelle génération
    système d'exploitation en temps réel (RTOS) qui
    prend en charge plusieurs matériels
    architecturales. Il est basé sur un
    noyau à faible encombrement...
    Télécharger le projet Zéphyr
  • 6
    SCons
    SCons
    SCons est un outil de construction de logiciels
    c'est une alternative supérieure à la
    outil de construction classique "Make" qui
    nous connaissons et aimons tous. SCons est
    mis en place un...
    Télécharger SCons
  • Plus "

Commandes Linux

Ad