Abo
  • Services:
Anzeige
Ein C/C++-Präprozessor in D: Warp von Facebook
Ein C/C++-Präprozessor in D: Warp von Facebook (Bild: Facebook, Screenshot: Golem.de)

Warp: Facebook veröffentlicht C/C++-Präprozessor

Mit Warp ersetzt Facebook den C-Präprozessor der GNU Compiler Collection und erreicht damit deutlich schnellere Builds. Der Erfinder der Programmiersprache D und Compiler-Experte Walter Bright hat Warp für Facebook in D geschrieben.

Anzeige

Es werde häufig angenommen, dass die Zeit, die der Präprozessor zum Verarbeiten des Codes benötigt, im Vergleich zur gesamten Kompilierzeit eher vernachlässigbar ist, schreiben die Facebook-Entwickler in ihrem Blog. Das stimme aber nicht immer, denn durch das Ersetzen des C-Präprozessors aus der GNU Compiler Collection durch den eigens geschriebenen Warp, habe sich die Build-Zeit um 10 bis 40 Prozent verringert.

Diese Geschwindigkeitssteigerungen erreicht Warp unter anderem dadurch, dass der Präprozessor "einmal geöffnete und geladene Dateien zwischenspeichert", um diese später eventuell wieder zu verwenden. Darüber hinaus werde Warp nur einmal gestartet und arbeite dann sämtliche Dateien ab, statt den Präprozessor für jede einzelne Datei neu aufzurufen.

Warp wurde von D-Erfinder und Compiler-Entwickler Walter Bright in D geschrieben. So nutzt das Werkzeug auch einige Besonderheiten der Sprache aus, was ebenfalls zu der Beschleunigung beitragen soll. Dazu zählen allen voran die sogenannten Ranges und Algorithmen. Diese vereinfachten die Arbeit mit Unit-Tests und die Beurteilung der Leistung bestimmter Code-Bestandteile, um notfalls nachzubessern.

Außerdem nutzt Warp viele moderne Compiler-Optimierungen wie Inline-Ersetzungen, das Speichern von Structs in Registern, auch wenn diese größer als ein einzelnes Register sind, sowie das Über- und Zurückgeben von POD-Structs in Registern.

Weitere Einzelheiten zu Warp finden sich in der Ankündigung von Facebook. Der Code des unter der BSD-ähnlichen Boost Software License veröffentlichten Präprozessors Warp steht über Github zum Download bereit. Bis jetzt ist das Bauen von Warp nur unter CentOS getestet worden, die Unterstützung für weitere Betriebssysteme soll aber folgen.


eye home zur Startseite



Anzeige

Stellenmarkt
  1. Bundesnachrichtendienst, Pullach
  2. Zühlke Engineering GmbH, München, Stuttgart, Hannover
  3. Allianz Deutschland AG, Unterföhring
  4. DIEBOLD NIXDORF, Paderborn, Taucha bei Leipzig


Anzeige
Spiele-Angebote
  1. (-53%) 13,99€
  2. 4,99€
  3. 69,99€ (Release 31.03.)

Folgen Sie uns
       


  1. Apple

    iOS 10.3 sucht nach verlorenen Airpods

  2. Beta 1

    MacOS Sierra 10.12.4 mit Blaulichtfilter als Nachtmodus

  3. Spielebranche

    Goodgame Studios entlässt weitere 200 Mitarbeiter

  4. Project Scorpio

    Neue Xbox ohne ESRAM, aber mit Checkerboard

  5. DirectX 12

    Microsoft legt Shader-Compiler offen

  6. 3G-Abschaltung

    Telekom-Mobilfunkverträge nennen UMTS-Ende

  7. For Honor

    PC-Systemanforderungen für Schwertkämpfer

  8. Innogy

    Telekom will auch FTTH anmieten

  9. Tissue Engineering

    3D-Drucker produziert Haut

  10. IBM-Übernahme

    Agile 3 bringt Datenübersicht in die Chefetage



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Halo Wars 2 angespielt: Mit dem Warthog an die Strategiespielfront
Halo Wars 2 angespielt
Mit dem Warthog an die Strategiespielfront

Reverse Engineering: Mehr Spaß mit Amazons Dash-Button
Reverse Engineering
Mehr Spaß mit Amazons Dash-Button
  1. Online-Einkauf Amazon startet virtuelle Dash-Buttons

Glasfaser: Nun hängt die Kabel doch endlich auf!
Glasfaser
Nun hängt die Kabel doch endlich auf!
  1. US-Präsident Zuck it, Trump!
  2. Fake News Für Facebook wird es hässlich
  3. Nach Angriff auf Telekom Mit dem Strafrecht Router ins Terrorcamp schicken oder so

  1. Re: Gab es das nicht als App?

    KrasnodarLevita... | 00:09

  2. Re: In meinem Haus liegt bereits Glasfaser

    Squirrelchen | 00:06

  3. Re: Warum nicht ein anderer Hersteller?

    ms (Golem.de) | 00:04

  4. Re: Mir graust es etwas vor dem Sierra-Update

    vbot | 00:02

  5. Anspruchsvoll geht auch.

    NeoXolver | 24.01. 23:58


  1. 22:59

  2. 22:16

  3. 18:21

  4. 18:16

  5. 17:44

  6. 17:29

  7. 16:57

  8. 16:53


  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