Ingenieurin vor der PBXC64-Compilermaschine
Technische Vorschau
PBXC64 1.0.0-rc50
Windows x64
Native PE32+
Parallele Compilerpipeline
Parallele EXE + GPU

Eine Toolchain. Ein nativer Weg bis zum Windows-Programm.

PBXC64 ist als vollständige Windows-x64-Compilerplattform entworfen: PowerBASIC-nahe Quelltexte, Inline-ASMX64 und später weitere Sprach-Frontends laufen über eine gemeinsame moderne Zwischendarstellung zu nativem Maschinencode. Assembler, Ressourcenverarbeitung, COFF-Objekte und PE32+-Ausgabe gehören zur eigenen Toolchain.

RC50-Vorschau: Die folgenden Parallelitäts-, GPU- und wissenschaftlichen Abschnitte erläutern Architektur und Entwicklungsziele, keinen aktuell vollständig qualifizierten Funktionsumfang.

Damit entsteht kein Wrapper um fremde Compiler, sondern eine kontrollierbare Plattform für native EXE-, DLL- und OBJ-Ausgabe, präzise Diagnose und langfristige Spracherweiterung.

EinsatzprofilArchitektur entdecken

Gebaut für anspruchsvolle native Windows-Projekte

PowerBASIC weiterdenkenAls Compiler für den unterstützten C17-Umfang verbindet PBXC64 vertraute, PowerBASIC-nahe Syntax mit einer modernen 64-Bit-Architektur. Eigene Compiler-Profile adressieren PBWin- und PBCC-Kompatibilität.
Toolchain unter KontrolleCompiler, ASMX64, Ressourcencompiler, COFF-Writer und PE-Linker sind als zusammengehörige Plattform konzipiert.
Offen für weitere SprachenJedes Frontend behält seine eigene Syntax und Semantik, nutzt danach aber dieselbe Optimierungs- und x64-Ausgabestrecke.

Moderne Compiler-Architektur statt direkter Syntaxübersetzung

PBXC64 bewahrt zunächst die Bedeutung des Programms in einer High-Level IR. Danach ermöglichen MIR mit SSA und Memory SSA tiefere Analysen und Optimierungen. LLIR und Machine IR führen kontrolliert zum x64-Backend. So bleiben Sprachlogik, Optimierung und Maschinencode sauber getrennt.

PowerBASIC / ASMX64 / weitere Frontends -> HIR -> MIR + SSA + Memory SSA -> Optimizer -> LLIR -> Machine IR -> x64 Codegen -> ASMX64 -> COFF / PE32+

Diese Struktur ist die Basis für mehrstufige Optimierung, Whole-Program-Analyse, sichere Parallelisierung und spätere Frontends, ohne den Backend-Code für jede Sprache neu zu bauen.

Parallelität auf zwei Ebenen

PBXC64 nutzt Parallelität nicht nur, um schneller zu kompilieren. Der Compiler kann auch Parallelität im Anwenderprogramm erkennen und in die erzeugte EXE einbauen.

1. Der Compiler arbeitet parallelDateien und Includes, Frontends, Funktionen, HIR/MIR/SSA-Aufbereitung, Optimizer, x64-Codegenerierung, ASMX64, COFF-Erzeugung, Ressourcen und Linkerarbeit können auf mehrere Worker verteilt werden. Das verkürzt die Build-Zeit besonders bei großen Projekten.
2. Das erzeugte Programm arbeitet parallelPBXC64 analysiert Datenabhängigkeiten, Speicherzugriffe, Aliase, Schleifen und Reduktionen. Unabhängige Arbeit kann als Task-Graph für einen nativen Work-Stealing-Threadpool ausgegeben werden. Sequentielle Ausführung bleibt für Debugging und reproduzierbares Verhalten wählbar.

Automatisch von der Schleife zu CPU-Kernen oder GPU

Eine Schleife über unabhängige Array-Bereiche kann zu einem parallelen FOR werden. Summen und andere geeignete Operationen können als parallele Reduktionen ausgeführt werden. Große String-, Vektor-, Matrix- oder UNL/UNF-Aufgaben können zusätzlich als GPU-Kandidaten markiert werden.

Sicherer StandardStandardmäßig wird nur nachweislich unabhängige Arbeit parallelisiert. Abhängigkeiten, I/O-Reihenfolge und mögliche Seiteneffekte bleiben erhalten.
Kostenbasierte WahlKleine und latenzkritische Aufgaben bleiben auf der CPU. Bei großen Datenmengen berücksichtigt der Planer Rechenaufwand, Speichertransfer und den Typ der verfügbaren GPU.
Direct3D 12 mit CPU-FallbackDer Windows-native GPU-Pfad ist auf Direct3D 12 Compute ausgelegt. Wenn GPU-Offloading nicht sinnvoll oder nicht verfügbar ist, bleibt ein CPU-Ausführungspfad erhalten.

Die komplette native Windows-Strecke

Vom Quelltext bis zur PE-DateiLexer, Parser, semantische Analyse, IR-System, Optimizer, x64-Backend, ASMX64, COFF-Objektwriter, Ressourcencompiler, Import-/Exporttabellen und PE-Linker bilden eine gemeinsame Architektur.
Keine externe Backend-KetteDas Produktkonzept sieht vor, dass PBXC64 den Kompiliervorgang selbst abschließt und dafür weder LLVM noch GCC-, MASM-, NASM- oder externe Linkerprozesse benötigt.

PowerBASIC-Kompatibilität mit Raum nach oben

Drei Compiler-Profileenhanced nutzt den erweiterten PBXC64-Funktionsumfang. pbwin und pbcc bieten klar wählbare Kompatibilitätspfade für Windows- und Konsolenprojekte.
Inline-ASMX64 mit Symbolbrücke#ASM ... #ENDA verbindet Hochsprache und x64-Assembly. Symbole und Typinformationen können kontrolliert zwischen Frontend und Assembler ausgetauscht werden.

Technik für rechenintensive Anwendungen

UNL und UNFNative Konzepte für unbegrenzt große Ganzzahlen sowie präzise Fließkomma-, Dezimal-, Festkomma- und rationale Zahlen.
Vektor, Matrix und IntervalleWissenschaftliche Datentypen sind Teil des Architekturmodells und können dadurch vom Compiler analysiert und gezielt optimiert werden.
CPU, Parallelität und GPUDas Design verbindet CPU-Feature-Dispatch, sichere automatische Parallelisierung und einen Windows-nativen Direct3D-12-GPU-Planer mit CPU-Fallback.

Ein Werkzeug für den gesamten Build-Pfad

Die nachfolgende erweiterte Kommandooberfläche beschreibt den Architekturentwurf und ist kein geprüfter RC50-Bedienvertrag. Der aktuelle Paket-README nennt den Aufruf:

PBXC64.exe program.pb

Entwurf der erweiterten Toolchain-Schnittstelle:

pbxc64 build source.bas -> kompilieren, assemblieren und linken
pbxc64 compile source.bas -> OBJ-, ASM- oder IR-Ausgabe
pbxc64 asm source.asmx -> mit ASMX64 assemblieren
pbxc64 link file1.obj ... -> mit dem internen Linker verbinden
pbxc64 rc file.rc -> Windows-Ressourcen kompilieren
pbxc64 dump / verify -> Artefakte untersuchen und prüfen

PBXC64 ist derzeit eine technische Vorschau

RC50 bleibt eine technische Vorschau; die signierte EXE ist im V8-Paket verfügbar. Es liegt hier kein aktueller vollständiger Qualifikationslauf vor.

PBX Compiler V8 herunterladen

Weiter in der Compiler-Werkstatt

RC50 ist als technische Vorschau im gemeinsamen PBX-Compiler-V8-Paket enthalten. Die Architekturübersicht unten beschreibt Entwurf und vorhandene Komponenten, keine vollständige Qualifikation aller genannten Pfade.

PBXB64 V23 herunterladenAlle Compiler ansehen

Private Nutzung kostenlos, Business sauber lizenziert

Private, nicht-kommerzielle Nutzung ist kostenlos. Business-, Team- und kommerzielle Nutzung läuft über Smart Package Robot oder per E-Mail an info@it-berater.org.

Download-Entwicklung

Tägliche Abrufe aller angebotenen Downloads der letzten 28 Tage (rollierend). Jede Download-Datei ist dauerhaft durch eine eigene Farbe gekennzeichnet.

Aktueller Download und Releasegrenzen

PBX-Compiler V8: 349.086.784 Bytes (332,9 MiB / 349,1 MB). Enthält PBXA32 V24, PBXA64 V10, PBXB64 V23, PBXC64 RC50, ScharffBasic und den PBX-Editor samt Hilfen, Includes und Beispielen.

Die ausgelieferte EXE hat die Dateiversion 1.0.0-rc50 und eine gültige Signatur. RC50 bleibt eine Vorschau, ist aber bereits im V8-Paket herunterladbar. Weiterführende Parallelisierungs-, GPU- und wissenschaftliche Architekturziele sind keine Zusage vollständig qualifizierter Sprach- oder Laufzeitparität.

CHM DeutschCHM EnglishV8-Paketprüfsumme