77324

ЭФФЕКТИВНОСТЬ НИТЕЙ В СИСТЕМАХ С ОБЩЕЙ ПАМЯТЬЮ

Научная статья

Информатика, кибернетика и программирование

Бахтерев ИММ УрО РАН Екатеринбург Традиционно считается что в системах с общей памятью разбивать вычисление на параллельно выполняющиеся задачи эффективней при помощи нитей а не процессов. Когда же уточняют то говорят о контексте исполнения связанным с TLB Trnsltion Lookside Buffer специальный кэш ускоряющий трансляцию виртуальных адресов в физические который нужно сбрасывать и заполнять новыми значениями при переключении процессора на исполнение разных процессов и которой можно не изменять при переключении на исполнение нитей одного...

Русский

2015-02-02

29.5 KB

0 чел.

ЭФФЕКТИВНОСТЬ НИТЕЙ В СИСТЕМАХ С ОБЩЕЙ ПАМЯТЬЮ

М.О. Бахтерев

ИММ УрО РАН

Екатеринбург

Традиционно считается, что в системах с общей памятью разбивать вычисление на параллельно выполняющиеся задачи эффективней при помощи нитей, а не процессов. Это обычно обосновывают тем, что переключения контекста исполнения процессора с процесса на процесс намного затратней, чем его переключение с нити на нить. Но говоря о таких затратах, редко уточняют, что именно представляет собой этот контекст исполнения. Когда же уточняют, то говорят о контексте исполнения, связанным с TLB (Translation Lookaside Buffer - специальный кэш, ускоряющий трансляцию виртуальных адресов в физические), который нужно сбрасывать и заполнять новыми значениями при переключении процессора на исполнение разных процессов, и которй можно не изменять при переключении на исполнение нитей одного процесса. Считают, что именно эти дополнительные операции с TLB делают нити более эффективными в сравнении с процессами. Однако в подобных рассуждениях не учтено следующее.

 1. Большинство архитектур процессоров с поддержкой виртуальной памяти позволяют хранить в TLB трансляции для разных процессов. Достигается это поддержкой сегментации или механизмов управления адресными пространствами. Такими были и процессоры SPARC, в операционной системе для которых (SunOS 4.x) впервые появился современный вариант нитей. Вероятнее всего, поддержка нитей была предложена компанией SUN действительно для решения проблемы с чрезмерно высокими накладными расходами переключения контекста исполнения процессора на новый процесс, но этот контекст был связан не с TLB, а с кэшами процессора, которые работали по виртуальным адресам. Но в современных процессорах такие кэши почти не встречаются.

2. Объём TLB ограничен. Поэтому обработка больших объёмов данных, которые обычно возникают в супервычислениях, требует и в случае нитей интенсивного обновления TLB в ходе расчёта.

3. Требуемое семантикой нитей общее адресное пространство «бесплатно» образуется только при выполнении нитей на одном процессоре (один TLB). Когда нити выполняются на множестве процессоров, то каждое действие с адресным пространством: выделение или освобождение памяти, расширение стека - требует согласованного управления TLB всех процессоров, задействованных в вычислении. А для этого управления необходимы выполнение критических секций и в некоторых случаях (например, освобождение памяти) прерывание работы нитей. Кроме этого, дополнительные накладные расходы могут быть связаны со сложностью структуры общего адресного пространства. Ведь, даже если программа не предполагает совместное использование некоторых областей этого пространства, их захват и освобождение должны быть согласованы между нитями. Каждый захват при этом усложняет структуру пространства и увеличивает время выполнения последующих операций с памятью.

Таким образом, с нитями и процессами связаны два типа накладных расходов. Со стороны процессов: большая интенсивность операций с TLB. Со стороны нитей: дополнительные сложности поддержки общего адресного пространства. Так как априори не ясно, при помощи какой математической модели можно определить, какой вид издержек менее затратен, мы сравнили эти накладные расходы экспериментально. Для этого были написаны многонитевая и многопроцессорная версии программ для 4-ёх вычислительных нагрузок: умножение матриц хранящихся как построчно, так и плиткой, управление памятью, расчёты с интенсивными обменами. Наши результаты показывают, что во многих случаях нити не только не являются более эффективным средством декомпозиции вычисления на задачи, но и существенно проигрывают в этой эффективности процессам.

Работа выполнена при поддержке программы Президиума РАН № 18 "Алгоритмы и математическое обеспечение для вычислительных систем  сверхвысокой производительности", а также проекта 12-П-1-1034 УрО РАН.


 

А также другие работы, которые могут Вас заинтересовать

79285. Деловая оценка персонала 16.2 KB
  Делова оценка персонала– анализ соответствия профессиональных и личных характеристик (компетенций) индивида требованиям должности, которую он занимает или на которую он претендует, при помощи определенных критериев.
79286. Профориентация и трудовая адаптация персонала 13.38 KB
  Профориентация и трудовая адаптация персонала Профессиональная ориентация и адаптация выступают важным составным элементом системы подготовки кадров и являются регулятором связи между системой образования и производством. Профессиональная ориентация представляет собой систему мер по профинформации профконсультации профподбору и профадаптации которая помогает человеку выбирать профессию наиболее соответствующую потребностям общества и его личным способностям и особенностям. Сложились следующие формы профориентационной работы: ...
79287. Основы организации труда персонала 15 KB
  Основы организации труда персонала Модель организации труда как и модель любой организации может быть представлена в трех основных аспектах. Вопервых организация труда как структура. Она определенным образом располагает соединяет моменты труда орудия груда предметы труда и сам труд. Вовторых организация труда как динамическая система т.
79288. Высвобождение персонала 55.85 KB
  Высвобождение персонала Высвобождение персонала это вид управленческой деятельности предусматривающий комплекс мероприятий по соблюдению правовых норм и организационно-психологической поддержки со стороны администрации при увольнении работников. Виды высвобождения персонала из организации приведены на рис. тот вид высвобождения который практически не прогнозируется администрацией и как правило происходит для нее неожиданно. Однако с точки зрения работника это наиболее мягкий вид высвобождения: работник готов покинуть организацию и...
79289. Управление социальным развитием организации 11.87 KB
  Управление социальным развитием организации Говоря об управлении социальным развитием организации можно использовать термин – Социальная политика организации которая характеризуется как часть политики управления персоналом и включающая в себя все цели и мероприятия связанные с добровольными социальными услугами организации. Социальная политика организации означает уважение признание заслуг и поощрение людей. Соответственно этому система дополнительных социальных льгот должна быть не только привлекательной для сотрудника но и...
79290. Организация обучения персонала 19.09 KB
  Организация обучения персонала. Следует различать три вида обучения. Отечественный и зарубежный опыт выработал три концепции обучения квалифицированных кадров: Концепция специализированного обучения ориентирована на сегодняшний день или ближайшее будущее и имеет отношение к соответствующему рабочему месту. Концепция многопрофильного обучения является эффективной с экономической точки зрения так как повышает внутрипроизводственную и внепроизводственную мобильность работника.
79291. Аттестация персонала 13.3 KB
  Аттестация персонала организаций основного звена управления процедура определения квалификации уровня знаний практических навыков деловых и личностных качеств работников качества труда и его результатов и установления их соответствия несоответствия занимаемой должности. Аттестация персонала служит юридической основой для переводов продвижения по службе награждения определения размера заработной платы а также понижения в должности и увольнения. Аттестация направлена на улучшение качественного состава персонала определение степени...
79292. Управление деловой карьерой, служебно-профессиональным продвижением 353.73 KB
  Деловая карьера поступательное продвижение личности в какойлибо сфере деятельности изменение навыков способностей квалификационных возможностей и размеров вознаграждения связанных с деятельностью; продвижение вперед по однажды выбранному пути деятельности достижение известности славы обогащения. Планирование и контроль деловой карьеры заключаются в том что с момента принятия работника в организацию и до предполагаемого увольнения с работы необходимо организовать планомерное горизонтальное и вертикальное продвижение работника по...
79293. Работа с кадровым резервом 17.89 KB
  Работа с кадровым резервом Принципы формирования и источники кадрового резерва Формирование кадрового резерва основывается на следующих принципах: актуальность резерва потребность в замещении должностей должна быть реальной; соответствие кандидата должности и типу резерва требования к квалификации кандидата при работе в определенной должности; перспективность кандидата ориентация на профессиональный рост требования к образованию возрастной ценз стаж работы в должности и динамичность карьеры в целом состояние здоровья. Источниками...