Valve ngaleupaskeun Proton 4.11, suite pikeun ngajalankeun kaulinan Windows dina Linux

Perusahaan klep diterbitkeun cabang proyék anyar Proton 4.11, dumasar kana kamajuan proyék Anggur sarta aimed dina mastikeun peluncuran aplikasi kaulinan dijieun pikeun Windows jeung dibere dina katalog uap on Linux Ubuntu. Kamekaran proyék nyebar handapeun lisénsi BSD. Nalika aranjeunna siap, parobihan anu dikembangkeun dina Proton ditransferkeun ka Anggur asli sareng proyék anu aya hubunganana, sapertos DXVK sareng vkd3d.

Proton ngamungkinkeun anjeun langsung ngajalankeun aplikasi kaulinan Windows-hijina dina klien Steam Linux. Paket kalebet palaksanaan DirectX 10/11 (dumasar kana DXVK) jeung 12 (dumasar kana vkd3d), digawé ngaliwatan tarjamahan DirectX nelepon ka API Vulkan, nyadiakeun ningkat rojongan pikeun controller kaulinan sarta kamampuhan pikeun ngagunakeun mode layar pinuh paduli resolusi layar dirojong dina kaulinan. Dibandingkeun sareng Anggur asli, kinerja kaulinan multi-threaded parantos ningkat sacara signifikan berkat panggunaan patch "ésync"(Eventfd Sinkronisasi) atawa "futex/fsync".

utama parobahan dina Proton 4.11:

  • Sinkronisasi sareng basis kode Anggur 4.11 dilaksanakeun, dimana langkung ti 3300 parobihan ditransfer (cabang sateuacana dumasar kana anggur 4.2). 154 patch ti Proton 4.2 geus dipindahkeun hulu jeung ayeuna kaasup kana pakét Anggur utama;
  • Ditambahkeun rojongan eksperimen pikeun sinkronisasi primitif dumasar kana futex () Sistim panggero, nu ngurangan beban CPU dibandingkeun esync. Sajaba ti éta, palaksanaan anyar solves masalah jeung kudu ngagunakeun setélan husus pikeun esync sarta mungkin kacapean descriptors file sadia.

    Hakekat karya keur dipigawé nyaéta rék dilegakeun fungsionalitas nu futex baku () Sistim panggero dina kernel Linux Ubuntu jeung kamampuhan dipikabutuh pikeun sinkronisasi optimal tina pool thread. Patch sareng dukungan pikeun bandéra FUTEX_WAIT_MULTIPLE anu dipikabutuh pikeun Proton parantos aya dialihkeun pikeun citakan dina kernel Linux Ubuntu utama jeung glibc. Parobihan anu disiapkeun henteu acan kalebet kana kernel utama, janten ayeuna diperyogikeun ngadegkeun kernel husus kalawan rojongan pikeun primitif ieu;

    Valve ngaleupaskeun Proton 4.11, suite pikeun ngajalankeun kaulinan Windows dina Linux

  • Interlayer DXVK (palaksanaan DXGI, Direct3D 10 sareng Direct3D 11 di luhur Vulkan API) diropéa kana versi 1.3jeung D9VK (hiji palaksanaan eksperimen Direct3D 9 on luhureun Vulkan) nepi ka versi 0.13f. Pikeun ngaktifkeun dukungan D9VK di Proton, paké bandéra PROTON_USE_D9VK;
  • Laju refresh monitor ayeuna dikirimkeun ka kaulinan;
  • Perbaikan parantos dilakukeun pikeun nanganan fokus beurit sareng manajemén jandela;
  • Input lag tetep sareng masalah sareng dukungan geter pikeun joysticks anu lumangsung dina sababaraha kaulinan, khususna dina kaulinan dumasar kana mesin Unity;
  • Ditambahkeun dukungan pikeun versi panganyarna tina OpenVR SDK;
  • Komponén FAudio kalawan palaksanaan perpustakaan sora DirectX (API XAudio2, X3DAudio, XAPO na XACT3) geus diropéa pikeun release 19.07;
  • Masalah sareng subsistem jaringan dina kaulinan dina GameMaker parantos direngsekeun;
  • Seueur modul Wine ayeuna diwangun salaku file Windows PE tinimbang perpustakaan Linux. Salaku karya progresses di wewengkon ieu, pamakéan PE bakal mantuan sababaraha DRM jeung sistem anti curang. Upami anjeun nganggo ngawangun Proton khusus, anjeun paling dipikaresep kedah nyiptakeun mesin virtual Vagrant pikeun ngawangun file PE.

Sateuacan patch Valve diadopsi kana kernel Linux utama, ngagunakeun futex() tinimbang esync merlukeun masang kernel husus kalawan rojongan pikeun sinkronisasi pools thread dilaksanakeun dina sakumpulan patch. fsync. Pikeun Arch Linux di AUR geus diterbitkeun paket kernel siap-siap disusun sareng patch fsync. Dina Ubuntu 18.04 sareng 19.04, anjeun tiasa nganggo kernel ékspérimén PPA linux-mfutex-valve (sudo add-apt-repository ppa: valve-experimental/kernel-bionic; sudo apt-get install linux-mfutex-valve);

Upami anjeun gaduh kernel kalayan dukungan fsync, nalika anjeun ngajalankeun Proton 4.11, konsol bakal nampilkeun pesen "fsync: up and running". Anjeun tiasa maksa fsync dipareuman nganggo bandéra PROTON_NO_FSYNC=1.

sumber: opennet.ru

Tambahkeun komentar