Abo
  • Services:
Anzeige
Die PHP Engine wird beschleunigt.
Die PHP Engine wird beschleunigt. (Bild: PHP.net)

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.

Anzeige

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.

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.


eye home zur Startseite
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



Anzeige

Stellenmarkt
  1. Ratbacher GmbH, München
  2. LogPay Financial Services GmbH, Eschborn
  3. ESG Elektroniksystem- und Logistik-GmbH, Fürstenfeldbruck
  4. Landeshauptstadt München, München


Anzeige
Hardware-Angebote
  1. 629€ + 5,99€ Versand
  2. 699€

Folgen Sie uns
       


  1. E-Mail

    Adobe veröffentlicht versehentlich privaten PGP-Key im Blog

  2. Die Woche im Video

    Schwachstellen, wohin man schaut

  3. UAV

    Matternet startet Drohnenlieferdienst in der Schweiz

  4. Joint Venture

    Microsoft und Facebook verlegen Seekabel mit 160 Terabit/s

  5. Remote Forensics

    BKA kann eigenen Staatstrojaner nicht einsetzen

  6. Datenbank

    Börsengang von MongoDB soll 100 Millionen US-Dollar bringen

  7. NH-L9a-AM4 und NH-L12S

    Noctua bringt Mini-ITX-Kühler für Ryzen

  8. Wegen Lieferproblemen

    Spekulationen über Aus für Opels Elektroauto Ampera-E

  9. Minix

    Fehler in Intel ME ermöglicht Codeausführung

  10. Oracle

    Java SE 9 und Java EE 8 gehen live



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
E-Paper-Tablet im Test: Mit Remarkable machen digitale Notizen Spaß
E-Paper-Tablet im Test
Mit Remarkable machen digitale Notizen Spaß
  1. Smartphone Yotaphone 3 kommt mit großem E-Paper-Display
  2. Display E-Ink-Hülle für das iPhone 7

Parkplatz-Erkennung: Bosch und Siemens scheitern mit Pilotprojekten
Parkplatz-Erkennung
Bosch und Siemens scheitern mit Pilotprojekten
  1. Community based Parking Mercedes S-Klasse liefert Daten für Boschs Parkplatzsuche

Optionsbleed: Apache-Webserver blutet
Optionsbleed
Apache-Webserver blutet
  1. Apache-Sicherheitslücke Optionsbleed bereits 2014 entdeckt und übersehen
  2. Open Source Projekt Oracle will Java EE abgeben

  1. Re: Und bei DSL?

    bombinho | 11:04

  2. Re: War das im Video das Kabel oder der Zugdraht?

    Eheran | 11:03

  3. Re: Geringwertiger Gütertransport

    logged_in | 11:03

  4. Re: Frage

    logged_in | 11:00

  5. Re: Absicht?

    ArcherV | 10:48


  1. 11:03

  2. 09:03

  3. 17:43

  4. 17:25

  5. 16:55

  6. 16:39

  7. 16:12

  8. 15:30


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel