Nvidia Optimus - Nvidia Optimus

Nvidia Optimus bu kompyuter GPU-ni almashtirish tomonidan yaratilgan texnologiya Nvidia mijoz dasturiy ta'minotining dasturiy ta'minotlari tomonidan ishlab chiqariladigan resurslarning yuklanishiga qarab, tizimning grafik ko'rsatuvchi apparatlaridan maksimal ishlash yoki minimal quvvat olish uchun kompyuter tizimidagi ikkita grafik adapter o'rtasida uzluksiz ravishda almashinadigan.

Odatiy platforma ikkalasi ham past ko'rsatkichlarni o'z ichiga oladi o'rnatilgan grafik protsessor tomonidan Intel va Nvidia tomonidan yuqori mahsuldorlikka ega. Optimus diskret quvvatini avtomatik ravishda almashtirish orqali batareyaning ishlash muddatini tejaydi grafik ishlov berish birligi (GPU) kerak bo'lmaganda o'chirib qo'ying va kerak bo'lganda uni qayta yoqing. Texnologiya asosan mobil kompyuterlarga mo'ljallangan daftarlar.[1][a] Diskret GPU ishlashidan foyda olishga qaror qilgan dastur ishga tushirilganda, alohida GPU quvvatlanadi va dasturga ushbu GPU orqali ko'rsatuvchi kontekst xizmat qiladi. Aks holda, dasturga o'rnatilgan GPU ishlatadigan renderlash konteksti xizmat qiladi. Grafik protsessorlari o'rtasida almashinish butunlay uzluksiz va "parda ortida" sodir bo'lishi uchun mo'ljallangan.

Nvidia tomonidan rasmiy qo'llab-quvvatlanadigan operatsion tizimlar mavjud Microsoft Windows va Linux. Bumblebee deb nomlangan loyiha[4] alternativa hisoblanadi ochiq manba Linux uchun Optimus yordamini amalga oshirish.[5]

Ishlash

Foydalanuvchi dasturni ishga tushirganda, grafikalar haydovchi dastur diskret GPU-dan foyda olishini aniqlashga harakat qiladi. Agar shunday bo'lsa, GPU an-dan quvvatlanadi bo'sh holati va barcha qo'ng'iroqlar o'tkaziladi. Hatto bu holatda ham so'nggi tasvirni chiqarish uchun integral grafik protsessor (IGP) ishlatiladi. Kamroq talab qilinadigan dasturlardan foydalanilganda, IGP batareyani uzoqroq ishlashiga va muxlislarning shovqinini kamaytirishga imkon beradigan yagona boshqaruvni qo'lga oladi. Windows ostida Nvidia drayveri ham bajariladigan dasturni ishga tushirgandan so'ng sichqonchaning o'ng tugmachasini bosish menyusida GPU-ni qo'lda tanlash imkoniyatini beradi.

Nvidia GPU drayverining apparat interfeysi qatlami ichida Optimus Routing Layer aqlli grafik boshqaruvini ta'minlaydi. Optimus Routing Layer tarkibiga shuningdek a kiradi yadro - turli xil grafik qurilmalar bilan bog'liq bo'lgan ma'lum sinflar va ob'ektlarni tanib olish va boshqarish uchun darajali kutubxona. Ushbu Nvidia innovatsiyasi davlat va kontekst boshqaruvini amalga oshiradi, me'moriy resurslarni har bir haydovchi mijoziga kerak bo'lganda taqsimlaydi (ya'ni dastur). Ushbu kontekstni boshqarish sxemasida har bir dastur GPU yordamida bir vaqtning o'zida boshqa dasturlardan xabardor emas.

Belgilangan sinflarni tanib, Optimus Routing Layer, ishlashni yaxshilash uchun GPU-dan qachon foydalanish mumkinligini aniqlashga yordam beradi. Xususan, u quyidagi uchta qo'ng'iroq turlaridan birini topganda GPU-ni yoqish uchun signal yuboradi:

  • DX qo'ng'iroqlari: Har qanday 3D o'yin dvigateli yoki DirectX dastur ushbu qo'ng'iroqlarni ishga tushiradi
  • DXVA Qo'ng'iroqlar: Videoni ijro etish ushbu qo'ng'iroqlarni keltirib chiqaradi (DXVA = DirectX Video Acceleration)
  • CUDA Qo'ng'iroqlar: CUDA dasturlari ushbu qo'ng'iroqlarni keltirib chiqaradi

Oldindan aniqlangan profillar qo'shimcha grafik kuchga ehtiyoj bor yoki yo'qligini aniqlashda yordam beradi. Bularni Nvidia boshqaruv paneli yordamida boshqarish mumkin.

Optimus apparatdan foydalanishni oldini oladi multipleksor va displey drayverini GPU-dan displey sirtini uzatish orqali IGP-dan GPU-ga almashtirish bilan bog'liq nosozliklarning oldini oladi ramka buferi PCI Express avtobusi orqali IGP tomonidan ishlatiladigan asosiy xotiraga asoslangan ramka buferiga. Optimus Copy Engine an'anaviyga yangi alternativ DMA GPU freymbufer xotirasi va IGP tomonidan ishlatiladigan asosiy xotira o'rtasida o'tkazmalar.

Linuxni qo'llab-quvvatlash

O'rtada bepul va ochiq manbali drayvlar to'plami mavjud Mesa 3D va foydalanuvchi makonidagi libDRM va DRM /KMS drayveri Linux yadrosida. Nvidia-ning o'ziga xos yadro bloki foydalana olmaydi DMA BUF litsenziya cheklovlari tufayli.


Ikkilik Nvidia drayveri 2013 yil 3-may kuni 319.17-da qisman Optimus-ni qo'llab-quvvatladi.[6] 2013 yil may oyidan boshlab diskret karta uchun quvvatni boshqarish qo'llab-quvvatlanmaydi, ya'ni u Nvidia grafik kartasini to'liq o'chirib batareyani tejay olmaydi.[7]

Ochiq manbali loyiha Bumblebee grafik chiplarni almashtirishni qo'llab-quvvatlashga harakat qiladi. Windows dasturida bo'lgani kabi, sukut bo'yicha barcha dasturlar o'rnatilgan grafik protsessor orqali ishlaydi. 2013 yildan boshlab diskret GPU-da grafik ishlashi yaxshilangan dasturni faqat uni shunday chaqirish orqali ishlatish mumkin: masalan, buyruq satri yoki maxsus tuzilgan yorliq belgisi orqali. Avtomatik aniqlash va grafik protsessorlar o'rtasida almashtirish hali mavjud emas.

Tugallanmagan ishlar a grafik interfeys - bumblebee-ui - kerak bo'lganda grafik ish faoliyatini yaxshilash uchun dasturlarni qulayroq boshlashga imkon beradi.

Bug ' Linux uchun alohida GPU yordamida o'yinlarni boshqarish uchun sozlanishi mumkin (Steam hamjamiyati: Linux uchun Optimus va Steam ).

Bumblebee loyihasi rivojlanishda davom etmoqda, chunki Linux-ning grafik arxitekturasida dasturiy ta'minotga zarur o'zgarishlar kiritildi. Undan maksimal darajada foydalanish uchun yaqinda tarqatilgan Linux tarqatish dasturidan foydalanish yaxshidir. 2013 yildan boshlab, Bumblebee dasturiy ta'minot omborlari uchun mavjud Arch Linux, Debian, Fedora, Gentoo, Mandriva, OpenSuSE va Ubuntu. Manba to'plami boshqa tarqatish uchun ishlatilishi mumkin.

Nvidia tomonidan Optimus-ni qo'llab-quvvatlashga urinish DMA BUF, a Linux yadrosi - almashish mexanizmi tamponlar apparat (potentsial GPU) bo'yicha, 2012 yil yanvar oyida yadro ishlab chiqaruvchilari tomonidan rad etildi litsenziya o'rtasidagi mos kelmaslik GPL litsenziyalangan yadro kodi va mulkiy litsenziyaga ega Nvidia qon ketish.[8]

Grafik adapterlari o'rtasida almashtirish uchun dasturiy ta'minot mexanizmi mavjud bo'lmaganda, tizim Nvidia GPU-dan umuman foydalana olmaydi, hatto o'rnatilgan grafik drayveri uni qo'llab-quvvatlasa ham.[9]

Zamonaviy Optimus ko'magi

Hozirda ko'plab Linux tarqatmalari Nvidia-ning yuklanishini qo'llab-quvvatlaydi, bu erda nvidia kartasi barcha ko'rsatuvlarni amalga oshiradi. Ichki noutbuk displeyi Intel drayveriga jismoniy ulanganligi sababli, nvidia kartasi Intel displey xotirasida ishlaydi. Yirtib yubormaslik uchun, xorg serverida vsync singari yirtilmaslik uchun bufer yangilanishlarini vaqtini belgilash uchun Prime Synchronization deb nomlangan mexanizm mavjud; Buning ishlashi uchun nvidia drayveri yadro moduli sifatida yuklangan bo'lishi kerak. Bu odatda sukut bo'yicha faollashtirilmaydi.

Bumblebee-dan farqli o'laroq, ushbu yuk tushirish echimi ko'p monitorli grafikalarni taqdim etishga imkon beradi. Kamchilik shundaki, nvidia kartasini almashtirish uchun tizimdan chiqish talab qilinadi.

Ushbu yondashuvni etakchi amalga oshirish - bu Ubuntu-ning nvidia kartasini o'chirish uchun buyruq satri va grafik vositasiga ega bo'lgan 'Prime-select' to'plami. Windows-dan farqli o'laroq, bu dinamik ravishda amalga oshirilmaydi va o'zgarish kuchga kirishi uchun foydalanuvchi kirish sessiyasini qayta boshlashi kerak.

Ubuntu-ning asosiy tanlangan skriptini Ubuntu hosilalari mavjud, ular ba'zi hollarda o'zlarining grafik vositalarini qo'shadilar. Pre-offload yondashuvi arch va fedora-ga ko'chirildi yoki qayta tiklandi.

2016 yilda Nvidia GL Vendor Neutral Dispatch-ni e'lon qildi, ya'ni ikkala intel va nvidia drayverlari bir vaqtning o'zida o'rnatilishi mumkin. Bu rejimlarni almashtirish jarayonini ancha soddalashtirdi, garchi tarqatish afzalliklarga ega bo'lguncha 2018 yilgacha davom etdi.

Ba'zi eski va yuqori darajadagi noutbuklarda a mavjud BIOS ikkita video qurilma o'rtasida chiqishni almashtirish uchun apparat multipleksorining holatini qo'lda tanlash uchun sozlash. Bunday holda, Linux foydalanuvchisi noutbukni faqat bitta marta grafik qurilmasi mavjud bo'lgan apparat konfiguratsiyasiga joylashtirishi mumkin. Bu ikkita grafik drayverni ishlatishning murakkabligini oldini oladi, ammo quvvatni tejashga imkon bermasa.

Haydovchining 435-versiyasidan boshlab, shaxsiy haydovchi bitta oynani o'chirib tashlashni qo'llab-quvvatlaydi. Bu dGPU-ni ko'rsatadigan virtual displeyni yaratadi, bu yuklangan dastur uchun asosiy ekrandagi oynada ko'rsatiladi.[10] 2019 yil oktyabr oyidan boshlab xorg ishlab chiqish filialidan foydalanishni talab qiladi, chunki kerakli o'zgartirishlar hali chiqarilmagan.

Shuningdek qarang

Izohlar

  1. ^ Desktop Optimus 2011 yil iyun oyida ishga tushirilishi rejalashtirilgan edi[2] nomi ostida Sinergiya,[3] lekin hech qachon bajarmagan.

Adabiyotlar

  1. ^ "Optimus Technology". Nvidia. Olingan 10 aprel 2016.
  2. ^ Li, Terens (2011 yil 23 aprel). "NVIDIA COMPUTEX-da ish stoliga optimallashtirish / sinergiyani ishga tushirish uchun". Olingan 10 aprel 2016.
  3. ^ Pop, Sebastyan (2011 yil 26-aprel). "NVIDIA Optimus ish stoliga tushadi". Olingan 10 aprel 2016.
  4. ^ "Bumblebee Daemon". GitHub. 2013 yil 22 aprel. Olingan 10 aprel 2016.
  5. ^ "Bumblebee 3.0 versiyasi" Tumbleweed "chiqishi". 2012 yil 20-yanvar. Olingan 10 aprel 2016.
  6. ^ Plattner, Aaron (2013 yil 2-may). "Linux, Solaris va FreeBSD drayveri 319.17 (uzoq umr ko'rgan filial versiyasi)". Nvidia. Olingan 10 aprel 2016.
  7. ^ "Reliz proprietarnogo drayvera NVIDIA 319.17 s podderjkoy Optimus i RandR 1.4" (rus tilida). 2013 yil 2-may. Olingan 10 aprel 2016.
  8. ^ "Linux uchun optimallashtirish imkoniyatlari to'g'risida NVIDIA muzokaralari". Froniks. 2012 yil 25-yanvar.
  9. ^ "Bunday apparat muxlisiga ega bo'lmagan noutbuklarda siz NVIDIA GPU-ni namoyish qilish uchun ishlata olmaysiz.", 2010 yil 23-iyul, 2010-yil 27-noyabrga kirilgan. Arxivlandi 2011 yil 18-iyul, soat Orqaga qaytish mashinasi
  10. ^ "35-bob. PRIME Renderni yuklash". download.nvidia.com. Olingan 2019-10-09.

Tashqi havolalar