77280

THREAD EFFICENCY ON SHARED MEMORY SYSTEMS

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

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

Bkhterev IMM UrB RS It is trdition to think tht computtion decomposition into tsks executed in prllel on the shred memory systems is more effective with threds but not with processes. Usully this point of view grounds on tht the switching cpu execution context between processes is more expensive thn the switching between threds. If it is specified then it is execution context ssocited wit TLB Trnsltion Lookside Buffer which should be reset nd filled with new vlues when the processor is being switched between execution of different...

Английский

2015-02-02

22.5 KB

0 чел.

THREAD EFFICENCY ON SHARED MEMORY SYSTEMS

M.O. Bakhterev

IMM UrB RAS

It is tradition to think that computation decomposition into tasks executed in parallel on the shared memory systems is more effective with threads, but not with processes. Usually this point of view grounds on that the switching cpu execution context between processes is more expensive than the switching between threads. But telling about such an expenses they rarely specify what exactly this execution context is. If it is specified, then it is execution context associated wit TLB (Translation Lookaside Buffer), which should be reset and filled with new values when the processor is being switched between execution of different processes, and which may be left unmodified when being switched between threads of the same process. However, such reasoning does not take following into account.

1. The majority of processor architectures with virtual memory support allows to store in TLB translations for different processes. It is achieved with support of segmentation or address space management logic. And so was SPARC processors, in operating system for which (SunOS 4.x) for the first time there was introduced support for modern version of threads. Most likely, SUN Microsystems suggested thread support indeed to solve the problem with excessively high overhead of switching execution context between processes. But that context was associated not with TLB, but with processor's caches, which was virtually addressed. Such a caches are rarely found in modern processors.

2. TLB capacity is limited. So the processing of large volumes of data, which usually emerge in supercomputations, demands intensive updates of TLB during calculation in the case of threads usage too.

3. A common address space, assumed by the threads execution semantic, costs «nothing» only when threads are executed on uniprocessor (one TLB). When threads are executed on the set of many processors, for every operation with address space: memory allocation and freeing, stack expansion -- the coordinated TLB management on all processors, involved in computation, is needed. And that management demands execution of critical sections and even threads interruption in some cases (for instance, memory deallocation). Besides, additional overhead may be connected with common address space structure complexity. Even the program does not assume shared access to some areas of that space, their allocation and release should be coordinated between threads. Each allocation herewith complicates the space structure and increases execution time of the subsequent operations with memory.

Thus, there are two overhead kinds associated with threads and processes. From processes' side: greater operations with TLB intensity. From threads': additional complexity of common address space support. It is not clear a priori, which mathematical model allows to decide, which kind of overhead is less expensive. So we compared this overheads experimentally. For that purpose there were written multithreaded and multiprocessed versions of programs for four different computational loads: the multiplication of row-stored and tile-stored matricies, memory management, calculation with intensive data exchange. Our results shows, that in many cases threads are not only less effective tool for computation decomposition into tasks, but are significantly lose this efficiency to processes.


 

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

71731. Методы оценки погрешностей при прямых и косвенных измерениях количественных значений различных величин 150.5 KB
  Научиться обрабатывать результаты прямых и косвенных измерений с учетом случайных и систематических погрешностей. Состояние производства и научных исследований предъявляют постоянно растущие требования к точности измерений которые удовлетворяются не только за счет создания...
71732. Методы статистической обработки выборочных данных 165 KB
  Что показывает корреляционная зависимость между статистическими совокупностями Характеристика корреляционной зависимости по значению коэффициента парной корреляции. Связь коэффициентов уравнений регрессии с коэффициентом корреляции и их геометрический смысл.
71733. Основы спектроскопии и колориметрии 2.64 MB
  Охарактеризуйте электромагнитные волны различных диапазонов по способу получения того или иного вида излучения. Назовите виды спектров излучения и поглощения. Как изменяется спектр излучения твердого тела при нагревании Как связаны спектры излучения и поглощения с атомным...
71734. Основы использования поляризованного света в медико-биологических исследованиях 148.5 KB
  Цель работы: Познакомиться со способами получения поляризованного света. Какова природа света Чем естественный свет отличается от поляризованного Укажите способы получения поляризованного света. Что общего и в чем отличие в получении поляризованного света после прохождения призмы Николя...
71735. Изучение законов радиоактивного излучения 183.5 KB
  Чем объясняется ослабление бета-излучения при прохождении через вещество Охарактеризовать способность вещества поглощать ионизирующее излучение. Методы регистрации ионизирующего излучения. В качестве еще одной из характеристик поглощения бета-излучения веществом используют слой...
71736. Изучение работы термодатчиков 83.5 KB
  Объяснить зависимость сопротивления полупроводников от температуры. Объяснить зависимость сопротивления полупроводников от температуры. Какие вещества называются жидкими кристаллами На каком свойстве жидких кристаллов основано измерение температуры различных участков...
71737. Изучение работы фотодатчиков 41 KB
  Как возникает контактная разность потенциалов В чем заключается явление внешнего и внутреннего фотоэффекта Устройство и принцип действия селенового фотоэлемента. Как изменяется фото ЭДС при изменении силы света источника площади поверхности и угла между падающим лучом и перпендикуляром...
71738. Физические основы использования магнитного поля в биологии и медицине. Изучение аппаратов для низкочастотной магнитотерапии “Полюс – 1” и “Магнитер” 354.5 KB
  Познакомиться с физическими основами воздействия на биологические объекты постоянного и низкочастотного магнитного поля. Исследовать распределение в пространстве магнитного поля индукторов при работе аппаратов. Определение магнитного поля.
71739. Изучение операционных усилителей 162.5 KB
  Цель работы: ознакомление с принципами построения усилителей электрических сигналов на базе операционного усилителя ОУ выполненного на интегральной микросхеме. Коэффициент усиления усилителя. Обратная связь в электронных усилителях.