Abo
  • Services:

PHPNG: PHP um bis zu 30 Prozent beschleunigt

Mit einer neuen PHP-Engine sollen Anwendungen um bis zu 30 Prozent schneller arbeiten. Dafür sorgen Änderungen an der internen Datenrepräsentation sowie an der VM.

Artikel veröffentlicht am ,
Die PHP Engine wird beschleunigt.
Die PHP Engine wird beschleunigt. (Bild: PHP.net)

Um die Ausführung von PHP-Anwendungen zu beschleunigen, haben Mitarbeiter der Firma Zend mit JIT-Techniken und LLVM experimentiert. Das bewirkte aber nicht viel, so dass das Team große Umbauarbeiten an den internen Datentypen vornahm - und nun auf Leistungssteigerungen zwischen 10 und 30 Prozent verweisen kann, wie Dmitry Stogov schreibt.

Stellenmarkt
  1. Medizinischer Dienst der Krankenversicherung in Bayern, München
  2. ANSYS Germany GmbH, Darmstadt (near Frankfurt/Main), Otterfing (near Munich)

Die Entwickler hielten die virtuelle Maschine zwar für optimiert, sie arbeitete aber mit zu vielen Speicherzuweisungen und Referenzzählern. Deshalb sollten die Datentypen so geändert werden, dass "Heap-Zuweisungen minimiert werden", woran etwa vier Monate gearbeitet wurde.

Mehr Stack, weniger Zeiger

Bisher werden sämtliche Werte von der Zend-Engine auf dem Heap-Speicher verwaltet. Sie beanspruchen damit die Referenzzählung und den Garbage Collector. Außerdem arbeitet die Engine hauptsächlich mit Zeigern auf die sogenannten Zvals, die interne Datenstruktur für alle Variablen.

Die neue Implementierung verzichtet auf Zeiger und speichert die Zvals auf dem Stack, in Hashtable-Buckets sowie Property Slots. Das verringere die Operationen auf dem Heap "dramatisch" und vermeidet Referenzzählung und Garbage Collector für einfache Datentypen.

Zudem verwendet die neue Implementierung mehr Stack-Speicher als bisher und verzichtet in bestimmten Fällen auf Copy-on-Write. Die Daten werden stattdessen direkt kopiert. Die teilweise veränderten internen Datentypen, die die neue Engine benutzt, sind im Wiki der PHP-Entwickler dokumentiert.

Noch sind die Arbeiten an der neuen Engine nicht abgeschlossen und auch einige Erweiterungen lassen sich noch nicht nutzen. Trotzdem rufen die Entwickler die Community dazu auf, die Neuimplementierung mit vielen Anwendungen zu testen und sich an der Entwicklung zu beteiligen.

Die neue Datenverwaltung könnte künftig auch als Grundlage für weitere Arbeiten zur Beschleunigung dienen, etwa für die anfangs erwähnten JIT-Techniken. Eine Kompilieranleitung findet sich im Wiki. Mit der HHVM und der Sprache Hack versucht Facebook ebenfalls PHP zu beschleunigen.



Anzeige
Hardware-Angebote
  1. (Neuware für kurze Zeit zum Sonderpreis bei Mindfactory)

DASPRiD 08. Mai 2014

Keine Lust gerade alles zu kommentieren, aber dieser Punkt ist einfach nur falsch...

redmord 07. Mai 2014

0+9999999999999999; = 10000000000000000 0.3333333*3 = 0.9999998999999999

SvenCloud 06. Mai 2014

Geht es nicht im den "Garbage" Collector statt "Garage"? Grüße~ :3


Folgen Sie uns
       


i-Cristal autonomer Bus - Interview (englisch)

Der nächste Schritt steht an: Der französische Verkehrsbetrieb plant einen Test mit einem autonom fahenden Bus. Er soll Anfang 2020 in einer französischen Großstadt im normalen Verkehr fahren.

i-Cristal autonomer Bus - Interview (englisch) Video aufrufen
Passwörter: Eine vernünftige Maßnahme gegen den IoT-Irrsinn
Passwörter
Eine vernünftige Maßnahme gegen den IoT-Irrsinn

Kalifornien verabschiedet ein Gesetz, das Standardpasswörter verbietet. Das ist ein Schritt in die richtige Richtung, denn es setzt beim größten Problem von IoT-Geräten an und ist leicht umsetzbar.
Ein IMHO von Hanno Böck

  1. Retrogaming Maximal unnötige Minis
  2. Streaming Heilloses Durcheinander bei Netflix und Amazon Prime
  3. Sicherheit Ein Lob für Twitter und Github

Desktops: Unnötige Sicherheitsrisiken mit Linux
Desktops
Unnötige Sicherheitsrisiken mit Linux

Um Vorschaubilder von obskuren Datenformaten anzeigen zu lassen, gehen Entwickler von Linux-Desktops enorme Sicherheitsrisiken ein. Das ist ärgerlich und wäre nicht nötig.
Ein IMHO von Hanno Böck

  1. Red Hat Stratis 1.0 bringt XFS etwas näher an Btrfs und ZFS
  2. Nettools Systemd-Entwickler zeigen Werkzeuge zur Netzkonfiguration
  3. Panfrost Freier Linux-GPU-Treiber läuft auf modernen Mali-GPUs

WLAN-Standards umbenannt: Ein Schritt nach vorn ist nicht weit genug
WLAN-Standards umbenannt
Ein Schritt nach vorn ist nicht weit genug

Endlich weichen die nervigen Bezeichnungen für WLANs chronologisch sinnvollen. Doch die Wi-Fi Alliance sollte noch einen Schritt weiter gehen.
Ein IMHO von Oliver Nickel

  1. Wi-Fi 6 WLAN-Standards werden für besseres Verständnis umbenannt
  2. Wifi4EU Fast 19.000 Kommunen wollen kostenloses EU-WLAN
  3. Berlin Bund der Steuerzahler gegen freies WLAN

    •  /