Servo: Neue Mozilla-Engine deutet beeindruckende Performance an
Mozilla arbeitet an einer neuen Browser-Engine, welche auf den Namen Servo hört und in der neuen Programmiersprache Rust geschrieben wird. Eine aktuelle Demo eines Googles-Mitarbeiters deutet an, welch beeindruckende Performance mit Servo erreicht werden kann.
Mit Servo arbeitet Mozilla seit geraumer Zeit an einer komplett neuen Engine, welche moderne Hardware optimal nutzt und frei von Altlasten und Schwachstellen der aktuellen Gecko-Engine ist. Servo wird nicht etwa in C++, sondern in der ebenfalls neuen Programmiersprache Rust geschrieben.
Mit WebRender arbeitet man an einem experimentellen Renderer für die Servo-Engine, welcher im Grunde wie eine Spiele-Engine arbeitet und für das Rendering von Web-Content optimiert ist. Dabei profitiert die Engine nicht nur von mehreren CPU-Kernen, auch die GPU wird sehr viel stärker als bisher eingebunden.
Eine Demo von Google-Mitarbeiter Jake Archibald, der sich beeindruckt von der Performance zeigt, gibt einen Vorgeschmack darauf, welches Potential in Servo und WebRender steckt: kommt die Nightly-Version von Apple Webkit auf gerade mal 5 fps, die Developer Edition von Firefox auf 9 fps und Chrome Canary von Google auf immerhin 15 fps, werden mit Servo in der gleichen Demo 60 fps erreicht.
Nach wie vor gibt es noch sehr viel zu tun, ehe Servo massentauglich ist, so unterstützt Servo viele Dinge noch gar nicht, welche heutige Engines problemlos darstellen. Dennoch ist es erfreulich, Fortschritte zu sehen, da Servo von grundlegender Bedeutung für die Zukunft von Firefox sein kann. Derweil arbeitet man auch daran, einzele Komponenten von Servo in Firefox zu integrieren. So wird derzeit beispielsweise an der Unterstützung von Servos Style-System innerhalb der Gecko-Engine gearbeitet.
Weitere aktuelle Artikel aus der Kategorie „Servo“
- 03.02.2023Roadmap der Browser-Engine Servo für 2023 vorgestellt
- 19.01.2023Neue Ressourcen für Browser-Engine Servo
- 04.12.2018Developer Preview: Servo-Builds für Magic Leap One verfügbar
- 13.04.2017Neue Browser-Engine: Nightly-Builds von Servo-Browser für Windows
- 28.01.2017Trails: Navigationskonzept für Browser-Tabs von Mozilla
Das sind großartige Nachrichten. Ich kann es kaum erwarten, bis die Engine wirklich komplett umgestellt werden kann.
Gibt es dazu so etwas wie eine Roadmap oder ist es nach dem Motto "It's done, when it's done"?
Roman
Eine grobe Roadmap, zumindest für das laufende Jahr, gibt es hier:
https://github.com/servo/servo/wiki/Roadmap
Grundsätzlich eine gute Sache, allerdings bedeutet eine bessere Engine die auch auf die GPU zugreift eine höhere Hardware Voraussetzung für die Computer, sobald die Webseiten die neue Geschwindigkeit ausnutzten. Schon jetzt wird mein alter Laptop und mein RaspberryPi stark gefordert bei manchen Seiten, die ich früher anschauen konnte ohne das die Lüfter anfangen wie bei einem Spiele zu rattern.
Wie sieht es mit Vulkan für WebRender aus? Die OpenGL-Treiber von AMD (insbesondere) aber auch die von nVidia und intel sind ja eher eine Performancebremse. Sind die 60fps eine feste Frameanzahl, welche nicht überschritten werden darf, oder kann man auf einem 144hz Monitor auch 144 fps im Browser (mit WebRenderer) anschauen?
@7ero
Dieses "Problem" kann ich mit meinem Netbook bestätigen. Aber auch wenn es so kommen wird, wäre es falsch von Mozilla, nicht darauf zu reagieren. Die anderen Browser werden ebenfalls nachziehen und dann wäre der Firefox massiv im Rückstand.
Aber: Wenn mehr Kerne effizienter genutzt werden können, entlastet das auch die leistungsschwächeren PC, weil nun nicht mehr nur ein Kern mit x GHz die gesamte Last tragen muss. Die Softwareprogrammierung wird in Zukunft hauptsächlich auf Multicore setzen; egal, in welchem Bereich.
Eine Entwicklung in diese Richtung würde sich auch durch ein Einstellen der Entwicklung an Servo nicht aufhalten lassen.
Roman
Zu AMD kann ich nichts sagen, aber die Grafik im Wiki zeigt nVidia nicht als Performance-Bremse:
https://github.com/servo/webrender/wiki
(unter "Scrolling framerate for Wikipedia – Rust"). Die Grafik zeigt auch höhere Framewarten. Natürlich lässt sich nur davon ausgehend und schon gar nicht zu diesem Zeitpunkt eine pauschale Aussage treffen.
Vulkan ist der letzte Satz auf der Wiki-Seite gewidmet:
Das steht im Abschnitt "Future Work". Mehr als das, was da steht, kann ich dir nicht sagen. 😉