ROSE 编译器框架/项目
外观
此页面用作关于 rose/projects 下主要目录的简要指南
解析
- pragmaParsing:一个示例翻译器,使用 ROSE 提供的解析构建块来解析编译指示
翻译
- autoTuning:一个项目,使用 ROSE 的参数化翻译器来促进经验性调整(或自动调整)
- DataFaultTolerance:一个项目,使用源到源翻译来使应用程序对内存错误具有弹性
- extractMPISkeleton:提取 MPI 通信骨架
- Fortran_to_C : 一个 Fortran 到 C 语言翻译器
静态分析
- compass:一个静态分析工具,用于查找应用程序中的错误
动态分析
- RTED:使用编译器对库调用的工具进行运行时错误检测。
二进制分析
- BinaryCloneDetection:检测二进制可执行文件之间的相似性。
- CloneDetection
高级抽象的优化
- arrayOptimization:基于数组抽象的优化
- autoParallelization:一个翻译器,可以根据依赖性分析和可选的抽象语义,自动将 OpenMP 指令插入串行代码中。
并行编程模型
- mint:一个基于指令的 GPU 编程模型
- OpenMP_Translator:使用 ROSE 实现 OpenMP 的第一个版本。不推荐用于生产环境,仅作为示例保留。
- UpcTranslation:一个初步的示例项目,用于演示如何使用 ROSE 创建 UPC 编译器
一个正在进行的项目,用于探索知识驱动的 HPC 分析和优化。我们使用 OWL 使用的标准和工具链来正式建模 HPC 领域中的概念和关系,包括程序、硬件、分析和优化等。
在主文章 OpenK 中查看更多信息
开发一个用于模板计算的可扩展领域特定语言
问题:一个学生在 ROSE 中添加了一些新的 IR 节点。她无法通过 minitermite 的 make
解决方案:projects/minitermite/HOWTO_ADD_NEW_SGNODE_VARIANTS