KolibriOS в BIOS ( coreboot / SeaBIOS ) на G505S - успех!

Using Kolibri in embedded systems
  • Saints Row 4 на ноутбуке?
    Attachments
    Изврат.png
    Изврат.png (13.88 KiB)
    Viewed 10188 times
  • olodar wrote:линукс не поддерживает дуол-грэфикс, соосно, играть получится опять же только на APU
    Сейчас линукс поддерживает дуал графикс, но фигово - только с закрытыми драйверами AMD и для очень ограниченного числа игр (для которых есть профили Crossfire под Linux версию игры). Скоро эта ситуация изменится к лучшему: https://www.gamingonlinux.com/articles/ ... -gpus.8920 . Vulkan - это какой то OpenGL-ный аналог DX12, https://en.wikipedia.org/wiki/Vulkan_%28API%29 . В открытый драйвер Vulkan сейчас добавляют поддержку нескольких GPU, но есть проблема: у нас в процессоре A10-5750M стоит видеокарта 8650G архитектуры TeraScale 3 (VLIW4). https://en.wikipedia.org/wiki/Vulkan_%2 ... patibility Хоть она чисто по своим техническим характеристикам (OpenGL 4 и выше) поддерживает Vulkan, AMD считает все Terascale устаревшими и не собирается писать для них код. К счастью, драйвера-то открытые! Если люди сами напишут, рано или поздно, у нас будет две видеокарты на линуксе поддерживаться для игр с вулканом; а пока не напишут - этот вулкан будет работать только на дискретной видеокарте. Причём эта движуха с вулканом только недавно началась и вулканистых игр пока немного - https://en.wikipedia.org/wiki/Vulkan_%2 ... rts_Vulkan
    olodar wrote:Saints Row 4... Так вот, в сравнении с Windows, я даже не мог поиграть на минимальных настройках графики (5 FPS) было, когда на Win в игре стабильно 20 FPS на средних настройках
    Значит эту игру плохо спортировали. Линукс установлен всего на 2.2% компьютеров, а год назад вообще был всего на 1.5% ПК (https://www.netmarketshare.com/operatin ... share.aspx) . Понятное дело что игровым компаниям экономически невыгодно тратить много усилий на хороший линуксовый порт, сажать за него много разработчиков и делать качественную оптимизацию - если всё равно мало людей будут в него играть. Раньше вообще портов не делали, сейчас хоть что-то. Немногие компании типа Valve делают качественные линуксовые версии игр, и то скорее по идеологическим причинам а не ради прибыли...

    Попробуй запустить виндовую версию Saints Row 4 на Linux через Wine, как раз недавно Wine 2 вышел - https://www.winehq.org/download . Может быть больше FPS будет, если повезёт
    Pathoswithin wrote:Saints Row 4 на ноутбуке? :shock:
    Согласен :D в такие игрушки лучше на обычном компе играть
    olodar wrote:Говоря о старых видеокартах, то игры из стима требуют новую версию Opencl/opengl, а старые видеокарты просто не поддерживают эту версию, соосно, винда опять выигрывает, так как директ даже 9 поддерживают все видеокарты (если говорить также и о старых).
    HD 8650G поддерживает почти последний OpenGL 4.4 (новее только 4.5), OpenCL 1.2 (хоть и не 2.0 но тоже неплохо) и DirectX 11.2 / Shader Model 5.0 - https://en.wikipedia.org/wiki/Radeon_HD_8000_series
    HD 8570M поддерживает последний OpenGL 4.5, последний OpenCL 2.2 (работает на любом железе с поддержкой 2.0), DirectX 12 / Shader Model 6.0, и Vulkan 1.0 - ^^^ , https://en.wikipedia.org/wiki/High-Leve ... g_Language
    R5 M230 - то же самое что и HD 8570M по поддерживаемым функциям, https://en.wikipedia.org/wiki/AMD_Radeon_Rx_200_series

    Как видишь, эти видеокарты не такие уж и старые! :wink: но для того чтобы например работал именно OpenGL 4.4 нужны новые драйверы - хоть на линуксе хоть на винде.
    Например, у меня на старом линуксе стоит Mesa 11.1.0, которая поддерживает максимум OpenGL 4.0 / 4.1 (4.1 поддерживается не у всех драйверов).
    А в Ubuntu 16.04.2 LTS, которая выйдет через три дня, будет самая последняя стабильная версия Mesa - 13.0.3 , в которой OpenGL 4.3 / 4.4 версий (4.4 поддерживается не у всех драйверов)
    http://www.omgubuntu.co.uk/2017/01/mesa ... -16-04-lts
    http://www.mesa3d.org/relnotes/13.0.3.html
  • в такие игрушки лучше на обычном компе играть
    Комп еще хуже, 10 FPS на низких. Да, самое то для игр! :D
    Да что российский студент себе может позволить? Правильно - ничего. Поэтому остается только искать способы, как пнуть и заставить работать то, что есть.
    UP!
    Получилось завести Crossfire, но результат далеко не ожидаемый.
    Итак, первым делом я установил Каталист (драва 15.7.1), затем я установил Кримсон (16.2.1) и драйвера завелись. Пробовал сразу ставить кримсон, но 8650G никак не хотела заводится (Win 7 SP1 x86_64).
    Дальше я сделал сдедующее:
    1) Оставил одну планку оперативной памяти с частотой 1600 мГц 11-11-11 на 8 ГБ, с двумя планками КФ никак не хотел работать (дискретная видеокарта просто не подключалась)
    2) Подогнал частоту дискретной видеокарты (см. скрин) (да-да-да, теперь АМД позволяет это делать, поэтому нужны НОВЫЕ драйвера) под частоту системной ОЗУ (то есть, 800 мГц).
    3) Enjoy!
    Но не все так хорошо.
    Играешь в SR3/4 на средних на 30 FPS стабильно, но через некоторое время замечаешь, что начинает все жутко ЛАГАТЬ. Какого черта, думаю я?
    Прикладываю руку к "выхлопной трубе" и замечаю, что воздух выходит ТЕПЛЫЙ, смотрю температуры - всего !!! 63 !!! градуса по Цельсию! А критическая температура, как мы помним, у данного процессора - 105 по Цельсию, 90 - температура, при которой система должна сбрасывать частоты.
    Температура доходила максимум до 82 градусов, играешь играешь и вдруг частоты падают (какого черта-то, температура же не растет, АМД!!!). И ЦП, и видеокарты.
    Как вы думаете, на Coreboot как будет с этим всем делом?
    Attachments
    Capture.PNG
    Capture.PNG (171.45 KiB)
    Viewed 10132 times
  • Получилось завести Crossfire, но результат далеко не ожидаемый.
    Ах, да. По идее, КФ должен "объеденить" производительность обеих видеокарт, что по бенчмаркам говорит, что видеокарта довольно такого высокого уровня получается и игры все должны прям на ультрах идти. Но как-бы не так работает эта технология :(.
    В кримсоне поставил следующую настройку (см. скрин), что позволило работать обеим картам.
    Attachments
    Capture.PNG
    Capture.PNG (176.52 KiB)
    Viewed 10131 times
  • За те деньги, что стоит дешёвый ноутбук, можно купить нормальный игровой комп. Только самому собирать, естественно: процессор подешевле, видеокарту помощнее. И тем более можно купить видеокарту для имеющегося компа.
    olodar wrote:Подогнал частоту дискретной видеокарты (да-да-да, теперь АМД позволяет это делать)
    Я это ещё на HD 4850 делал.

    105 градусов это критическая температура для GPU при частоте менее 1 ГГц, а для процессора с частотой несколько ГГц критическая температура 70 градусов.
    Power control +20%
    *facepalm* Ты понимаешь, что тепловыделение завит от напряжения не линейно, а в квадрате?
    По идее, КФ должен "объеденить" производительность обеих видеокарт, что по бенчмаркам говорит, что видеокарта довольно такого высокого уровня получается и игры все должны прям на ультрах идти.
    А на практике огрызок + огрызок = два огрызка. Там синхронизация дорого стоит.
  • не линейно, а в квадрате
    Слишком сложные слова для моих мозгов. :D
  • https://ru.wikipedia.org/wiki/Электриче ... 1.82.D1.8C
    P = U^2/R
    120% = x1,2
    1,2 * 1,2 = 1,44
    Греется почти в полтора раза сильнее.
  • olodar wrote:Играешь в SR3/4 на средних на 30 FPS стабильно, но через некоторое время замечаешь, что начинает все жутко ЛАГАТЬ. Какого черта, думаю я?
    Прикладываю руку к "выхлопной трубе" и замечаю, что воздух выходит ТЕПЛЫЙ, смотрю температуры - всего !!! 63 !!! градуса по Цельсию! А критическая температура, как мы помним, у данного процессора - 105 по Цельсию, 90 - температура, при которой система должна сбрасывать частоты.
    Температура доходила максимум до 82 градусов, играешь играешь и вдруг частоты падают (какого черта-то, температура же не растет, АМД!!!). И ЦП, и видеокарты
    На линуксе + coreboot, при загрузке ЦП почти 100% температура не поднималась выше 70 градусов, и процессор вроде не замедлялся при этом, по ощущениям. Во всяком случае, когда недавно тестировал оперативку на протяжении одного часа: процессор очень неплохо нагружался, но если бы он при этом то замедлялся то ускорялся - то результаты всех моих тестов пошли бы кривые (там каждый тест прогоняется раз по пять)

    Помимо обычных мыслей (почисти от пыли, намажь игровой термопасты типа Gelid GC-Extreme, ...) возникает вопрос - какая у тебя сейчас стоит версия официального БИОСа? Самая последняя версия - 3.00, обновлена в 2014, в readme написано что изменили "Fix CPU temperature between T1(50 C)~T2(90 C) does not meet the fan duty." Ещё раньше с официальным биосом была такая проблема: со включенным зарядником FPS в играх падает, а с выключенным - сразу FPS растёт. Ещё проблемы с функциями виртуализации AMD-V, IOMMU и SLAT. Официальный биос - это глючное индусское поделие, которое не плохо было бы заменить

    Если и это не поможет, можешь поставить вот такую вот штуковину - https://www.aliexpress.com/item/Protabl ... 37989.html , стоит меньше тысячи, подставляешь к "выхлопной трубе" и температура снижается градусов на 10. Она значительно безопаснее чем охлаждающие подставки под ноутбук - большие вентиляторы в таких подставках расположены параллельно и слишком рядом под материнской платой ноутбука, в процессе работы они генерируют электромагнитные импульсы которые негативно влияют на работу материнской платы - может быстрее испортиться! А та выдувная штука по ссылке - стоит сбоку, как и вентилятор ноутбука, и всего лишь помогает ему быстрее выдувать горячий воздух, так что она безопасна для компьютера (у меня уже есть но я её использую для старого ноутбука)

    Кстати, винда не всегда правильную температуру процессора распознает. Однажды я видел >100 градусов, притом что процессор был совершенно незагруженный и точно холодный
    olodar wrote:Как вы думаете, на Coreboot как будет с этим всем делом?
    Пока не попробуешь не узнаешь :D а мне ну очень не хочется винду ставить, так что вся надежда на тебя! :wink:

    Тут ведь ещё есть такой момент: в пункте 5) той инструкции на первой странице, я вручную установил опцию CONFIG_MULTIPLE_VGA_ADAPTERS=y просто потому что две видеокарты. По умолчанию эта опция выключена, и вообще в графическом меню "make menuconfig" недоступна

    Если нужно быстро поискать среди исходников coreboot, удобно использовать их зеркало на github - https://github.com/coreboot/coreboot (в правом верхнем углу - поле для поиска в "This repository"). Поискав по CONFIG_MULTIPLE_VGA_ADAPTERS, мы видим что её включение приводит к выполнению дополнительного кода:

    coreboot/src/device/pci_rom.c , строки 145-171
    Spoiler:

    Code: Select all

    	/*
    	 * We check to see if the device thinks it is a VGA device not
    	 * whether the ROM image is for a VGA device because some
    	 * devices have a mismatch between the hardware and the ROM.
    	 */
     	if (PCI_CLASS_DISPLAY_VGA == (dev->class >> 8)) {
    #if !CONFIG_MULTIPLE_VGA_ADAPTERS
    		extern device_t vga_pri; /* Primary VGA device (device.c). */
    // <---- если конфиг не выбран, то оно тут выйдет!

    Code: Select all

    		if (dev != vga_pri) return NULL; /* Only one VGA supported. */
    #endif
                    
    // <--- а если конфиг выбран, оно продолжит выполнять код ниже:

    Code: Select all

    		if ((void *)PCI_VGA_RAM_IMAGE_START != rom_header) {
    			printk(BIOS_DEBUG, "Copying VGA ROM Image from %p to "
    			       "0x%x, 0x%x bytes\n", rom_header,
    			       PCI_VGA_RAM_IMAGE_START, rom_size);
    			memcpy((void *)PCI_VGA_RAM_IMAGE_START, rom_header,
    			       rom_size);
    		}
    		return (struct rom_header *) (PCI_VGA_RAM_IMAGE_START);
    	}
    	
    	printk(BIOS_DEBUG, "Copying non-VGA ROM image from %p to %p, 0x%x "
    	       "bytes\n", rom_header, pci_ram_image_start, rom_size);
    
    	memcpy(pci_ram_image_start, rom_header, rom_size);
    	pci_ram_image_start += rom_size;
    	return (struct rom_header *) (pci_ram_image_start-rom_size);
    }
    coreboot/src/northbridge/amd/agesa/family15rl/northbridge.c, строки 378-409
    Spoiler:

    Code: Select all

    /**
     * I tried to reuse the resource allocation code in set_resource()
     * but it is too difficult to deal with the resource allocation magic.
     */
    
    static void create_vga_resource(struct device *dev, unsigned nodeid)
    {
    	struct bus *link;
    
    	/* find out which link the VGA card is connected,
    	 * we only deal with the 'first' vga card */
    	for (link = dev->link_list; link; link = link->next) {
    		if (link->bridge_ctrl & PCI_BRIDGE_CTL_VGA) {
    // <--- если конфиг выбран, оно выполнит этот #if-#endif кусок кода:

    Code: Select all

    #if CONFIG_MULTIPLE_VGA_ADAPTERS
    			extern struct device *vga_pri; // the primary vga device, defined in device.c
    			printk(BIOS_DEBUG, "VGA: vga_pri bus num = %d bus range [%d,%d]\n", vga_pri->bus->secondary,
    					link->secondary,link->subordinate);
    			/* We need to make sure the vga_pri is under the link */
    			if ((vga_pri->bus->secondary >= link->secondary) &&
    			    (vga_pri->bus->secondary <= link->subordinate))
    #endif

    Code: Select all

    				break;
    		}
    	}
    
    	/* no VGA card installed */
    	if (link == NULL)
    		return;
    
    	printk(BIOS_DEBUG, "VGA: %s (aka node %d) link %d has VGA device\n", dev_path(dev), nodeid, sblink);
    	set_vga_enable_reg(nodeid, sblink);
    }
    Пока что непонятно как выполнение этого дополнительного кода влияет на поддержку второй видеокарты, Crossfire, и влияет ли вообще
    По идее, КФ должен "объеденить" производительность обеих видеокарт, что по бенчмаркам говорит, что видеокарта довольно такого высокого уровня получается и игры все должны прям на ультрах идти
    Если взять две одинаковые видеокарты, то производительность возрастёт не в два раза а насколько-то меньше - из-за дополнительных задержек на синхронизацию...
    Pathoswithin wrote:105 градусов это критическая температура для GPU при частоте менее 1 ГГц, а для процессора с частотой несколько ГГц критическая температура 70 градусов
    У разных процессоров разные температурные характеристики, нельзя так сразу про всех говорить :)
    Last edited by floppy121 on Thu May 18, 2017 3:46 pm, edited 1 time in total.
  • Pathoswithin wrote:
    Pathoswithin, у тебя уже есть G505S ? если нет, можешь найти на авито за 15к-20к версию с A10-5750M и двумя видеокартами (главное хорошенько протестировать при покупке, например с помощью загрузочной флешки Ultimate Boot CD - http://www.ultimatebootcd.com/ ). Сможешь KolibriOS прямо из биоса запускать! :wink: помимо всех остальных преимуществ, большой плюс этого ноута ещё и в том что два слота оперативки - во многих современных недоультрабуках или только один слот или вообще вся оперативка запаяна на материнской плате (увеличить объём нельзя, и если через несколько лет начнутся проблемы с оперативкой и перестанет проходить мемтест - то или выкидывать или отдавать в сервис на перепайку чипов памяти)
  • Не, я ноутбуки вообще не уважаю, вон с ними сколько проблем, ящик only труъ.
  • При помощи переходников (https://github.com/securelyfitz/PEXternalizer) можно подключить внешнюю видеокарту к порту MiniPCIe, в котором у ноутбуков обычно стоит WiFi-адаптер. В 11-ом сообщении этой темы (https://communities.intel.com/thread/45336) подключили к Intel Galileo. Разумеется такое подключение неудобно, порежет скорость внешней видеокарты, запитывать её надо от внешнего блока питания, придётся сверлить дырки в корпусе ноута чтобы выпустить USB кабель, - и вообще, заработает ли всё это безумие? :D

    EDIT: смотрите чего нашёл:

    1) Переходник с MiniPCIe на PCI Express 16x, 500 рублей всего - https://www.aliexpress.com/item/2017-Ne ... 21338.html
    Сюда можно воткнуть AMD-шную видеокарту и получить тройной Crossfire! :lol:
    Spoiler:Image
    :lol: https://www.youtube.com/watch?v=COLF9HOHb6c , https://www.youtube.com/watch?v=pVfVR3hMhJ4

    2) Переходник с MiniPCIe на два PCI (видеокарту вставить нельзя) - https://www.aliexpress.com/item/new-add ... 84754.html
    3) Переходник с MiniPCIe на два SATA с RAID - https://www.aliexpress.com/item/Mini-PC ... 03249.html
    4) Переходник с MiniPCIe на два USB - https://www.aliexpress.com/item/Mini-PC ... 80152.html
  • floppy121 wrote:При помощи переходников (https://github.com/securelyfitz/PEXternalizer) можно подключить внешнюю видеокарту к порту MiniPCIe, в котором у ноутбуков обычно стоит WiFi-адаптер. В 11-ом сообщении этой темы (https://communities.intel.com/thread/45336) подключили к Intel Galileo. Разумеется такое подключение неудобно, порежет скорость внешней видеокарты, запитывать её надо от внешнего блока питания, придётся сверлить дырки в корпусе ноута чтобы выпустить USB кабель, - и вообще, заработает ли всё это безумие? :D

    EDIT: смотрите чего нашёл:

    1) Переходник с MiniPCIe на PCI Express 16x, 500 рублей всего - https://www.aliexpress.com/item/2017-Ne ... 21338.html
    Сюда можно воткнуть AMD-шную видеокарту и получить тройной Crossfire! :lol:
    Spoiler:Image
    :lol: https://www.youtube.com/watch?v=COLF9HOHb6c , https://www.youtube.com/watch?v=pVfVR3hMhJ4

    2) Переходник с MiniPCIe на два PCI (видеокарту вставить нельзя) - https://www.aliexpress.com/item/new-add ... 84754.html
    3) Переходник с MiniPCIe на два SATA с RAID - https://www.aliexpress.com/item/Mini-PC ... 03249.html
    4) Переходник с MiniPCIe на два USB - https://www.aliexpress.com/item/Mini-PC ... 80152.html
    Вобщем, что-то делать с этим ноутом мало толку, надо брать что-то из цены 2-3к $. Да и к этому ноуту есть смысл подключать внешнюю видеокарту только если процессор будет на 3.5 гГц работать. :D
  • Зачем? Если тебя устраивает 30 fps, то к процессору только одно требование - чтобы он был. Хоть двухъядерный на 2 ГГц.
  • Pathoswithin wrote:Зачем? Если тебя устраивает 30 fps, то к процессору только одно требование - чтобы он был. Хоть двухъядерный на 2 ГГц.
    Были бы они стабильные еще. Через некоторое время спадает до 24, а при эффектах вообще до 5 падает.
  • Who is online

    Users browsing this forum: No registered users and 4 guests