Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - .NET

Страница: 1 | 2 |

 

  Вопрос: Скорость Добавлено: 11.06.04 04:59  

Автор вопроса:  Павел | Web-сайт: www.vbnet.ru | ICQ: 326066673 

Ответить

  Ответы Всего ответов: 22  

Номер ответа: 16
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #16
Добавлено: 22.06.04 01:35
> Скорость выполнения той или иной команды ещё зависит от того использует она кэш или нет.
Начиная с PII L2-кэш работает на скорости ядра, поэтому данное утверждение, мягко говоря, сомнительно.

Ответить

Номер ответа: 17
Автор ответа:
 @CyRax PTR



ICQ: 204447456 

Вопросов: 28
Ответов: 664
 Web-сайт: basicproduction.nm.ru/
 Профиль | | #17
Добавлено: 22.06.04 01:46
 Моё утверждение сомнительно? Ты уверен? :)

 Блин. Чё это меня на смех пробило.
 Так как там насчёт парочки твоих примерчиков на АСМе. Я всё ещё жду.

Ответить

Номер ответа: 18
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #18
Добавлено: 22.06.04 05:22
Не помню, с чего я взял такое утверждение :) Наверно, я хотел сказать, что этот случай отличается от случая с памятью, которая работает на более низкой частоте, потому что кэш работает на той же.
Если это ты об обсуждении на fds-net, тогда ты не прав, ибо кэш там никоим образом не светится - там все дело в микрокоде, конвейере и хитрых интеловских механизмах (читах).
О каких примерах на асме ты говоришь? (Кстати, не употребляй слово АСМ - это Association of Computer Machinery, форма проведения студенческих турниров по программированию :))

Ответить

Номер ответа: 19
Автор ответа:
 Djoni



Вопросов: 6
Ответов: 35
 Профиль | | #19 Добавлено: 22.06.04 08:55
с Вашего разрешения я вмешаюсь:)
> Скорость выполнения той или иной команды ещё зависит от того использует она кэш или нет.

 Sharp, мне кажется тут все правильно, единственное, как я писал ранее, все команды без исключения засовываются в кеш.Т.е я хочу сказать если бы не было кеш то команды выполнялись естественно дольше, ровно на задержку обращения к памяти.

Ответить

Номер ответа: 20
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #20
Добавлено: 22.06.04 10:18
Пожалуй, стоит определиться, что значит - команда, использующая кэш. Насколько мне известно, ни одна команда не может напрямую обращаться к кэшу, его содержимым полностью управляет микрокод проца.

Ответить

Номер ответа: 21
Автор ответа:
 Djoni



Вопросов: 6
Ответов: 35
 Профиль | | #21 Добавлено: 22.06.04 10:37
Sharp, так команды же не используют кеш, просто после выборки инструкции сама команда и данные задвигаются в кеш. Все правильно я в начале уже тоже об этом говорил, что кеш аппаратный и управляется процом. Просто при выборке следуешей команды он проверяет кеш на наличие команды и данных в нем и ему не надо лезть к основной памяти тем самым он сокращает время обработки команды за счет сокращения времени доступа к памяти(кеш же тоже такая же память, только быстрая и находится на борту процессора). После выполнения команды он(проц) обновляет данные в кеше, если они например изменились в оперативке, то он их дублирует в кеше, другими словами если ты в программе оперируешь одними и теми же переменными, то он работает только с кешом.

а так я не пойму даже куда зашла тема:)

Ответить

Номер ответа: 22
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #22
Добавлено: 23.06.04 00:26
Вроде как рассуждали о производительности :) Но поскольку Intel микрокод процессора не открывает и, видимо, не собирается, поэтому бессмысленно рассуждать более-менее уверенно количественно относительно того, как кэш (в частном случае короткие и длинные джампы) влияет на быстродействие. Особенно в многозадачной среде. Поэтому, пожалуй, верхом оптимизации будет являться оптимизация по тактам, предложенным в мануалах а при прочих равных из некоторых качественных соображениях (хотя, имхо, это уже шаманство). А вообще, лучшую оптимизацию должен проводить программист, т.е. вместо
#include <iostream.h>

void main(){
long y=0;
for(long i=0;i<1000000000;i++){
y++;
}
cout<<y<<endl;
}
писать
cout<<1000000000<<endl;
:)

Ответить

Страница: 1 | 2 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам