Алексей Федорчук
Как я уже говорил в первой заметке этого цикла, видеоподсистема моей машинки (и всего модельного ряда NP 300E7) относится к категории так называемого гибридного, то есть включает два чипа: Intel HD Graphics 3000, встроенный в процессор (в качестве которого, напомню, выступает Core i3-2330M) и дискретный Nvidia GeForce GT 520MX, с собственной видеопамятью 1024 Мбайт GDDR3.
Опять таки в первой заметке я упоминал, что ни коим образом на гибридное видео не расчитывал и морально к нему не готовился. Сам этот термин, как и слова о технологии Nvidia Optimus, я видел краем глаза в обзорах (например, на Хоботе), с которыми бегло знакомился исключительно для общего образования: для работы мне любого современного интегрированного решения — выше крыши.
Так что разбираться с гибридной графикой и её работой (или не-работой) под Linux’ом мне пришлось задним числом, когда машинка в распакованном виде стояла на моём рабочем столе — не вртуальном, а реальном, деревянном. И потому, прежде чем переходить собственно к Linux’ам, поделюсь тем, что накопытил по данному вопросу. История получилась почти детективная — причём, в отличие от банальных детективов, в ней так и остаётся неясным, кто же преступник виновник всего этого.
Но сначала — краткая история вопроса. В начале 2010 года фирма Intel представила первые процессоры серии i3/i5/i7, с интегрированным графическим ядром — так называемые архитектуры Clarkdale (для настольных машин) и Arrandale (для ноутбуков), знаменующие, как мне тогда казалось, конец прогресса в камнестроении. Потому что они с лихвой перекрывали все разумные потребности и «настольных», и мобильных пользователей.
Это стало мучительно ясно через год, в январе 2011-го, когда были официально представлены процессоры i3/i5/i7 второго поколения, основанные на архитектуре Sandy Bridge.
Но не всё оказалось так просто. Интегрированная графика от Intel, более чем достаточная для работы (и к тому же, по давней традицит, отменно поддерживаемая свободным софтом) оказалась недостаточной для пользователей — потребителей контента, число каковых нынче далеко превосходит количество пользователей, этот самый контент производящих.
В утешение этим так называемым «требовательным» пользователям придумали дополнять или заменять втсроенное процессорное видео отдельной видеокартой (в десктопах) или дискретным чипом (в ноутах). И первой, насколько я знаю, на этом поприще отметилась Nvidia, издревле известная своей любовью к пользователям, которые с претензиями.
В случае с настольными машинами всё было просто: внешняя видеокарта блокировала встроенную графику процессора, как будто её и нету. А вот с ноутами оказалось сложнее. Видимо, производителям показалось накладно разводить на ноутбучной маме, и так пересыщенной компонентами, два видеовыхода. И потому вывод на экран в ноутах всегда осуществляется через встроенный GPU процессора. Хотя ни о какой совместной работе встроенного и дискретного GPU, подобно технологиям SLI или CrossFire, речи не идёт. В слечае функционирования дискретного чипа он выполняет всю работу по обсчёту графики, передевая на встроенный чип её результаты для вывода. Ну а при отключении его — обработка графики целиком падает на встроенный чип.
Однако это вызвало другую проблему — повышенное энергопотребление: при работе от батареи ей приходилось питать не только комбинацию относительно мощного CPU и GPU, но жадный до электричества дискретный графический чип, да ещё и со своей памятью, тоже не отличающейся скромностью по этой части. Что приводит к резкому сокращению автономии. Хотя необходимость в 3D-графике при работе с ноутбуком, особенно в походных условиях, возникает далеко не всегда.
Так что логичным представлялось решение — отключать дискретный чип при отстутствии надобности в нём (интегрированный чип, по описанным выше причинам, отключить нельзя в принципе). И реализовано это было разными способами.
Поначалу, говорят, переключение чипов осуществлялось в буквальном смысле руками: с помощью переключателя на корпусе. Сам я такого чуда не видел, но по слухам — было крайне неудобно: в лучшем случае требовалось закрыть все работающие приложения, в худшем — вообще перезагрузиться.
Потом появилась возможность отключения дискретного чипа в BIOS’е. Ну, это по определению требовало перезагрузки, и потому представлялось неудобным с точки зрения контентопотребления. И нынче, насколько я знаю, от этого механизма полностью отказались — согласно обзорам и репликам на форумах, ноуты с такой возможностью сейчас не выпускаются.
В итоге осталось два механизма отключения дискретного чипа, и оба они — почти автоматические. Почти — в том плане, что требуют первичного задания условий переключения, каковое дальше происходит само собой.
Первый механизм основывается на двух парах альтернатив:
- производительность vs. энергосбережение, и
- работа от сети vs. работа от батарейки.
То есть при работе от сети обычно выставляется ориентация на производиьтельность, и при этом должен функционировать дискретный чип (вместе со встроенным), а работа от батарейки ориентируется на энергосбережение, когда дискретный чип сам собой отключается, а пашет только встроенный. Это теоретически — как это выглядит на практике в моём случае, расскажу со временем. Там же я выскажу свои соображения о том, кто же (или, скорее, что же) отвечает за это самое переключение — одноначных указаний в источниках я не нашёл.
Второй же механизм предложен изобретателем идеи переключения — фирмой Nvidia, и носит название технологии Optimus. В двух словах суть её в следующем: при работе приложений, не предъявдляющих высоких требований к видеоподсистеме, функционирует только встроенный чип. При запуске же приложений, жадных до графики, включается чип дискретный, а встроенный, отключившись от обработки, занимается только выводом изображения на экран.
На словах это всё звучит просто, но на деле требует трёх компонентов:
- «железного», то есть специфической разводки;
- программного — соответствующего драйвера, обеспечивающего работу первого;
- конфигурационного: фигурально говоря, каждое приложение следует определить как требовательное (3D, игры, воспроизведение видео) или не требовательное (офисные пакеты etc.) к графике.
О «железной» составляющей технологии я говорить не буду, дабы не играть в испорченный телефон. Заинтересованным лицам предлагается обратиться к специализированным обзорам (например, вот
О третьей составляющей тоже особенно сказать нечего: теоретически «требовательность» каждого пакета можно определить вручную (как — не знаю по причинам, которые скоро будут ясны). Но практически — профили приложений, в которых прописаны их аппетиты в отношении графики, берутся из специальных баз данных.
А вот о второй составляющей технологии я скажу только одно, но для нас с вами самое важное:
Драйвера Nvidia Optimus существуют только под Windows, и ни малейших намерений поддерживать Linux у фирмы-разработчика технологии нет и не предвидится!
Обидно за державу фирму: ведь в своё время, в далёком 1997 году, Nvidia первой из всех производителей видеочипов (а тогда их было куда больше, чем сейчас) начала поставлять для своего главного тогдашнего продукта — видеокарты Riva 128, — фирменные драйвера под Linux. Ныне же она в этом плане сильно отстаёт от AMD, наследницы видеоразработок ATI, карты которой до не столь давнего времени славились своей проблемностью при работе во всех открытых операционках UNIX-семейства.
Однако в мире Open Source свято место бывает пусто реже, чем где бы то ни было ещё. И в рамках нашей темы оно было заполнено свободным драйвером Bumblebee (это не то, что вы подумали в меру своей испорченности, а всего-навсего «шмель» в переводе с английского). В виде бинарных пакетов он существует для Ubuntu (в недрах которой вроде бы и зародился), Debian, Fedora и Archlinux. И, разумеется, доступен в исходниках, так что при востребованности может быть собран для любого более иного дистрибутива.
По слухам, Bumblebee не только похож на настоящий, но, в отличие от стационарного мотора Виктор Михалыча Полесова, даже работает. Насколько я понял из описаний, в сочетании со свободным драйвером nouveau, поддерживающим видеоркарты Nvidia, но не с проприетарными драйверами этой фирмы. Как станет ясно из следующей заметки, мне это проверить не удалось.
Вот вроде и всё, что я узнал про гибридную графику. И, повторяю, кзнал я это уже в процессе запуска на своём ноуте разнообразных Linux’ов. Так как, не зная брода, полез в эту воду напролом, как я обычно делал с машинами, совместимость которых не вызывала у меня ни малейших сомнений. Но об этом тоже в следующей заметке.
http://img-fotki.yandex.ru/get/4517/120475407.0/0_64b50_602b15f_L.jpg
Сони по сию пору обожает аппаратный переключатель видеокарт.
Bumblebee работает с проприетарными драйверами — проверено. Но беда с Optimus’ом в том, что нельзя, при необходимости, отключить Intel и например, запустить композитный WM через Nvidia — только оконные приложения.
Bumblebee- автобот(желтый шевроле камаро) верный и надежный,поможет всегда и везде.Символично для разных Linux*ов.
Lenovo IdeaPad Z570. Отключается через BIOS. Куплен в ноябре, произведён в августе 11 года.
2 inspirra спасибо, буду знать
2 Topper эти ребята всегда знали толк в извращениях
2 boris Lenovo я при подборе ноута даже не рассматривал — не видел у них ни одной модели с матовым экраном, а это одно из главных моих требований.
2 alv
У Lenovo почти вся линейка Thinkpad с матовыми экранами. Но Thinkpad-ы дороги, это да.
Ребят, по поводу матовости. Хороший матовый дисплей (Thinkpad) в ноутбуке стоит очень дорого. А дешёвый матовый дисплей — хуже дешёвого зеркального, как-то так.
2 boris Не так давно все дисплеи были матовыми — и ничего, жили. Потом появились зеркалки — и это считалось круто. Потом матовых почти не осталось.
Но для постоянной работы с текстами любой глянцевый экран просто не годится. Вне зависимости от дороговизны.