"test/git@developer.sourcefind.cn:change/sglang.git" did not exist on "177320a582eccc9ef1fbf2c0156c7ba782c5bf11"
README.md 3.06 KB
Newer Older
zhangwenbo's avatar
zhangwenbo committed
1
# HFM
zhangwenbo's avatar
zhangwenbo committed
2
3
4
5
6
7
8
9
10

## 模型简介

HFM是一种基于物理学的深度学习框架,能够对控制流体运动的一类重要物理定律进行编码,即纳维-斯托克斯方程。具体来说,我们试图利用底层守恒定律(即质量、动量和能量守恒定律)来推断隐藏的感兴趣量,例如速度和压力场,这些量仅来自在任意复杂域(例如人体动脉或脑动脉瘤)中传输的被动缩放器(例如染料或烟雾)的时空可视化。我们解决上述数据同化问题的方法是独一无二的,因为我们设计了一种与几何形状或初始和边界条件无关的算法。这使得 HFM 在选择感兴趣的时空域进行数据采集以及后续训练和预测时具有高度灵活性。因此,HFM 所做的预测属于纯机器学习策略或单纯的科学计算方法根本无法重现的情况。对于由实际应用引发的几个基准问题,所提出的算法可以准确预测二维和三维流动中的压力和速度场。我们的结果表明,这种相对简单的方法可用于物理和生物医学问题,以提取有价值的定量信息(例如升力和阻力或动脉壁面剪切应力),而这些信息可能无法直接测量。



## 环境配置

zhangwenbo's avatar
zhangwenbo committed
11
12
13
14
15
16
17
### 1. 拉取镜像

```bash
docker pull image.sourcefind.cn:5000/dcu/admin/base/tensorflow:2.18.0-ubuntu22.04-dtk25.04.2-py3.10
```

### 2. 创建容器
zhangwenbo's avatar
zhangwenbo committed
18

zhangwenbo's avatar
zhangwenbo committed
19
```bash
zhangwenbo's avatar
zhangwenbo committed
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
docker run -it \
    --network=host \
    --hostname=localhost \
    --name HFM \
    -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 \
    --security-opt seccomp=unconfined \
    image.sourcefind.cn:5000/dcu/admin/base/tensorflow:2.18.0-ubuntu22.04-dtk25.04.2-py3.10 \
zhangwenbo's avatar
zhangwenbo committed
36
37
    /bin/bash
```
zhangwenbo's avatar
zhangwenbo committed
38

zhangwenbo's avatar
zhangwenbo committed
39
40
---
## 测试步骤
zhangwenbo's avatar
zhangwenbo committed
41

zhangwenbo's avatar
zhangwenbo committed
42
### 1. 拉取代码
zhangwenbo's avatar
zhangwenbo committed
43

zhangwenbo's avatar
zhangwenbo committed
44
45
46
47
```bash
git clone http://developer.sourcefind.cn/codes/bw-bestperf/hfm.git
cd hfm/
```
zhangwenbo's avatar
zhangwenbo committed
48

zhangwenbo's avatar
zhangwenbo committed
49
### 2. 安装依赖
zhangwenbo's avatar
zhangwenbo committed
50

zhangwenbo's avatar
zhangwenbo committed
51
52
53
54
```bash
pip install scipy -i https://mirrors.aliyun.com/pypi/simple/
```
### 3. 获取优化包
zhangwenbo's avatar
zhangwenbo committed
55
```bash
zhangwenbo's avatar
zhangwenbo committed
56
curl -f -C - -o rocblas-install-1126-5bug.tar.gz https://ksefile.hpccube.com:65241/efile/s/d/emhhbmd3YjM=/7420623cbac23efd  
zhangwenbo's avatar
zhangwenbo committed
57
```
zhangwenbo's avatar
zhangwenbo committed
58
#设置环境变量
zhangwenbo's avatar
zhangwenbo committed
59
```bash
zhangwenbo's avatar
zhangwenbo committed
60
61
CURRENT_DIR=$(pwd)
export LD_LIBRARY_PATH=$CURRENT_DIR/rocblas-install/lib:$LD_LIBRARY_PATH
zhangwenbo's avatar
zhangwenbo committed
62
```
zhangwenbo's avatar
zhangwenbo committed
63
#验证环境变量设置
zhangwenbo's avatar
zhangwenbo committed
64
```bash
zhangwenbo's avatar
zhangwenbo committed
65
echo $LD_LIBRARY_PATH | tr ':' '\n' | head -3
zhangwenbo's avatar
zhangwenbo committed
66
```
zhangwenbo's avatar
zhangwenbo committed
67
### 3. 下载数据集
zhangwenbo's avatar
zhangwenbo committed
68
69
70

[数据下载地址](https://o365coloradoedu-my.sharepoint.com/:f:/g/personal/mara4513_colorado_edu/EnMZcTjA6BVBjovGVJT3hk4BIemGxYF9lO6ry0SyizIjoQ?e=fuHKi2)

zhangwenbo's avatar
zhangwenbo committed
71
#仅下载Cylinder2D.mat即可
zhangwenbo's avatar
zhangwenbo committed
72
```
zhangwenbo's avatar
zhangwenbo committed
73
74
#在当前目录下添加Data目录,并将数据集放到Data目录下
mkdir Data
zhangwenbo's avatar
zhangwenbo committed
75
76
77
78
79
80
81
82
83
Data
    ├── Cylinder2D.mat
```


## 训练

```bash
cd Source
zhangwenbo's avatar
zhangwenbo committed
84
85
export TF_XLA_FLAGS="--tf_xla_auto_jit=1"
numactl --cpunodebind=3 --membind=3 python Cylinder2D.py > Cylinder2D_stdout.txt
zhangwenbo's avatar
zhangwenbo committed
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
```

## 推理

暂无

## 应用场景

### 算法类别

`AI for science`

### 热点应用行业

`科研,教育`

## 参考资料

* https://github.com/maziarraissi/HFM