witty-profiler社区贡献指南如何参与开源项目开发与维护【免费下载链接】witty-profilerThe witty-profiler is an automated data and control stream topology detection and bottleneck analysis tool for AI training and inferencing systems.项目地址: https://gitcode.com/openeuler/witty-profiler前往项目官网免费下载https://ar.openeuler.org/ar/witty-profiler是一款针对AI训练和推理系统的自动化数据与控制流拓扑检测及瓶颈分析工具。作为开源项目社区贡献是其持续发展的核心动力。本文将为你提供完整的贡献指南帮助你轻松参与到witty-profiler的开发与维护中。一、贡献前准备1.1 环境搭建在开始贡献前需要先搭建开发环境。witty-profiler支持Linux、Windows有限支持和macOS仅开发系统推荐使用Linux系统以获得最佳体验。系统要求操作系统Ubuntu 20.04或 equivalent内核4.18推荐5.x以支持eBPFPython版本3.11或更高硬件x86_64或ARM64 CPU512MB内存推荐2GB100MB磁盘空间安装步骤使用uv推荐# 安装uv curl -LsSf https://astral.sh/uv/install.sh | sh # 克隆仓库 git clone https://gitcode.com/openeuler/witty-profiler cd witty-profiler # 创建虚拟环境 uv venv .venv --python 3.11 # 激活虚拟环境 source .venv/bin/activate # Linux/macOS # 安装核心依赖 uv sync # 安装开发依赖 uv sync --group dev或者使用pip# 克隆仓库 git clone https://gitcode.com/openeuler/witty-profiler cd witty-profiler # 创建虚拟环境 python3.11 -m venv .venv source .venv/bin/activate # 安装开发模式 pip install -e .[dev]1.2 了解项目结构witty-profiler的主要目录结构如下collector/收集器相关代码包括Python和Rust实现docs/项目文档skills/各种分析技能模块tests/测试代码核心代码位于collector/python/src/witty_profiler/包含后端、收集器、配置管理、控制器等模块。二、贡献方式2.1 报告Bug发现Bug时可以通过提交Issue来报告。报告时请包含以下信息复现步骤预期行为实际行为环境信息系统、Python版本等错误日志2.2 提出新功能如果你有新功能的想法可以先在Issue中提出与社区讨论后再进行开发。2.3 代码贡献代码贡献的基本流程如下Fork仓库在GitCode上Fork witty-profiler仓库创建分支从main分支创建新的功能分支开发代码实现功能或修复Bug运行测试确保所有测试通过提交PR提交Pull Request到主仓库三、开发规范3.1 代码风格witty-profiler使用以下工具来保证代码质量black代码格式化pylint代码检查mypy类型检查在提交代码前请运行以下命令# 格式化代码 black src/ tests/ # 代码检查 pylint src/witty_profiler/ # 类型检查 mypy src/3.2 测试要求所有新功能都需要编写相应的测试。测试代码放在collector/python/tests/目录下。运行测试的命令pytest tests/3.3 文档更新如果你的代码变更影响了使用方法或功能请同时更新相关文档。文档位于collector/python/docs/目录。四、贡献流程详解4.1 克隆代码git clone https://gitcode.com/你的用户名/witty-profiler.git cd witty-profiler4.2 创建分支git checkout main git pull git checkout -b feature/your-feature-name4.3 开发与测试实现你的功能或修复Bug并确保通过所有测试。4.4 提交代码遵循约定式提交规范Conventional Commitsgit add . git commit -m feat: 添加新功能 # 新功能 # 或 git commit -m fix: 修复某个Bug # Bug修复4.5 推送分支并提交PRgit push origin feature/your-feature-name然后在GitCode上创建Pull Request等待审核。五、社区交流加入witty-profiler社区与其他开发者交流项目Issue在GitCode上提交Issue进行讨论邮件列表发送邮件到项目邮件列表具体见项目文档六、贡献者激励你的贡献将被记录在项目的贡献者列表中活跃贡献者有机会成为项目维护者参与开源项目可以提升你的技术能力和影响力七、常见问题7.1 如何编译eBPF工具部分收集器需要编译eBPF工具# 安装构建依赖Ubuntu/Debian sudo apt-get install build-essential cmake libbpf-dev clang llvm bpftool pkg-config libelf-dev zlib1g-dev # 构建所有eBPF工具 python -m witty_profiler.tools.build7.2 如何处理权限问题运行某些收集器需要root权限sudo python -m witty_profiler或者添加CAP_NET_ADMIN capabilitysudo setcap cap_net_adminep .venv/bin/python总结通过本文的指南你已经了解了如何参与witty-profiler开源项目的贡献。无论是报告Bug、提出新功能还是提交代码你的每一份贡献都对项目的发展至关重要。加入我们一起打造更强大的AI系统性能分析工具祝你贡献愉快 【免费下载链接】witty-profilerThe witty-profiler is an automated data and control stream topology detection and bottleneck analysis tool for AI training and inferencing systems.项目地址: https://gitcode.com/openeuler/witty-profiler创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
witty-profiler社区贡献指南:如何参与开源项目开发与维护
witty-profiler社区贡献指南如何参与开源项目开发与维护【免费下载链接】witty-profilerThe witty-profiler is an automated data and control stream topology detection and bottleneck analysis tool for AI training and inferencing systems.项目地址: https://gitcode.com/openeuler/witty-profiler前往项目官网免费下载https://ar.openeuler.org/ar/witty-profiler是一款针对AI训练和推理系统的自动化数据与控制流拓扑检测及瓶颈分析工具。作为开源项目社区贡献是其持续发展的核心动力。本文将为你提供完整的贡献指南帮助你轻松参与到witty-profiler的开发与维护中。一、贡献前准备1.1 环境搭建在开始贡献前需要先搭建开发环境。witty-profiler支持Linux、Windows有限支持和macOS仅开发系统推荐使用Linux系统以获得最佳体验。系统要求操作系统Ubuntu 20.04或 equivalent内核4.18推荐5.x以支持eBPFPython版本3.11或更高硬件x86_64或ARM64 CPU512MB内存推荐2GB100MB磁盘空间安装步骤使用uv推荐# 安装uv curl -LsSf https://astral.sh/uv/install.sh | sh # 克隆仓库 git clone https://gitcode.com/openeuler/witty-profiler cd witty-profiler # 创建虚拟环境 uv venv .venv --python 3.11 # 激活虚拟环境 source .venv/bin/activate # Linux/macOS # 安装核心依赖 uv sync # 安装开发依赖 uv sync --group dev或者使用pip# 克隆仓库 git clone https://gitcode.com/openeuler/witty-profiler cd witty-profiler # 创建虚拟环境 python3.11 -m venv .venv source .venv/bin/activate # 安装开发模式 pip install -e .[dev]1.2 了解项目结构witty-profiler的主要目录结构如下collector/收集器相关代码包括Python和Rust实现docs/项目文档skills/各种分析技能模块tests/测试代码核心代码位于collector/python/src/witty_profiler/包含后端、收集器、配置管理、控制器等模块。二、贡献方式2.1 报告Bug发现Bug时可以通过提交Issue来报告。报告时请包含以下信息复现步骤预期行为实际行为环境信息系统、Python版本等错误日志2.2 提出新功能如果你有新功能的想法可以先在Issue中提出与社区讨论后再进行开发。2.3 代码贡献代码贡献的基本流程如下Fork仓库在GitCode上Fork witty-profiler仓库创建分支从main分支创建新的功能分支开发代码实现功能或修复Bug运行测试确保所有测试通过提交PR提交Pull Request到主仓库三、开发规范3.1 代码风格witty-profiler使用以下工具来保证代码质量black代码格式化pylint代码检查mypy类型检查在提交代码前请运行以下命令# 格式化代码 black src/ tests/ # 代码检查 pylint src/witty_profiler/ # 类型检查 mypy src/3.2 测试要求所有新功能都需要编写相应的测试。测试代码放在collector/python/tests/目录下。运行测试的命令pytest tests/3.3 文档更新如果你的代码变更影响了使用方法或功能请同时更新相关文档。文档位于collector/python/docs/目录。四、贡献流程详解4.1 克隆代码git clone https://gitcode.com/你的用户名/witty-profiler.git cd witty-profiler4.2 创建分支git checkout main git pull git checkout -b feature/your-feature-name4.3 开发与测试实现你的功能或修复Bug并确保通过所有测试。4.4 提交代码遵循约定式提交规范Conventional Commitsgit add . git commit -m feat: 添加新功能 # 新功能 # 或 git commit -m fix: 修复某个Bug # Bug修复4.5 推送分支并提交PRgit push origin feature/your-feature-name然后在GitCode上创建Pull Request等待审核。五、社区交流加入witty-profiler社区与其他开发者交流项目Issue在GitCode上提交Issue进行讨论邮件列表发送邮件到项目邮件列表具体见项目文档六、贡献者激励你的贡献将被记录在项目的贡献者列表中活跃贡献者有机会成为项目维护者参与开源项目可以提升你的技术能力和影响力七、常见问题7.1 如何编译eBPF工具部分收集器需要编译eBPF工具# 安装构建依赖Ubuntu/Debian sudo apt-get install build-essential cmake libbpf-dev clang llvm bpftool pkg-config libelf-dev zlib1g-dev # 构建所有eBPF工具 python -m witty_profiler.tools.build7.2 如何处理权限问题运行某些收集器需要root权限sudo python -m witty_profiler或者添加CAP_NET_ADMIN capabilitysudo setcap cap_net_adminep .venv/bin/python总结通过本文的指南你已经了解了如何参与witty-profiler开源项目的贡献。无论是报告Bug、提出新功能还是提交代码你的每一份贡献都对项目的发展至关重要。加入我们一起打造更强大的AI系统性能分析工具祝你贡献愉快 【免费下载链接】witty-profilerThe witty-profiler is an automated data and control stream topology detection and bottleneck analysis tool for AI training and inferencing systems.项目地址: https://gitcode.com/openeuler/witty-profiler创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考