Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Процессоры и Organizaciya_evm_i_stud.doc
Скачиваний:
4
Добавлен:
01.03.2025
Размер:
2.15 Mб
Скачать

2.9.3.Производительность

Приложение может быть выполнено на двух процессорах быстрее, чем на одном, если:

  • есть два или более одновременно выполняемых потоков;

  • эти потоки не препятствуют выполнению друг друга - например, они не нуждаются одновременно в одном из ресурсов (внешнее запоминающее устройство или сетевой интерфейс).

Это особенно хорошо заметно, если потоки команд, грубо говоря, не похожи друг на друга, то есть содержат разные типы команд. Тогда обработка одного потока может совмещаться с замедленной обработкой другого, то есть процессор за одно и то же время будет успевать делать полтора дела. Несколько одновременно запущенных приложений, использующих разные алгоритмы обработки данных, будут получать серьезный выигрыш от Hyper-Threading. И в то же время не стоит забывать, что эффективность новой технологии зависит от работы операционной системы. Разделять команды на потоки должна именно она. И если ОС будет нагружать один из процессоров своими внутренними, системными задачами, то даже одно приложение сможет ускорить работу благодаря Hyper-Threading.

От приложения тоже зависит, сможет ли оно использовать возможности новой технологии. Оно должно выполняться в нескольких потоках, причем эти потоки должны быть спроектированы так, чтобы не пересекаться и не зависеть друг от друга. Ведь если, например, один поток ждет результата работы второго, то Hyper-Threading может давать отрицательный эффект из-за того, что один поток может забрать почти все ресурсы и не давать работать второму.

В общем, прирост скорости сильно зависит от выполняемых задач. В некоторых случаях он может достигать 25-35% (по данным Intel). Или, например, "заточенные" под многозадачность программы ускоряются на 15-20%. А в других случаях разница не будет заметна или вообще будет отрицательной.

2.9.4.Поддержка

Поддержка Hyper-Threading была заложена в самые первые процессоры семейства Pentium 4 (с ядром Willamette), но до последнего времени не работала. В смежном рынке серверов и рабочих станций на процессорах Xeon она была включена на год раньше. На рынке настольных компьютеров ее появление было задержано, потому что до последнего времени на настольном рынке доминировала ОС Windows 9x/ME, которая принципиально не способна поддерживать многопроцессорный режим работы. Только с распространением Windows XP появилась возможность задействовать Hyper-Threading в обычных условиях.

Кроме процессора, необходимо позаботиться о поддержке новой технологии со стороны других компонентов системы. Так, нужен подходящий чипсет материнской платы. Согласно данным Intel, технология Hyper-Threading поддерживается следующими чипсетами:

  • i850E (Rambus-чипсет);

  • i845E, i845PE;

  • i845GE, i845GV;

  • i865G/P/PE;

  • i875P;

  • все будущие чипсеты Intel для настольных ПК и рабочих станций, а также серверные чипсеты ServerWorks.

Новые чипсеты фирм VIA и SIS также поддерживают эту технологию.

Кроме чипсета, о Hyper-Threading должна «знать» и система BIOS на материнской плате. Это нужно для того, чтобы была подготовлена таблица конфигурации и произведена инициализация "второго процессора".

Операционная система идентифицирует "оба процессора" без проблем, но только если выполнены два условия:

• установлена BIOS с поддержкой Hyper-Threading; если в BIOS заблокирована поддержка Hyper-Threading, операционная система идентифицирует только физические процессоры.

• используется ACPI, чтобы сообщить операционной системе о дополнительных логических процессорах. Именно поэтому, чтобы разрешить Hyper-Threading, ACPI должен быть активизирован в CMOS Setup; HAL (Уровень Аппаратной абстракции) с поддержкой ACPI нужно также разрешить для операционной системы.

В Windows 2000 нужно просто заменить HAL Стандартного PC на ACPI Uni-/Multiprocessor PC, изменяя "компьютерный драйвер" в менеджере устройств. Единственный способ переключиться на ACPI HAL в Windows XP состоит в том, чтобы переустановить систему поверх текущей.

Для работы новой технологии нужна также одна из двух операционных систем - либо Windows XP (Home или Pro), либо Linux с новым ядром, поддерживающим Hyper-Threading.

Hyper-Threading - неоднозначное и очень оригинальное техническое решение, которое позволяет с минимальными затратами реализовать хоть и не совсем настоящую, но все же многопроцессорность на однопроцессорной машине. Осталось только добиться выигрыша от ее применения.

Примечание: общие сведения об ACPI

Расширенный интерфейс управления питанием и конфигурациями (Advanced Configuration and Power Interface, ACPI) является открытым промышленным стандартом, определяющим гибкий и расширяемый интерфейс аппаратуры с системной платой. Разработчики программного обеспечения используют эту спецификацию для объединения возможностей управления электропитанием во всей компьютерной системе, включая аппаратуру, операционную систему и прикладное программное обеспечение. Это объединение позволяет Windows определять активные приложения и контролировать все ресурсы управления питанием для подсистем компьютера и периферийного оборудования.

ACPI позволяет операционной системе непосредственно управлять питанием широкого диапазона переносных и настольных компьютеров, серверов и периферийных устройств.

ACPI является основой промышленной инициативы OnNow, которая позволяет производителям систем поставлять компьютеры, которые запускаются прикосновением к клавише на клавиатуре.

ACPI необходим для использования всех преимуществ управления питанием и технологии Plug and Play в Windows. Чтобы изменить параметры управления электропитанием, позволяющие реализовать преимущества ACPI, используйте компонент «Электропитание» на панели управления.

Во время установки Windows ACPI активизируется только в том случае, если присутствуют все компоненты управления электропитанием. Некоторые компоненты, особенно устаревшие, не поддерживают управление электропитанием, что может вызвать ошибки в работе программы «Автоматического управления электропитанием» (АРМ) или помешать установке ACPI. Примеры таких компонентов - это шина ISA (Industry Standard Architecture) и устаревшая система BIOS.