README.md 2.7 KB
Newer Older
maming's avatar
maming committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
# KamNet_pytorch

## 项目简介

KamNet 是一种面向球形液体闪烁体探测器的前沿神经网络模型。它利用 S² 和 SO(3) 群上的等变卷积操作,使模型对三维旋转具有不变性,适用于几何深度学习和非欧数据建模研究。

---

## 环境部署

### 1. 拉取镜像

```bash
docker pull harbor.sourcefind.cn:5443/dcu/admin/base/pytorch:2.5.1-ubuntu22.04-dtk25.04.2-py3.10
```

### 2. 创建容器

```bash
docker run -it \
--network=host \
--hostname=localhost \
--name=kamnet \
-v /opt/hyhal:/opt/hyhal:ro \
-v $PWD:/workspace \
--ipc=host \
--device=/dev/kfd \
--device=/dev/mkfd \
--device=/dev/dri \
--shm-size=512G \
--privileged \
--group-add video \
--cap-add=SYS_PTRACE \
-u root \
--security-opt seccomp=unconfined \
harbor.sourcefind.cn:5443/dcu/admin/base/pytorch:2.5.1-ubuntu22.04-dtk25.04.2-py3.10 \
/bin/bash
```

---

## 测试步骤

### 1. 拉取代码

```bash
git remote add origin http://developer.sourcefind.cn/codes/bw-bestperf/kamnet_pytorch.git
cd kamnet_pytorch/
```

### 2. 安装依赖

```bash
pip install joblib cython rtree shapely pyembree "trimesh[easy]" -i https://mirrors.aliyun.com/pypi/simple/  --trusted-host mirrors.aliyun.com

cd KamNet/lie_learn && pip install e .   #可能耗时较长
cd ../ && cd s2cnn && python setup.py install
```

### 3、获取优化包

```
curl -f -C - -o rocblas-install-1117-bug110157.tar.gz https://wuzh01.hpccube.com:65015/efile/s/d/bWFtaW5nMTAx/75c4336061c1be03  
#设置环境变量
CURRENT_DIR=$(pwd)
export LD_LIBRARY_PATH=$CURRENT_DIR/rocblas-install/lib:$LD_LIBRARY_PATH
#验证环境变量设置
echo $LD_LIBRARY_PATH | tr ':' '\n' | head -3
```

maming's avatar
maming committed
71
## 训练
maming's avatar
maming committed
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106

```bash
cd KamNet_pytorch/s2cnn/examples/mnist
#生成球面MNIST数据集
python3 gendata.py
# 进入缺失文件的目录
cd /usr/local/lib/python3.10/dist-packages/lie_learn/representations/SO3/pinchon_hoggan/
# 从官方仓库手动下载缺失的矩阵文件
wget https://raw.githubusercontent.com/AMLab-Amsterdam/lie_learn/master/lie_learn/representations/SO3/pinchon_hoggan/J_dense_0-150.npy
#numa绑定,查看机器numa亲和度
export HIP_VISIBLE_DEVICES=0
numactl --cpunodebind=3 python run_new.py --network original
```

---

## 贡献指南

欢迎对KamNet项目进行贡献!请遵循以下步骤:

1. Fork 本仓库,并新建分支进行功能开发或问题修复。
2. 提交规范的 commit 信息,描述清晰。
3. 提交 Pull Request,简述修改内容及目的。
4. 遵守项目代码规范和测试标准。
5. 参与代码评审,积极沟通改进方案。

---

## 许可证

本项目遵循 MIT 许可证,详见 [LICENSE](./LICENSE) 文件。

---

感谢您的关注与支持!如有问题,欢迎提交 Issue 或联系维护团队。