АнглийскийФранцузскийИспанский

Ad


Значок OnWorks

likwid-pin - Интернет в облаке

Запустите likwid-pin в бесплатном хостинг-провайдере OnWorks через Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS

Это команда likwid-pin, которую можно запустить в бесплатном хостинг-провайдере OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.

ПРОГРАММА:

ИМЯ


likwid-pin - закрепить последовательное или многопоточное приложение на выделенных процессорах

СИНТАКСИС


Ликвид-булавка [-vhqipS] [-c ] [-s ] [-d ]

ОПИСАНИЕ


Ликвид-булавка это приложение командной строки для закрепления последовательных или многопоточных приложений
выделенным процессорам. Может использоваться как замена набор задач(1). Напротив
в наборе задач нет маски соответствия, но указаны отдельные процессоры. Для многопоточного
приложения на основе библиотеки pthread pthread_create вызов библиотеки перегружен
через LD_PRELOAD, и каждый созданный поток прикрепляется к выделенному процессору, как указано
in core_list

По умолчанию каждый сгенерированный поток прикрепляется к ядру в порядке вызовов к
pthread_create. Можно пропустить отдельные потоки, используя параметр командной строки -s.

Для реализаций OpenMP явно поддерживаются компиляторы gcc и icc. Другие также могут
Работа. Ликвид-булавка устанавливает для вас переменную среды OMP_NUM_THREADS, если еще не
настоящее время. Он установит столько потоков, сколько присутствует в выражении булавки. Быть в курсе, что
с pthreads родительский поток всегда закреплен. Если вы создаете, например, 4 потока с
pthread_create и не используйте родительский процесс в качестве рабочего, вам все равно нужно предоставить
num_threads + 1 идентификатор процессора.

Ликвид-булавка поддерживает разные нумерации для закрепления. По умолчанию физическая нумерация
используются жилы. Это тоже нумерация Likwid-топология(1) отчеты. Но также
может использоваться логическая нумерация внутри узла или сокетов. При использовании с N (например, -c
N: 0-6) ядра логически пронумерованы по всему узлу. Физические ядра на первом месте. Если
система, например, имеет 8 ядер с 16 потоками SMT с -c N: 0-7, вы получаете все физические ядра.
Если вы укажете -c N: 0-15, вы получите все физические ядра и все потоки SMT. С S вы можете
укажите логическую нумерацию внутри сокетов, снова на первом месте физические ядра. Вы можете смешать
разные домены, разделенные знаком @. Например, -c S0: 0-3 @ S2: 2-3 вы закрепляете поток 0-3 в логическом
ядра 0-3 на сокете 0 и потоки 4-5 на логических ядрах 2-3 на сокете 2.

Для приложений, в которых нельзя использовать политику первого прикосновения к системам numa. Ликвид-булавка
может использоваться для включения чередования размещения в памяти. Это может значительно ускорить
производительность многопоточных кодов с привязкой к памяти. Все узлы numa, к которым пользователь прикрепил потоки
используются для чередования.

ДОПОЛНИТЕЛЬНЫЕ УСЛУГИ, НЕ ВКЛЮЧЕННЫЕ В ПАКЕТ


-v выводит информацию о версии на стандартный вывод и завершает работу.

-h выводит справочное сообщение на стандартный вывод и закрывается.

-c OR OR <scatter политика>
укажите числовой список процессоров. Список может содержать несколько элементов,
через запятую и диапазоны. Например 0,3,9-11. Вы также можете использовать логические
нумерации, либо в узле (N), либо в сокете (S ) или домен нумы (M ).
likwid-pin также поддерживает логическое закрепление внутри процессора с префиксом L. если ты
опустить эту опцию likwid-pin будет прикреплять потоки к процессорам на узле
сначала с физическими ядрами. См. Ниже подробные сведения об использовании выражения потока или
политика разброса

-s
Укажите маску пропуска как шестнадцатеричное число. Для каждого установленного бита соответствующий поток
пропущено.

-S Все домены памяти ccNUMA, принадлежащие указанному списку потоков, будут очищены.
перед бегом. Может решить проблемы с кешем файлового буфера в Linux.

-p печатает доступные домены потоков для логического закрепления. При использовании в комбинации
с -c идентификаторы физических процессоров выводятся на стандартный вывод.

-i установить политику памяти numa для чередования, охватывающего все узлы numa, участвующие в закреплении

-q тихое выполнение без вывода

-d
установить разделитель, используемый для вывода списка физических процессоров (-p & -c)

ПРИМЕР


1. Для стандартного приложения pthread:

Ликвид-булавка -c 0,2,4-6 ./мое приложение

Родительский процесс закреплен за процессором 0. Поток 0 - процессор 2, поток 1 -
процессор 4, поток 2 к процессору 5 и поток 3 к процессору 6. Если больше потоков
созданы, чем указано в списке процессоров, эти потоки прикрепляются к процессору 0 как
отступать.

2. Для gcc OpenMP в списке процессоров должно быть указано столько идентификаторов, сколько потоков:

OMP_NUM_THREADS = 4; Ликвид-булавка -c 0,2,1,3 ./мое приложение

3. Полный контроль над закреплением можно получить, указав маску пропуска. Например
следующая команда пропускает закрепление потока 1:

OMP_NUM_THREADS = 4; Ликвид-булавка -s 0x1 -c 0,2,1,3 ./мое приложение

4. Ключ -c поддерживает определение потоков в определенном домене сродства, например
Узел NUMA или группа кэша. Доступные аффинные домены можно получить с помощью -p
переключатель и никаких дополнительных параметров в командной строке. Общие домены сродства - N
(весь узел), SX (сокет X), CX (группа кэша X) и MX (группа памяти X). Несколько
Домены сродства можно указать через @. Для того, чтобы наколоть по 2 резьбы на каждую розетку
2-розеточной системы:

OMP_NUM_THREADS = 4; Ликвид-булавка -c S0:0-1@S1:0-1 ./мое приложение

5. Определение другого аргумента ключа -c позволяет закреплять потоки в соответствии с
на такое выражение, как E: N: 4: 1: 2. Синтаксис E: :
темы> (: : ). В примере выводится 8 ниток с 2 нитками SMT на
ядро на машине SMT 4:

OMP_NUM_THREADS = 4; Ликвид-булавка -c E: N: 8: 2: 4 ./мое приложение

6. Последняя альтернатива переключателю -c - автоматическое разбрасывание потоков на
аффинные домены. Например, чтобы распределить потоки по всем доменам памяти в
система:

OMP_NUM_THREADS = 4; Ликвид-булавка -c M: разброс ./мое приложение

Используйте likwid-pin онлайн с помощью сервисов onworks.net


Бесплатные серверы и рабочие станции

Скачать приложения для Windows и Linux

  • 1
    libusb
    libusb
    Библиотека для включения пользовательского пространства
    прикладные программы для связи с
    USB-устройства. Аудитория: Разработчики, Конец
    Пользователи/рабочий стол. Язык программирования: С.
    Категории ...
    Скачать libusb
  • 2
    Сковорода
    Сковорода
    SWIG - это инструмент для разработки программного обеспечения
    который соединяет программы, написанные на C, и
    C ++ с множеством высокоуровневых
    языки программирования. SWIG используется с
    разные...
    Скачать SWIG
  • 3
    Тема WooCommerce Nextjs React
    Тема WooCommerce Nextjs React
    Тема React WooCommerce, созданная с помощью
    Далее JS, Webpack, Babel, Node и
    Экспресс, используя GraphQL и Apollo
    Клиент. Магазин WooCommerce в React (
    содержит: продукты...
    Скачать тему WooCommerce Nextjs React
  • 4
    Archlabs_repo
    Archlabs_repo
    Репозиторий пакетов для ArchLabs Это
    приложение, которое также можно получить
    от
    https://sourceforge.net/projects/archlabs-repo/.
    Он был размещен на OnWorks в...
    Скачать archlabs_repo
  • 5
    Зефир Проект
    Зефир Проект
    Проект Zephyr - новое поколение
    операционная система реального времени (RTOS), которая
    поддерживает несколько аппаратных средств
    архитектуры. Он основан на
    компактное ядро ​​...
    Скачать проект Зефир
  • 6
    SCons
    SCons
    SCons - инструмент для создания программного обеспечения
    это лучшая альтернатива
    классический инструмент сборки "Make",
    мы все знаем и любим. SCons - это
    реализовал ...
    Скачать SCons
  • Больше »

Команды Linux

Ad