Алла Владова - Разработка масштабируемых программ для многоядерных архитектур Страница 3

Тут можно читать бесплатно Алла Владова - Разработка масштабируемых программ для многоядерных архитектур. Жанр: Научные и научно-популярные книги / Воспитание детей, педагогика, год неизвестен. Так же Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте «WorldBooks (МирКниг)» или прочесть краткое содержание, предисловие (аннотацию), описание и ознакомиться с отзывами (комментариями) о произведении.
Алла Владова - Разработка масштабируемых программ для многоядерных архитектур

Алла Владова - Разработка масштабируемых программ для многоядерных архитектур краткое содержание

Прочтите описание перед тем, как прочитать онлайн книгу «Алла Владова - Разработка масштабируемых программ для многоядерных архитектур» бесплатно полную версию:
В лабораторном практикуме изложены предпосылки разработки и основы многоядерной архитектуры на примере процессоров Intel и AMD, особенности проектирования и написания многопоточных программ с акцентом на причины их плохой масштабируемости. Практикум содержит методические указания к выполнению лабораторных и самостоятельных работ.

Алла Владова - Разработка масштабируемых программ для многоядерных архитектур читать онлайн бесплатно

Алла Владова - Разработка масштабируемых программ для многоядерных архитектур - читать книгу онлайн бесплатно, автор Алла Владова

3 Особенности проектирования и написания многопоточных программ

Активное внедрение многоядерных систем подразумевает существенное изменение стиля программирования: разработчики будут вынуждены использовать параллельные потоки, порождение и обработку асинхронных событий и др. Иными словами, новая аппаратная архитектура требует смены программной парадигмы – перехода от последовательного стиля программирования к параллельному. Сегодня только небольшая часть программного обеспечения может эффективно выполняться на многоядерных процессорах, что подтверждают результаты тестов – синтетических и предназначенных для конкретных классов приложений (см., например, www.3dnews.ru/cpu/dualcore-cpu/index03.htm). Реальный рост производительности дают лишь программы, оптимизированные под многопоточность, такие как Adobe Premiere Pro 1.5, 3DMax и др. Остаются актуальными задачи разработки и внедрения драйверов устройств, поддерживающих многопоточность [6].

При переходе с одноядерных процессоров на многоядерные приходится принимать во внимание проблему последовательного выполнения. Что это означает применительно к многоядерной системе? В ней выполнение считается последовательным, если в какой-то момент одно или более ядер не могут выполнять код одновременно с другими ядрами. Такая ситуация может возникнуть по разным причинам [1]: блокировка при доступе к ресурсам, необходимость синхронизации процессов или потоков на ядрах, поддержка когерентности кэш-памяти, неравномерность загрузки.

Блокировки возникают из-за невозможности (например, в момент «сбора мусора») одновременного доступа приложений на разных ядрах к жесткому диску, к устройствам ввода/вывода или данным приложений. Очень часто параллельные процессы, выполняемые на разных ядрах, нужно синхронизировать в определенные моменты. Например, приложение на одном из ядер должно использовать промежуточные данные, которые получает приложение (поток, процесс) на другом ядре. Первое приложение не может продолжить работу до получения этих данных, то есть находится в состоянии ожидания. В такой ситуации неизбежны накладные расходы на синхронизацию приложений (процессов, потоков), выполняемых на разных ядрах. В свою очередь, это обусловливает снижение эффективности параллельной работы, что находит отражение в сетевом законе Амдала. Возникает необходимость в поддержке когерентности (согласованности) кэш-памяти для всех ядер при использовании разделяемой памяти.

Можно упомянуть об исследованиях Intel, посвященных динамическому регулированию интенсивности выполнения инструкций (energy per instruction, EPI) в зависимости от степени параллелизма реализации программного обеспечения [2]. Специалисты корпорации опытным путем показали эффективность регулирования тактовой частоты асимметричной многопроцессорной системы в зависимости от активности вычислительных ядер.

Конец ознакомительного фрагмента.

Перейти на страницу:
Вы автор?
Жалоба
Все книги на сайте размещаются его пользователями. Приносим свои глубочайшие извинения, если Ваша книга была опубликована без Вашего на то согласия.
Напишите нам, и мы в срочном порядке примем меры.
Комментарии / Отзывы
    Ничего не найдено.