· Начало · Отвђтить · Статистика · Поиск · FAQ · Правила · Установки · Язык · Выход · WASM.RU · Noir.Ru ·

 WASM Phorum —› WASM.A&O —› Технология Hyper-Threading

Посл.отвђт Сообщенiе


Дата: Июл 16, 2004 15:12:02

Подскажите пожалуйста в чем заключается оптимизация (программирование) на ассемблере с использование этой технологии!! Если можно ссылочки на примеры! Заранее благодарен!


Дата: Июл 17, 2004 06:54:29

Посмотри Маркса и Энгельса. Может что дельное есть.


Дата: Июл 17, 2004 13:02:54

Данный вопрос возник из за чего! Дело в том что я программирую на ассемблре с использованием команд SSE и SSE2. Но прироста в производительности получал в 2-3 раза. Тут один красавец вызвался и утверждает что достигал прироста в 10 а то и в 15 раз. Упоминал именно программировани под данную технологию. Проясните ситуацию пожалуйста!!


Дата: Июл 17, 2004 16:48:25 · Поправил: Oleg_SK

Я тут влезу, пардон, абсолютно не в технических деталях, просто поляля. (C) Volodya
Сразу предупреждаю, что конкретной инфы у меня нет. Недавно я где-то читал об Hyper-Threading. Так вот, там говорилось о том, что эта технология эффективна только при работе с не оптимизированным кодом, в противном случае, ее эффективность резко падает. Так как, IMHO, код современных приложений, в большинстве своем, нельзя назвать высоко оптимизированным, то есть смысл ее применять…

„Тут один красавец вызвался и утверждает что достигал прироста в 10 а то и в 15 раз. “
Что-то, мне в это не верится... Интересно, каким образом можно получить такой скачек в производительности, даже если реально удвоить кол-во процессоров в машине (при условии что оптимизируемый под эту технологию код и так высоко оптимизирован)?

З.Ы.: Под оптимизированным кодом я здесь имею в виду код, оптимизированный для скорости (по командам проца и алгоритмам), но не ориентированный на указанную технологию.


Дата: Июл 17, 2004 22:07:11

выигрыш при включении HT получится _только_тогда_, когда в приложении вычисления разбиты на несколько нитей. Для однонитевых приложений HT до лампочки.


Дата: Июл 19, 2004 14:37:36

infern0
Ну вот например есть 5 нитей!!!

Есть массив из 5 000 000 элементов типа float. необходимо все умножить на 10 и сложить между собой.

Берем 5 нитей по 1 000 000 на каждую. и отдельно считаем а затем все складываем между собой!


Дата: Июл 19, 2004 16:53:39

HT разрабатывалась для того, что бы использовать простиавающие части конвеера CPU. Для этих целей добавлен 2й блок регистров (упрощённо). Таким образом CPU одновременно хранит состояние 2х нитей (необходима так же поддержка со стороны ОС). Если при выполнении одного трэда интенсивно используется ALU, то есть возможность задействовать блок FPU для другого. Но это совсем не значит, что возможность будет использована - может быть 2му потоку тоже нужен ALU, да мало ли ещё что..


emergenter > „Есть массив из 5 000 000 элементов типа float. необходимо все умножить на 10 и сложить между собой. “

Да какие тут нити и HT!!
Не лучше ли сначала сложить, а потом умножить? :-/


Дата: Июл 20, 2004 20:42:08

S_T_A_S_
Есть какие нибудь примеры именно для данной технологии?


Дата: Июл 20, 2004 20:47:41

Меня учили что даже при использовании 2х настоящих процессоров вместо одного производительность может возрасти максимум в 1,5 раза.


Дата: Июл 21, 2004 00:50:31

согласно официальной документации интел максимальный прирост от HT при специально оптимизированных приложениях - 27-30%


Дата: Июл 21, 2004 09:29:50 · Поправил: emergenter

infern0
Можегь поделиться источниками?

КТО НИБУДЬ РЕАЛЬНО ЭТО ДЕЛАЛ??? НАУЧИТЕ ПЛИЗЗ!!!


Дата: Июл 21, 2004 10:00:49

emergenter
_http://www.intel.com/technology/hyperthread/index.htm?iid=sr+hyper&
_http://www.intel.com/cd/ids/developer/asmo-na/eng/microprocessors/ia32/pentium4/hyperthreading/index.
htm?iid=sr+hyper&
_http://intel.com/business/bss/products/hyperthreading/index.htm
_http://intel.com/business/bss/products/hyperthreading/overview.htm
вот выдержка:
Business users of Hyper-Threading enabled desktop and notebook PCs will see an immediate performance impact and increased system responsiveness in today's multitasking environments — up to 25 percent

ну и так далее...


Дата: Июл 21, 2004 22:11:20

„Не лучше ли сначала сложить, а потом умножить? :-/“
Вот именно! Оптимизация, мля, шо даже и не снилось! Куда там всяким HT до мозга программера :)


Дата: Июл 26, 2004 09:14:20

Toxic
Я просто неудачный пример выбрал!!!


Дата: Окт 6, 2004 16:35:41

Тут один красавец вызвался и утверждает что достигал прироста в 10 а то и в 15 раз.

Этот товариш "свистит" ИМХО.

Единственный способ его проверит посмотреть исходники.


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.049