Legion 技术文档
2024-12-28 16:13:41作者:虞亚竹Luna
Legion 是一种面向分布式异构机器的并行编程模型。以下为 Legion 的安装指南、使用说明以及 API 使用文档。
1. 安装指南
Legion 支持在 Linux、macOS 或其他 Unix 系统上运行。以下是安装 Legion 所需的依赖和环境:
- 操作系统:Linux、macOS 或其他 Unix
- 编译器:C++ 17 或更高版本(GCC、Clang、Intel 或 PGI)和 GNU Make
- 可选依赖:
- CMake 3.16 或更高版本
- Python 3.5 或更高版本(用于工具和 Python 绑定,注意:
tools/legion_prof.py需要 Python 3.8 或更高版本) - Rust 1.74 或更高版本(用于 Rust 分析器)
- CUDA 10.0 或更高版本(用于 NVIDIA GPU)
- GASNet(用于网络,请参考安装说明)
- LLVM 7-14(用于动态代码生成)
- HDF5(用于文件 I/O)
安装步骤如下:
git clone https://github.com/StanfordLegion/legion.git
export LG_RT_DIR="$PWD/legion/runtime"
cd legion/examples/circuit
make
./circuit
2. 项目使用说明
Legion 项目的目录结构如下:
tutorial:教程 源代码examples:用于高级编程技巧的示例apps:几个完整的 Legion 应用程序language:Regent 编程语言 编译器和示例runtime:核心运行时组件legion:Legion 运行时(见legion.h)realm:Realm 低级运行时(见realm.h)mappers:几个映射器,包括默认映射器(见default_mapper.h)
tools:杂项工具
3. 项目 API 使用文档
Legion 提供了丰富的 API,包括以下内容:
- 数据结构:用于描述程序数据结构的逻辑区域
- 任务创建与调度:创建并行任务,并调度到不同的处理器执行
- 数据映射:将逻辑区域映射到物理内存
- 性能分析:获取任务和内存映射的性能数据
更多关于 Legion API 的使用,请参考官方文档。
4. 项目安装方式
Legion 的安装方式如下:
- 克隆 Legion 仓库
- 设置
LG_RT_DIR环境变量,指向 Legion 运行时目录 - 进入示例目录,并执行
make命令编译示例程序 - 运行编译成功的示例程序
例如:
git clone https://github.com/StanfordLegion/legion.git
export LG_RT_DIR="$PWD/legion/runtime"
cd legion/examples/circuit
make
./circuit
以上就是关于 Legion 的技术文档,希望对您有所帮助。
登录后查看全文
热门项目推荐
相关项目推荐
GLM-5智谱 AI 正式发布 GLM-5,旨在应对复杂系统工程和长时域智能体任务。Jinja00
LongCat-AudioDiT-1BLongCat-AudioDiT 是一款基于扩散模型的文本转语音(TTS)模型,代表了当前该领域的最高水平(SOTA),它直接在波形潜空间中进行操作。00
jiuwenclawJiuwenClaw 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。Python0245- QQwen3.5-397B-A17BQwen3.5 实现了重大飞跃,整合了多模态学习、架构效率、强化学习规模以及全球可访问性等方面的突破性进展,旨在为开发者和企业赋予前所未有的能力与效率。Jinja00
AtomGit城市坐标计划AtomGit 城市坐标计划开启!让开源有坐标,让城市有星火。致力于与城市合伙人共同构建并长期运营一个健康、活跃的本地开发者生态。01
HivisionIDPhotos⚡️HivisionIDPhotos: a lightweight and efficient AI ID photos tools. 一个轻量级的AI证件照制作算法。Python05
项目优选
收起
deepin linux kernel
C
27
13
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
641
4.19 K
Ascend Extension for PyTorch
Python
478
579
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
934
841
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
386
272
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.51 K
866
暂无简介
Dart
884
211
仓颉编程语言运行时与标准库。
Cangjie
161
922
昇腾LLM分布式训练框架
Python
139
162
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
69
21