Показать сообщение отдельно
Старый 15.05.2006, 21:53     # 2
Warchief
::VIP::
 
Аватар для Warchief
 
Регистрация: 14.05.2003
Адрес: 127.0.0.1
Сообщения: 852

Warchief Отец (мать) всех ГуруWarchief Отец (мать) всех ГуруWarchief Отец (мать) всех ГуруWarchief Отец (мать) всех ГуруWarchief Отец (мать) всех ГуруWarchief Отец (мать) всех ГуруWarchief Отец (мать) всех ГуруWarchief Отец (мать) всех ГуруWarchief Отец (мать) всех ГуруWarchief Отец (мать) всех ГуруWarchief Отец (мать) всех ГуруWarchief Отец (мать) всех ГуруWarchief Отец (мать) всех ГуруWarchief Отец (мать) всех ГуруWarchief Отец (мать) всех ГуруWarchief Отец (мать) всех ГуруWarchief Отец (мать) всех Гуру
Где-то в интернете я видел хорошую статью на эту тему, не помню только где(давно это было).Попрубую объяснить как могу(за возможные ошибки не отвечаю )

Действительно процессорный конвейер ускоряет работу. Проиходит это следующим образом:

Для примера возьмём конвейер с 3 функциональными блоками(чтение, выполнение, запись). Из этого следует, что выполнение какой-либо команды происходит в 3 этапа: чтение, выполнение, запись.

Допустим, что выполнение каждой команды проихсодит за 3 такта.
Мы имеем например последовательность команд Ком1,Ком2,Ком3

Код:
Такты     Чтение             Выполнение                         Запись.
1            Ком1
2                                  Ком1
3                                                                Ком1
4            Ком2
5                                  Ком2
6                                                                Ком2
7            Ком3
8                                   Ком3
9                                                                Ком3
Из этого следует, что на выполнение всех 3 последовательностей, процессору требуется 9 тактов.

Использование конвейера предполагает, что после освобождение блока
в него загружается следующая команда программы.


Код:
Такты     Чтение             Выполнение                         Запись.
1            Ком1
2            Ком2                     Ком1
3            Ком3                     Ком2                       Ком1
4                                     Ком3                       Ком2
5                                                                Ком3
На 3-ем такте, конвейер загружен на 100%, так как все три блока заняты. Если теперь посмотреть на первый вариант, то видно, что в каждый момент времени конвейер загружен только на треть.
Получается, что теперь на выполнение тех-же 3 последовательностей команд, процессору требуется только 5 тактов.Производительность почти удваивается.

Объяснил как мог.
Удачи!!!
__________________
reality.sys corrupt
Kernel panic - not syncing:
Fatal exception
halt life(y,n)?

Последний раз редактировалось Warchief; 16.05.2006 в 00:06. Причина: Орфографические ошибки
Warchief вне форума