Главная » Просмотр файлов » К. Касперски - Техника оптимизации программ, Эффективное использование памяти

К. Касперски - Техника оптимизации программ, Эффективное использование памяти (1127752), страница 27

Файл №1127752 К. Касперски - Техника оптимизации программ, Эффективное использование памяти (К. Касперски - Техника оптимизации программ, Эффективное использование памяти) 27 страницаК. Касперски - Техника оптимизации программ, Эффективное использование памяти (1127752) страница 272019-05-11СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 27)

Контроллер шины, получив от контроллера памяти уведомление о том, что запрошенные данные готовы, дожидается освобождения шины и передает Оперативная память их процессору в пакетнол1 режиме. В зависимости от типа шины за один такт может передаваться от одной до четырех порций данных. Так, в процессорах Кб, Р-Н и Р-Ш осуществляется одна передача за такт, в процессоре Ай!оп — две, а в процессоре Р-4 — четыре. Все! С этого момента данные поступают в кэш и становятся доступными процессору. Большинство чипсетов (наборов системных логик) состоит из двух микросхем — севернозо и южного мосгпое (рис.

2.10). Северный мост (названный так за свое традиционное расположение на чертежах) включает в себя контроллер системной шины процессора, контроллер памяти, факультативно контроллер порта АЗР, РС1-контроллер или контроллер внутренней шины для общения с южным мостом. Южный мост отвечает за ввод/вывод и включает в себя контроллер ОМА, контроллер прерываний, таймер, контроллеры жестких и гибких дисков, последовательных, параллельных и ()ЗВ-портов. Рис. 2.10. Внешний вид чипсета !пГе! 815ЕР До сих пор мы рассматривали и шинный контроллер, и контроллер памяти как черные ящики.

Сейчас же настало время снять с них крышку и изучить их внутренности. Дабы автора не обвинили в излишней любви к 1пге1, сделаем это на примере чипсета АМР 750 (рис. 2.11), попутно отметив, что по качеству документации собственных чипсетов АМР значительно превосходит своих конкурентов. Контроллер системной шины, отвечающий за обработку запросов и перемещение данных между процессором и чипсетом, состоит из следующих функциональньгх компонентов: трансг(йера даггных (Ргосемог Яаигсе Уупсй С(осй Угаплсегкег), планировщика запросов (Соттапг( Оиеие — С(2), контроллера очередей запросов (Сопггог' оуггет Оиеие — СоД) и агента транзакций (ггапзасг(оп сотЫпег аеепг — ХСА).

Остальные компоненты контроллера шины, присутствующие на рис. 2.11, необходимы для поддержки зондовой отладки, которая к обсуждаемой теме не относится, а потому здесь не рассматривается. 124 Глава 2 Трансгрер данных — в каком-то высшем смысле представляет собой "голый" контроллер шины, понимающий шинный протокол и берущий на себя все заботы по общению с процессором.

Полученные от процессора запросы передаются планировщику запросов, откуда они отправляются соответствующим агентам по мере их освобождения. Ответы агентов сохраняются в трех раздельных очередях: очереди чтения (БузРС Яеад Диеие — Я~Д), очереди записи памяти (Метогу Игг11е Циеие— МИгД) и очереди записи шины РС/(РС!/А-РС1 И'г11е Яиеие — А И'Д). Обратите внимание: в данном случае речь идет о записи/чтении в процессор, а не наоборот! Таким образом, очередь записи памяти хранит данные, передаваемые из памяти в процессор, но не записываемые процессором в память! Агент транзакций (1гопзасйоп сотМпег ояепг — ХСА) извлекает содержимое очередей и преобразует их в командные пакеты, которые передаются трансферу данных для отправки в процессор.

Если же все очереди пусты, процессору передается команда иое. Планировщик запросов памяти (Метогу Яег)иез! О~уопцег — МЯО) принимает заказы на чтение/запись памяти сразу от трех устройств: контроллера шины, шины РС! и порта АОР и стремится обслужить каждого из своих клиентов максимально эффективно, что совсем не просто (память-то одна!). Арбитр очереди памяти (Метогу Диене Агй1ег — МДА) помещает всех клиентов в кольцевую очередь (гоипд-го6!и — ВВУ) и обрабатывает по одной транзакции за такт, в дополнение к этому, преобразуя физический адрес ячейки в тройку чисел; банк РКАМу номер строки и колонки. Обработанные транзакции помегцаются в оду(у из нескольких очередей. В чипсете АМР 750 их пять — четыре очереди по четыре элемента на чтение (МКОО— МКЯЗ) и одна на шесть элементов (М%(1) — на запись.

В данном случае под "чтением" имеется в виду чтение из памяти, а под "записью", соответственно, запись в память. Каждая из очередей чтения хранит запросы, предназначенные исключительно лля "своего" банка памяти, благодаря чему при циклической выборке из очередей (этим занимается агент КВХ) регенерация банков выполняется параллельно с обработкой других запросов.

Контроллер памяти (Метогу Сопгго1!ег — МСТ) отвечает за физическую поддержку модулей оперативной памяти, установленных на компьютере (в чипсете АМР 750 этим занимается ЯЗВАМ Мепюгу Сопгго!!ег — ЯМС, более поздние чипсеты умеют работать с РОК и Кашбцз-памятью). Он же отвечает за инициализацию, регенерацию микросхем памяти и ее конфигурирование — установку задержек КАК го САБ Ре1ау, САЯ Ре!ау, КАК ргесйагйе, выбор рабочей тактовой частоты и др. тгб Оперативная память Арбитр запросов и памяти 1Метогу Аедиезг АгЬпег — МлА) принимает запросы на чтение/запись памяти, поступающие от планировщика запросов памяти МКО и порта АСР, и передает их в контроллер ЯМС.

Передача одного запроса занимает один такт. Данные, записываемые в память, извлекаются из очереди Ж11 контроллера системной шины, а данные, читаемые из памяти, отправляются в очередь М%(.1, откуда они впоследствии передаются процессору. Вычисление полного времени доступа Теперь, познакомившись с механизмом взаимодействия оперативной памяти и процессора, мы можем рассчитать реальную пропускную способность при чтении зависимых данных. Итак, мысленно прокрутим процесс обмена еше раз: 1. Получив запрос на чтение ячейки, процессор выполняет арбитраж и передает чипсету адрес и длину запрошенного блока памяти.

При условии, что шина свободна, эта операция укладывается в четыре такта. 2. Контроллер шины, получив запрос, ставит его в очередь и, если контрол- лер памяти свободен, передает ему запрос с началом следующего такта. 3. В течение следуюшего такта контроллер памяти декодирует адрес и ставит его в свою внутреннею очередь запросов на чтение памяти. 4. В следуюшем такте запрос извлекается из очереди, и контроллер, при необходимости дождавшись прихода фронта тактового импульса микросхемы памяти, передает ей адрес ячейки: !. Если соответствующая страница открыта и банк памяти не находится на регенерации, то чипсет выставляет сигнал САБ и передает сокращенный адрес ячейки. Спустя 2 — 3 такта частоты памяти на шине появляется первая порция считанных данных.

П. Контроллер памяти считывает ее за один такт. Синхронный контроллер памяти с началом следуюшего такта передает считанные данные контроллеру шины и в дальнейшем пересылка осуществляется параллельно с чтением, но с задержкой в один такт. Асинхронный контроллер памяти, "благодаря" расхождению частот не может передавать данные одновременно с чтением и вынужден накапливать их во временном буфере. После завершения пакетного цикла чтения контроллер памяти по приходу фронта следующего синхроимпульса начинает передавать содержимое временного буфера контроллеру шины на требуемой частоте.

126 Глава 2 Некоторые дешевые чипсеты, в частности Ч)А КТ133/КТ266, осуществляют передачу данных внутри чипсета только по фронту импульса, что полностью обесценивает все преимущества шины ЕЧ6, на которой работает А1Ыоп, и ее аффективная часта (определяемая, как известно, самым узким местом системы) оказывается равной всего 100/133 Мгц. Если длина запроса превышает длину пакета, то независимо от типа контроллера памяти, данные всегда передаются через временный буфер. И1. На чтение "хвоста" пакета в зависимости от его длины уходит еще три или семь тактов частоты оперативной памяти. 1Ч.

Если длина запроса превышает длину пакета, то мы возвращаемся к пункту 1. Ч. Контроллер шины, получив считанные данные, формирует запрос на передачу данных от чипсета к процессору и ставит его в очередь, на что расходуется один такт. Ч1. Если в очереди не находится ничего другого, и шина никем не занята, контроллер шины извлекает запрос из очереди и выставляет его на шину, передавая за один такт одну, две или четыре порции данных (на Кб/Р-И/Р-1И, Атп!оп и Р-4 соответственно). ЧИ. Как только запрошенная ячейка попадает в процессор, она становится немедленно доступной для обращения, даже если пакетный цикл передачи еше не завершен. ЧИ1.

Все! Остается лишь добавить латентность кэш-контроллеров всех иерархий и латентность самого процессора, — но это уже тема другого разговора, к оперативной памяти прямого отношения не имеющая. 5. Если требуемая РВАМ-страница закрыта, но банк не находится на регенерации, контроллер памяти передает адрес строки, вырабатывает сигнал ВАБ, ждет 2 или 3 такта пока микросхема его "переварит", и переходит к сценарию 1.

Характеристики

Список файлов книги

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6418
Авторов
на СтудИзбе
307
Средний доход
с одного платного файла
Обучение Подробнее