LINUX.ORG.RU

Как урезать объем, выделяемый под видеопамять? (Clevo E4105


0

2

Есть ноутбук Clevo E4105 (спецификации тут). Внутри сейчас стоит памяти на 1 ГиБ. Но при загрузке ядро говорит, что

[    0.000000] Memory: 752824k/778240k available (2617k kernel code, 21836k reserved, 1377k data, 360k init, 0k highmem)
256 МиБ видимо уходит под встроенное видео. В настройках BIOS есть «возможность» изменить количество выделяемой памяти, 128 или 256, но на деле никакого эффекта нет. Доступно в любом случае только 760 МиБ.

Насколько я понял, встроенное видео у Intel умеет динамически менять размер выделенной памяти, даже есть параметр в xorg.conf. Я его попробовал, не работает.

Как отвоевать эти 256 МиБ?

★★★★★

Любопытная машинка

Убедись, что именно видеопамять отъдает

dmesg | grep mem

У меня agpgart-intel 0000:00:00.0: detected 8192K stolen memory Ну от дистрибутива-ядра-железа много зависит. Я наоборот, увеличивал объём видеопамяти на gma900. А сейчас поглядел - фигвам.

kraftello ★★★★★ ()

Да, у меня арч

На свежих дистрибутивах xorg.conf для штеуда ненужен. И в линуксе динамическое увеличение памяти не работало. Может, в последних железках добавили.

kraftello ★★★★★ ()
Ответ на: Любопытная машинка от kraftello

kraftello> dmesg | grep mem

Интересный вопрос.

athost@kauna:~ > dmesg | grep 'stolen memory'
[   13.687739] agpgart-intel 0000:00:00.0: detected 131068K stolen memory, trimming to 32768K
[   13.927298] [drm] detected 127M stolen memory, trimming to 32M

Исходя из каких соображений ядро делает «триминг до 32М»?

athost ★★★★★ ()
Ответ на: Любопытная машинка от kraftello
$ dmesg | grep intel
[    1.676052] agpgart-intel 0000:00:00.0: Intel HD Graphics Chipset
[    1.676318] agpgart-intel 0000:00:00.0: detected gtt size: 2097152K total, 262144K mappable
[    1.677562] agpgart-intel 0000:00:00.0: detected 131072K stolen memory
[    1.677855] agpgart-intel 0000:00:00.0: AGP aperture is 256M @ 0xd0000000
[   17.800423] fb0: inteldrmfb frame buffer device

Говорит, что у него 128 М, а съел все 256.

i-rinat ★★★★★ ()
Ответ на: комментарий от no-steam

> Учитывай, что ядро еще свое откусывает.

Я в курсе, 25416 KiB. Там еще пара сотен метров должна остаться. Это, видимо, хитрая firmware.

i-rinat ★★★★★ ()

Открыл для себя e820 map:

[    0.000000]  BIOS-e820: 0000000000000000 - 000000000009c000 (usable)
[    0.000000]  BIOS-e820: 000000000009c000 - 00000000000a0000 (reserved)
[    0.000000]  BIOS-e820: 00000000000dc000 - 0000000000100000 (reserved)
[    0.000000]  BIOS-e820: 0000000000100000 - 000000002f27c000 (usable)
[    0.000000]  BIOS-e820: 000000002f27c000 - 000000002f282000 (reserved)
[    0.000000]  BIOS-e820: 000000002f282000 - 000000002f3e6000 (usable)
[    0.000000]  BIOS-e820: 000000002f3e6000 - 000000002f40f000 (reserved)
[    0.000000]  BIOS-e820: 000000002f40f000 - 000000002f46f000 (usable)
[    0.000000]  BIOS-e820: 000000002f46f000 - 000000002f4f0000 (ACPI NVS)
[    0.000000]  BIOS-e820: 000000002f4f0000 - 000000002f70f000 (reserved)
[    0.000000]  BIOS-e820: 000000002f70f000 - 000000002f718000 (usable)
[    0.000000]  BIOS-e820: 000000002f718000 - 000000002f71f000 (reserved)
[    0.000000]  BIOS-e820: 000000002f71f000 - 000000002f780000 (usable)
[    0.000000]  BIOS-e820: 000000002f780000 - 000000002f79f000 (ACPI NVS)
[    0.000000]  BIOS-e820: 000000002f79f000 - 000000002f7e4000 (usable)
[    0.000000]  BIOS-e820: 000000002f7e4000 - 000000002f7ff000 (ACPI data)
[    0.000000]  BIOS-e820: 000000002f7ff000 - 000000002f800000 (usable)
[    0.000000]  BIOS-e820: 000000002f800000 - 000000003c000000 (reserved)
[    0.000000]  BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved)
[    0.000000]  BIOS-e820: 00000000f280a000 - 00000000f280b000 (reserved)
[    0.000000]  BIOS-e820: 00000000feaff000 - 00000000feb00000 (reserved)
[    0.000000]  BIOS-e820: 00000000fec00000 - 00000000fec10000 (reserved)
[    0.000000]  BIOS-e820: 00000000fed00000 - 00000000fed00400 (reserved)
[    0.000000]  BIOS-e820: 00000000fed1c000 - 00000000fed90000 (reserved)
[    0.000000]  BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved)
[    0.000000]  BIOS-e820: 00000000ff000000 - 0000000100000000 (reserved)

В настройках firmware есть выбор размера видеопамяти (128 или 256), но он распределение памяти не меняет.

Если пересчитать в мегабайты:

0.00M 0.61M (usable) 
0.61M 0.62M (reserved) 
0.86M 1.00M (reserved) 
1.00M 754.48M (usable) 
754.48M 754.51M (reserved) 
754.51M 755.90M (usable) 
755.90M 756.06M (reserved) 
756.06M 756.43M (usable) 
756.43M 756.94M (ACPI NVS)
756.94M 759.06M (reserved) 
759.06M 759.09M (usable) 
759.09M 759.12M (reserved) 
759.12M 759.50M (usable) 
759.50M 759.62M (ACPI NVS)
759.62M 759.89M (usable) 
759.89M 760.00M (ACPI data)
760.00M 760.00M (usable) 
760.00M 960.00M (reserved) 
3584.00M 3840.00M (reserved) 
3880.04M 3880.04M (reserved) 
4075.00M 4075.00M (reserved) 
4076.00M 4076.06M (reserved) 
4077.00M 4077.00M (reserved) 
4077.11M 4077.56M (reserved) 
4078.00M 4078.00M (reserved) 
4080.00M 4096.00M (reserved) 

Вот между 760 и 960 фирмварь зачем-то зажала 200 метров. 128 туда еще влезает, но 256 уж совсем никак. Интересно, что она там хранит.

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

В техподдержке ответили, что ничего не знают и утилит у них нет. Что это у intel'а такая хитрая технология DVMT, и что работает она в Windows, а про linux они ничего гарантировать не могут.

И вообще, мне надо поставить 2x4 Gb, и тогда, возможно, firmware мне отдаст кусочек от этих 200 метров. Зачем они мне нужны будут тогда, на фоне 8192-х, мне осталось не очень ясно.

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