SCAF ist ein innovativer Abhängigkeitsanalyse -Framework, das modulare Modegedächtnisanalysen und (optional) spekulative Behauptungen kombiniert.
Die vollständige Implementierung von SCAF ist noch nicht in dieses Repository integriert. Alle currekten verfügbaren Speicheranalysemodule sind enthalten, aber die Spekulationsmodule zusammen mit einigen anderen Komponenten (z. B. Profilern) sind derzeit Teil eines anderen Repositorys (https://github.com/princetonuniversity/cpf).
Die Neuheit, das Design, die Implementierung und die Bewertung dieser Arbeit werden im PLDI '20 -Artikel von Apostolakis et al. Titel "SCAF: Ein spekulationserziehender Abhängigkeitsanalyse-Framework" (ACM DL, PDF, Talk, Abstract).
Um die im PLDI 2020 -Papier vorgestellten Bewertungsergebnisse zu reproduzieren, lesen Sie bitte das Artefakt des Papiers:
Diese Arbeit baut auf CAF auf (CGO '17 von Johnson et al., ACM DL).
Wenn Sie SCAF in einer Veröffentlichung verwenden, würden wir uns über ein Zitat für das PLDI '20 -Papier freuen:
@inproceedings{apostolakis:2020:pldi,
author = {Apostolakis, Sotiris and Xu, Ziyang and Tan, Zujun and Chan, Greg and Campanoni, Simone and August, David I.},
title = {SCAF: A Speculation-Aware Collaborative Dependence Analysis Framework},
year = {2020},
isbn = {9781450376136},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
url = {https://doi.org/10.1145/3385412.3386028},
doi = {10.1145/3385412.3386028},
booktitle = {Proceedings of the 41st ACM SIGPLAN Conference on Programming Language Design and Implementation},
pages = {638–654},
numpages = {17},
keywords = {collaboration, dependence analysis, speculation},
location = {London, UK},
series = {PLDI 2020}
}
Die Versionsnummer erfolgt in Form von [V major.minor.revision ]
LLVM 9.0.1
Um SCAF zu erstellen und zu installieren, laufen Sie aus dem Repository -Root -Verzeichnis: make
Rennen Sie aus dem Stammverzeichnis make clean um das Repository zu reinigen.
Run make uninstall aus dem Root -Verzeichnis, um Scaf zu deinstallieren.
SCAF ist anpassbar und kann als konservative Speicheranalyse verwendet werden, wenn die Spekulationsmodule deaktiviert sind.
Wenn Sie Probleme mit diesem Framework haben, können Sie ein Problem erstellen! Wir werden unser Bestes geben, um zu helfen.
Wir begrüßen Beiträge der Community, um diesen Framework zu verbessern und es weiter zu entwickeln, um mehr Benutzer zu erfüllen.
SCAF ist unter der MIT -Lizenz lizenziert.