?

Log in

No account? Create an account
lupus-lupusum: "про современные программы и капиталистическую конкуренцию" - Коммик, Just Коммик — LiveJournal
November 1st, 2007
02:00 pm

[Link]

Previous Entry Share Next Entry
lupus-lupusum: "про современные программы и капиталистическую конкуренцию"
про современные программы и капиталистическую конкуренцию -- полный текст:

========================================================

Я думаю, что крупные компании-производители ПО, такие как Microsoft, вступили в сговор с крупными производителями процессоров (Интел и АМД), с целью "деоптимизации" ПО. То есть, производительность процессоров растет, и если производительность ПО не будет падать, то покупать новые процессоры никто не будет. Поэтому ПО разными неявными методами замедляется.

Чему постоянно нахожу мелкие подтверждения. Вот например, оцените мессидж с форума alteraforum.com.

As a long time hardware and software engineer, the notion "find your critical path and spend as much time as necessary to find the fastest possible way to implement that" is as natural as breathing. When I wrote a 3D graphics (game/simulation) engine recently, I noticed the "transform vertex positions to [world (or display)] coordinates" was the most often executed "critical path" in the engine. All the lazy numbhead engineers said the same thing, "you cannot possibly do better than the [OpenGL/DirectX] routines - they have been optimized by the smartest geniuses in the universe". Stubborn doofus that I am, I proceeded to break my butt to totally, clearly understand what needed to be done, and what would be the most efficient data-organization, algorithm-organization and implementation to implement this part of the algorithm. So I ended up coding one 32-bit and one 64-bit set of SIMD/SSE2+ assembly language code to perform this functionality and the result was... [drum roll, please]... my entire program became 6+ times faster. This did not shock me. But, as usual, everyone else who had warned me not to waste my time and effort, did what they always do - they just shrugged, said nothing, and walked away.

====================================================

В английском тексте говорится, что автор на коленке написал программу очень часто выполняемого преобразования координат в трехмерной графике, которая работает более чем в 6 раз быстрее, чем та же функция всюду применяемых высокопрофессиональных глубокоуважаемых графических пакетов OpenGL/DirectX.

Tags: , ,

(11 comments | Leave a comment)

Comments
 
[User Picture]
From:chat_de_mer
Date:November 1st, 2007 07:56 pm (UTC)
(Link)
это, хм, так же давно и точно известно, как хотя бы тот малоприглядный факт, что все, допустим, кинозвезды срут. и так же не считается приличным об этом лишний раз упоминать. впрочем, разумеется, это НЕ сговор, никоим образом. просто те и другие отлично понимают, как можно увеличить выгоду, играя на партнера. иногда, на всякий случай, они обмениваются директорами. так что это просто лежит в самой природе капитализма.
[User Picture]
From:stalinist
Date:November 1st, 2007 08:04 pm (UTC)

Это лежит в природе монополистического капитализма

(Link)
Это лежит в природе монополистического капитализма.

А производство ПО пока еще не ограничивается одним Microsoftом. В конце концов, и Linux ведь существует: ему же Intel взятки не платит?
[User Picture]
From:chat_de_mer
Date:November 1st, 2007 08:11 pm (UTC)

Re: Это лежит в природе монополистического капитализма

(Link)
)))
плох тот капиталист, который не мечтает стать монополистом.
некоторым это удается.
некоторым - нет)
From:probegi
Date:November 1st, 2007 08:11 pm (UTC)
(Link)
А там точно были предусмотрены все известные режимы работы всех известных типов оборудования? А то мой знакомый программер написал специализированный движок для интерфейса с MS SQL-сервер. Тоже был поначалу в три раза быстрее...

хехехе
From:rollog2
Date:November 2nd, 2007 12:09 am (UTC)
(Link)
Дело даже не в этом. На современном железе (последние лет 7) преобразования вершин реализованы _аппаратно_. Т.е. такие оптимизации имеют смысл тогда, когда вы делаете полностью _программный_ движок. Что является вещью сейчас специфической. А так - ничего нового. Если вы посмотрите в Doom3 Sdk там все это есть.
From:probegi
Date:November 2nd, 2007 12:16 am (UTC)

Я уже все позабыл, чтоб по SDK лазать.

(Link)
Однако, если приложения реально искуственно замедляют, то нет проблем вытащить соответствующие куски кода, задокументировать их и предъявить возмущенной ответственности.

Есть такое?
From:rollog2
Date:November 2nd, 2007 12:45 am (UTC)

Re: Я уже все позабыл, чтоб по SDK лазать.

(Link)
Это если замедляют. Реально замедлять нет нуждны. Массовые приложения, использующие 3d (Ogl/D3d) - это игры, а там мощностей железа всегда нехватает.

Но тут дело в том, что человек, похоже, не очень, скажем так, компетентен. То, что он там наворотил - давно известно, где надо используется. Ну зачем в Dx10 нужны SSE функции, если в нем ВСЯ обработка перенесена на железяку? (Я не знаю, что у него за морозильник.)

Есть и правда нехорошие вещи, например, в драйверах от ATI. Некоторые называли это "саботажем".
[User Picture]
From:lupus_lupusum
Date:November 2nd, 2007 09:30 am (UTC)

Re: Я уже все позабыл, чтоб по SDK лазать.

(Link)
То есть, другими словами
- не оптимизировано, потому что это не нужно. Пусть пользователи покупают (аппаратный ускоритель, новый процессор, Vista с Дх10).
From:rollog2
Date:November 5th, 2007 10:41 am (UTC)

Нет

(Link)
Блок T&L (трансформация и освещение) появился, если склероз не изменяет, уже в GeForce256. Аппаратный ускоритель все равно быстрее. Кроме того, начиная с GeForse3 (ПММ) уже появились и шейдеры. А с шейдерами можно сделать много всякого разного. Ну что я вам буду рассказывать - вы все равно не поймете.
From:rollog2
Date:November 1st, 2007 11:59 pm (UTC)

:)))

(Link)
автор на коленке написал программу очень часто выполняемого преобразования координат в трехмерной графике, которая работает более чем в 6 раз быстрее, чем та же функция всюду применяемых высокопрофессиональных глубокоуважаемых графических пакетов OpenGL/DirectX.
-----
Автор, очевидно, никогда не слышал о шейдырах:))) Пожелаем ему успехов в учебе.
From:rollog2
Date:November 2nd, 2007 12:08 am (UTC)

Да, и еще:

(Link)
Да, и еще:

I noticed the "transform vertex positions to [world (or display)] coordinates" was the most often executed "critical path" in the engine
-----
Что же это за движок, в котором "transform vertex positions to [world (or display)] coordinates" САМАЯ КРИТИЧЕСКАЯ часть?
Powered by LiveJournal.com