SCAF เป็นกรอบการวิเคราะห์การพึ่งพาอาศัยที่เป็นนวัตกรรมซึ่งรวมกันในการวิเคราะห์หน่วยความจำแฟชั่นแบบแยกส่วนและการยืนยันการเก็งกำไร (เป็นทางเลือก)
การใช้งานอย่างเต็มรูปแบบของ SCAF ยังไม่ได้รวมเข้ากับที่เก็บนี้ โมดูลการวิเคราะห์หน่วยความจำที่มีอยู่ทั้งหมดรวมอยู่ด้วย แต่โมดูลการเก็งกำไรพร้อมกับส่วนประกอบอื่น ๆ (เช่นโปรไฟล์) ในปัจจุบันเป็นส่วนหนึ่งของที่เก็บอื่น (https://github.com/princetonuniversity/cpf)
ความแปลกใหม่การออกแบบการใช้งานและการประเมินผลงานนี้อธิบายไว้ในกระดาษ PLDI '20 โดย Apostolakis และคณะ ชื่อเรื่อง "SCAF: กรอบการวิเคราะห์การพึ่งพาการเก็งกำไร" (ACM DL, PDF, พูดคุย, บทคัดย่อ)
ในการทำซ้ำผลการประเมินที่นำเสนอในกระดาษ PLDI 2020 โปรดดูสิ่งประดิษฐ์ของกระดาษ:
งานนี้สร้างขึ้นบน CAF (CGO '17 โดย Johnson et al., ACM DL)
หากคุณใช้ SCAF ในสิ่งพิมพ์เราจะขอบคุณการอ้างอิงถึงกระดาษ 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}
}
หมายเลขเวอร์ชันอยู่ในรูปแบบของ [v major.minor.revision ]
LLVM 9.0.1
ในการสร้างและติดตั้ง SCAF ให้เรียกใช้จากไดเรกทอรีรูทที่เก็บ: make
เรียกใช้ make clean จากไดเรกทอรีรากเพื่อทำความสะอาดที่เก็บ
เรียกใช้ make uninstall จากไดเรกทอรีรากเพื่อถอนการติดตั้ง SCAF
SCAF สามารถปรับแต่งได้และสามารถใช้เป็นการวิเคราะห์หน่วยความจำแบบอนุรักษ์นิยมหากโมดูลการเก็งกำไรถูกปิดใช้งาน
หากคุณมีปัญหาในการใช้เฟรมเวิร์กนี้อย่าลังเลที่จะสร้างปัญหา! เราจะพยายามอย่างเต็มที่เพื่อช่วย
เรายินดีต้อนรับการมีส่วนร่วมจากชุมชนเพื่อปรับปรุงกรอบนี้และพัฒนาเพื่อรองรับผู้ใช้มากขึ้น
SCAF ได้รับใบอนุญาตภายใต้ใบอนุญาต MIT