Ghostty 1.4: Emulatorul de terminal accelerat pe GPU reduce memoria scrollback cu până la 90%, modernizează pipeline-ul OpenGL pe Linux și aduce suport complet Kitty Graphics

 

Dezvoltat sub conducerea lui Mitchell Hashimoto (creatorul uneltelor Vagrant, Terraform și Consul) și scris în limbajul Zig, emulatorul de terminal de înaltă performanță Ghostty a lansat versiunea 1.4.

Această actualizare majoră abordează două dintre cele mai mari provocări ale emulatoarelor moderne de terminal: consumul excesiv de memorie RAM generat de istoricul masiv de comenzi (scrollback) și artefactele vizuale apărute la scalarea fracționară pe Linux. Versiunea 1.4 aduce o comprimare dinamică a istoricului, un pipeline de randare rescris prin EGL și DMABUF, suport grafic avansat și instrumente simplificate pentru sesiunile SSH.

Reducerea memoriei RAM cu 70%–90%: Comprimarea automată a istoricului (Scrollback Compression)

Cea mai importantă inovație arhitecturală din Ghostty 1.4 este mecanismul inteligent de compactare a memoriei:

  • Compresie în starea de repaus: Când terminalul devine inactiv (idle), memoria fizică ocupată de bufferul de istoric inactiv este comprimată automat, obținându-se economii de 70% până la 90% din RAM pentru fluxurile uzuale bogate în text.

  • Decomprimare transparentă la cerere: În momentul în care utilizatorul derulează înapoi (scroll back) sau caută prin textul anterior, datele se decomprimă instantaneu.

  • Limita implicită crescută de 5 ori: Datorită eficienței acestei stive, limita implicită de istoric a fost majorată de la 10 MB la 50 MB per instanță de terminal, utilizând în termeni reali mai puțină memorie fizică decât înainte. Funcționalitatea este activă pe Linux (64-bit) și macOS.

Salt masiv de performanță la parsare și redimensionare

Benchmark-urile interne arată o creștere considerabilă a randamentului de procesare:

Scenariu / OperațiuneGhostty anteriorGhostty 1.4Câștig de performanță
Parsare text ASCII simplu128 MB/s725 MB/sDe 5.7x mai rapid
Procesare înregistrări terminal realeNivel de bazăFlux accelerat+25% viteză brută
Redimensionare ferestre cu istoric mareVariabilăLatență minimăDe până la 6x mai rapid

Pipeline OpenGL rescris pentru Linux și FreeBSD: EGL, DMABUF și Triple Buffering

Pe Linux și FreeBSD, componenta GTK a renunțat la widgetul clasic GtkGLArea, implementând o cale de randare directă:

  • Randare pe fir dedicat cu EGL și DMABUF: Ghostty randează acum cadrele grafice pe un fir de execuție separat prin EGL, transmițându-le apoi direct către GTK prin mecanismul de partajare a memoriei video DMABUF. Dacă driverele GPU nu suportă exportul DMABUF, sistemul trece automat pe un fallback prin CPU.

  • Triple Buffering: Elimină efectul de rupere a cadrelor (screen tearing) și oferă o fluiditate constantă în animații.

  • Text clar la scalare fracționară (Fractional Scaling): Caracterele text și elementele de desenare a casetelor (box-drawing characters) sunt redate mult mai clar la factori de scalare precum 125% sau 150%, eliminând aspectul neclar (blurry) întâlnit frecvent pe Wayland.

Protocolul grafic Kitty complet și utilitarul ghostty +ssh

  • Suport complet pentru Kitty Graphics Protocol: Ghostty 1.4 poate reda imagini animate direct în terminal și adaugă suport pentru poziționarea relativă a imaginilor, permițând utilitarelor CLI (precum vizualizatoare de imagini, dashboard-uri TUI sau instrumente neovim) să așeze imaginile în raport una cu cealaltă.

  • Comanda ghostty +ssh: Un wrapper peste clientul standard SSH care rezolvă automat una dintre cele mai comune bătăi de cap ale utilizatorilor de terminale noi: instalează automat definițiile terminfo ale Ghostty pe serverul la distanță și transmite variabilele de mediu relevante, prevenind erorile de tip „unknown terminal type”.

Ergonomie desktop: Drag & Drop pentru split-uri și dependențe noi

  • Reorganizare vizuală a panourilor: Utilizatorii pot rearanja secțiunile împărțite (splits) direct prin glisare cu mouse-ul (Drag & Drop), putând muta panouri active între file (tabs) și ferestre diferite fără a întrerupe procesele aflate în execuție, căile directoarelor curente sau conținutul afișat.

  • Actualizare Unicode 18: Recunoaștere completă pentru cele mai noi glife și simboluri.

  • Dependențe noi de sistem pe Linux:

    • Ghostty 1.4 impune bibliotecile GTK 4.18 și libadwaita 1.7.

    • Ca urmare, distribuțiile LTS mai vechi precum Ubuntu 24.04 LTS nu mai pot compila nativ aplicația împotriva bibliotecilor standard de sistem. Pentru aceste sisteme, dezvoltatorii recomandă oficial utilizarea pachetului Flatpak (Flathub) sau păstrarea unei versiuni anterioare.

Sursa articolului: Linuxiac — Ghostty 1.4 Terminal Emulator Cuts Memory Usage, Boosts Performance

Comentarii

Postări populare de pe acest blog

Linux Mint 27 „Adrien” sosește de Crăciun: Schimbare istorică prin renunțarea la versiunile intermediare (point releases)

⏱️ Test de laborator Neowin: Linux spulberă Windows 11 în sarcinile zilnice și managementul resurselor!

PhotoSuite: O alternativă gratuită și open-source la Photoshop, cu suport nativ pentru fișiere PSD