The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"AMD увольняет около 11% сотрудников"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Отдельный RSS теперь доступен для каждого обсуждения в форуме и каждого минипортала.
. "AMD увольняет около 11% сотрудников" +/
Сообщение от Yakov Markovitch (?), 05-Ноя-11, 15:28 
> От задачи зависит. Кстати, как думаете, как процессор синус считает?-)

:) Это-то понятно. Но часто модель, предоставляемая вам сопроцессором, его ISA, работает быстрее (для конкретного класса задач), чем то же самое, написанное "вручную" через другую ISA (напр. SSE4). Скажем, накладные расходы по раскладыванию в регистры для SSE для подзадачи, которая "естественно" решается в стековой модели x87. Понятно, что у последних моделей x86-64 x87, фактически, слой эмуляции над SSE. Но он, этот слой, действительно часто работает эффективнее не только программиста, но и компилятора.

>[оверквотинг удален]
>> всё-таки, промежуточные значения вы будете сильно не спеша считать?
> Опять таки от задачи зависит. нет универсальных алгоритмов, для каждой задачи разработчик
> включает мозг и думает как ему ее решить. Пример, если у
> меня SVGA разрешение, то мне на фиг не надо считать координаты
> с точностью до 25 знака. Точно также, как сдиг заменяет деление
> на 2. И если я считаю загрузку состава, то мне int
> достаточно, ну хотя бы потому, что 60 вагонов порой предел. Но
> современные горе программеры любят на всякий случай использовать float. А когда
> тыкаешь пальцем в этот говонокод, то объяснить они зачем у них
> так сделано они не в состоянии.-)

Согласен. Но, мне кажется, вы всё-таки чересчур категоричны - огромное количество программ _уже_ написаны и написаны хорошо, отлично работают с x87 и переписывать и/или перекомпилировать их лежит в диапазоне от "контрпродуктивно" до "физически невозможно".

Я уж не говорю о таком нюансе как то, что есть масса (современных!) процессоров архитектуры x86 у которых SSE нет, а x87 есть - всякие Geode, etc., для использования в промышленных или/и встраиваемых системах, им тоже бывает нужно считать плавающую точку, а накладные расходы на эмуляцию велики, а там нужно считать каждый такт.

> Правильно, поэтому в каждом конкретном приложении или, если быть точнее, в каждом
> типе приложений стоит использовать те или иные подходы.

Опять же, полностью согласен. Но и поэтому тоже выбрасывать x87 не нужно - он ведь практически ничего не стоит на современных CPU, меньше 1% площади кристалла (эмуляция поверх SSE4, как уже говорилось) и никак не влияет на основной конвейер, т.е. выбросив его мы ничего не получаем, а теряем много.

> Завтра попробую откомпилировать. Кстати по поводу компиляторов, попробуйте  откомпилировать
> приложение, так чтобы оно было 64 битным работало только на процессорах
> с SSE4 и по возможности их использовало, не использовало команд x87.
> Не расскажите, как в  том же Visual Studio это сделать?

Вот не знаю. Кстати, вы работаете с Visual Studio? Если да, то как там обстоят дела с качеством генерируемого кода? Моё последнее знакомство было с компилятором из 2003-й студии, я в те годы занимался многоплатформенной разработкой и знал довольно много про поведение разных компиляторов на разных платформах, но сейчас довольно давно сижу только под Линухом и как-то упустил вопрос.

Тогда между 2003-й и msvc6 прогресс был разительный, а как обстоят дела в 2010 vs 2008 vs 2003?


Ответить | Правка | Наверх | Cообщить модератору

Оглавление
AMD увольняет около 11% сотрудников, opennews, 04-Ноя-11, 10:23  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру