SCAF es un marco de análisis de dependencia innovador que se combina en un análisis de memoria de moda modular y (opcionalmente) afirmaciones especulativas.
La implementación completa de SCAF aún no está integrada en este repositorio. Se incluyen todos los módulos de análisis de memoria disponibles, pero los módulos de especulación junto con algunos otros componentes (por ejemplo, perfiladores) son actualmente parte de otro repositorio (https://github.com/princetonuniversity/cpf).
La novedad, el diseño, la implementación y la evaluación de este trabajo se describen en el artículo PLDI '20 por Apostolakis et al. titulado "SCAF: un marco de análisis de dependencia de la especulación" (ACM DL, PDF, Talk, Abstract).
Para reproducir los resultados de la evaluación presentados en el artículo PLDI 2020, consulte el artefacto del documento:
Este trabajo se basa en CAF (CGO '17 por Johnson et al., ACM DL).
Si usa SCAF en una publicación, agradeceríamos una cita al documento PLDI '20:
@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}
}
El número de versión está en forma de [V Major.Minor.revision ]
LLVM 9.0.1
Para construir e instalar SCAF, ejecute desde el directorio raíz del repositorio: make
Ejecute make clean del directorio raíz para limpiar el repositorio.
Ejecute make uninstall desde el directorio raíz para desinstalar SCAF.
SCAF es personalizable y puede usarse como un análisis de memoria conservador si los módulos de especulación están deshabilitados.
Si tiene algún problema para usar este marco, ¡no dude en crear un problema! Haremos todo lo posible para ayudar.
Agradecemos las contribuciones de la comunidad para mejorar este marco y evolucionarlo para atender a más usuarios.
SCAF tiene licencia bajo la licencia MIT.