LINUX.ORG.RU

Представлен патч в 13 строк, который увеличивает производительность 3D на чипе Intel Sandy Bridge в несколько раз

 , ,


0

2

Zou Nan представил патч размером в тринадцать строк, который увеличивает производительность 3D на чипе Intel Sandy Bridge в разы. Phoronix.com провёл тесты и вот какие результаты получились:

  • В Lightsmark 2008 производительность возросла примерно в 2,5 раза (с патчем — 26,39 FPS, без патча — 9,91 FPS, а в Windows 7 64 bit Pro SP1 — 33,63.
  • В Nexuiz 2.5.2 производительность возросла примерно в 3,5 раза (с патчем — 22,9 Average FPS, без патча — 6,4 Average FPS, а в Windows 7 64 bit Pro SP1 — 26,7 Average FPS).
  • В Warsow 0.5 производительность возросла на несколько десятков процентов (с патчем — 57,5 Average FPS, без патча — 42,0 Average FPS, а в Windows 7 64 bit Pro SP1 — 52,4 Average FPS).
  • В OpenArena производительность практически не изменилась (с патчем — 106,4 Average FPS, без патча — 107,6 Average FPS, а в Windows 7 64 bit Pro SP1 — 120,3 Average FPS).
  • Единственная игра, где производительность упала более чем в 4 раза — Tremulous 1.1.0 (с патчем — 28,1 Average FPS, без патча — 122,6 Average FPS).

>>> Подробности

★★★★★

Проверено: JB ()
Последнее исправление: Dendy (всего исправлений: 5)

Ответ на: комментарий от anonymous

и назвать хоть один полнофункциональный 2d/3d драйвер

Мы, кажется, про стабильность говорили... Склероз?
Между тем, радеоновские дрова вполне функциональны (для определённых
видов использования).

иначе непонятно зачем это всё в принципе нужно

Не понятно - объясняю:
1. Надёжность архитектуры (по сравнению с рутовым монстроиксом)
2. Простота написания драйверов.
Для чего вообще различные фреймворки нужны?

Запомни, мальчик: надёжность/стабильность подтверждается временем,

а теоретическими изысканиями пионеров

Тогда с тобой больше не о чем говорить. Иди писать в ДОСе стабильные
хэлоуворлды.
Ты хочешь, чтобы я в твоём стиле рассуждал: «у меня такая-то
супер-железка не падает, а у соседа-виндосника аж 2 - падают,
а гуголь идёт лесом» - не дождёшься.

anonymous
()
Ответ на: комментарий от tailgunner

Про до-KMS

До КМСа, дрова видюхи были в ИКСорге. Соответственно, рут
ему нужен был для прямого доступа к портам, и к памяти через /dev/mem.
Поскольку ioperm() в те годы не для всех портов работал, то рут
ему нужен был на этапе всей работы, так как он использовал iopl()
для перехода на ring-0 и обратно.
Это сейчас ему рут нужен по-минимуму, только на старте. Так как
основная часть драйвера теперь в ядре.

И если я ошибся, что будет? %)

Я объясню, как всё есть на самом деле... Но тебе просто анонимус
добрый сегодня попался, а в другой раз не рискуй.

anonymous
()
Ответ на: комментарий от anonymous

> До КМСа, дрова видюхи были в ИКСорге. Соответственно, рут ему нужен был для прямого доступа к портам, и к памяти через /dev/mem.

Правильно.

Поскольку ioperm() в те годы не для всех портов работал, то рут

ему нужен был на этапе всей работы, так как он использовал

Ввод-вывод обычно выполняется через MMIO, для которого IOPL не нужен.

iopl() для перехода на ring-0 и обратно.

ROTFL

И если я ошибся, что будет? %)

Я объясню, как всё есть на самом деле...

А на самом деле, оказывается, iopl() позволяет переход в ring0. Ну кто, кроме анонимуса, мне бы это объяснил %)

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

Ввод-вывод обычно выполняется через MMIO, для которого IOPL не нужен.

Далеко не всегда. Особенно если учесть переключения в текстовую
консоль и обратно, где надо было VGA CRTC программировать...

А на самом деле, оказывается, iopl() позволяет переход в ring0.

Ну кто, кроме анонимуса, мне бы это объяснил %)

Ещё умные комментарии будут?

anonymous
()
Ответ на: комментарий от anonymous

>> А на самом деле, оказывается, iopl() позволяет переход в ring0. Ну кто, кроме анонимуса, мне бы это объяснил %)

Ещё умные комментарии будут?

Только один: ошибся - имей смелость это признать. Даже если ты анонимус.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

Только один: ошибся - имей смелость это признать. Даже если ты

анонимус.

Не понял? Я про MMIO объяснил уже, пример с VGA CRTC привёл.
Ошибку в студию, или где? Покажи - признАю...

anonymous
()
Ответ на: комментарий от tailgunner

Только один: ошибся - имей смелость это признать. Даже если ты

анонимус.

А, ты про IOPL? Признаю, сморозил. :) Имел ввиду не Ring-0/3, а
IOPL-0/3...
Крыша едет под вечер. :))

anonymous
()
Ответ на: комментарий от anonymous

> Не понял? Я про MMIO объяснил уже, пример с VGA CRTC привёл.

man iopl намекает, что для его вызова необходима CAP_SYS_RAW_IO, а не права рута.

Ошибку в студию, или где? Покажи - признАю...

Давай лучше пруфлинк, что iopl() двигает процесс в ring0.

Можешь не торопиться с ответом - я не буду читать ЛОР день-другой.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

man iopl намекает, что для его вызова необходима CAP_SYS_RAW_IO,

а не права рута.

Капабилити могут рута заменить почти везде. Спор был вот об этом:
---
Рутовые права нужны X-серверу только для открытия устройств (и даже для этого, наверное, хватит capability).
tailgunner ***** (10.03.2011 17:15:18)
---
Я объяснил, для чего реально нужны. К этому есть претензии?

Давай лучше пруфлинк, что iopl() двигает процесс в ring0.

См выше, я всё признал. Вы удовлетворены? :)

anonymous
()
Ответ на: комментарий от AVL2

Они опубликованны на этой странице? Или просто хотите поговорить об этом?

redkot
()
Ответ на: комментарий от anonymous

>> Рутовые права нужны X-серверу только для открытия устройств (и даже для этого, наверное, хватит capability).

Я объяснил, для чего реально нужны. К этому есть претензии?

Пожалуй, нет (я просто не знаю, что там с VGA CRTC на разных картах). Но речь шла о том, что _рутовые_ права X-серверу не нужны, хватит capabilities.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

я просто не знаю, что там с VGA CRTC на разных картах

:)
Это ж VGA CRTC, с ним на _любых_ картах то же, что и на старых VGA.
Compatibility, так сказать. В современных картах это уже атавизм,
но там всё равно используется их эмуляция. Любая писишная видюха
должна поддерживать VGA, VBE и прочие легаси.

Но речь шла о том, что _рутовые_ права X-серверу не нужны, хватит

capabilities.

Речь шла о «только для открытия устройств», это раз.
Но главное - капабилити не намного лучше рута! Тут нет особого
различия. Имея CAP_SYS_RAW_IO, можно спокойно положить систему,
или получить рута. Капабилити - лишь полумера, принципиального
отличия тут нет. А KMS - это уже реальное решение проблемы.
Если вы не заметили, капабилити не так уж и широко используются,
насколько я знаю. Рута надо искоренять _совсем_ не ими.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.