分布式模型训练

前言

针对量化模型进行训练优化,将原来的滚动学习拆分为月模型的训练任务,通过集群进行分布式加速。

这篇文章,从零起步 手把手教你搭建简易而又实用的分布式模型训练框架。
为了方便同学部署,可以从此处的百度网盘下载相关脚本。

实现路径

  • celery+redis实现底层分布式框架
  • HDF5文件实现二级本地文件缓存,每日数据同步

环境搭建

miniconda

centos自带python2.7, 因此需要安装python虚拟环境 方便版本切换。
需要下载sh文件的同学,点击这里下载conda

也可以直接命令行下进行安装

wget https://repo.anaconda.com/miniconda/Miniconda3-py37_4.12.0-Linux-x86_64.sh

sh Miniconda3-py37_4.12.0-Linux-x86_64.sh

echo $PATH
# 若环境变量没添加 则手动更改下
export PATH=~/miniconda3/bin:$PATH

搭建私有pypi-server

在服务器上开启pypiserver,用于后期代码在每个节点pip install进行分发。

下载pypiserver-1.5.0-py2.py3-none-any.whl

pip install pypiserver-1.5.0-py2.py3-none-any.whl

# 使用无需权限的上传模式开启服务
# /root/home/packages 为package的存储路径  
pypi-server -p 9090 -P . -a C:\pypackage  /root/home/packages






显示上图页面 则搭建成功, 可以方便地上传源码,在内网直接pip

现在可以上传源码到服务器啦,在写代码的机器上配置 .pypirc文件(目录为:~/.pypir)

[distutils]
index-servers =
  local

[local]
repository:http://ip:端口号
username:
password:

# 上传源码
python setup.py sdist bdist_wheel

twine upload -r local dist/*

修改pip国内源

mkdir ~/.pip
 
vim ~/.pip/pip.conf

pip.conf文件里输入下面内容并保存

[global]
index-url=http://mirrors.aliyun.com/pypi/simple/
 
[install]
trusted-host=mirrors.aliyun.com

安装redis

选择一台服务器 搭建redis服务

# 下载安装包
wget http://download.redis.io/releases/redis-6.2.7.tar.gz
# 解压
tar -zxvf redis-6.2.7.tar.gz
# 进入解压目录 执行make编译
# # yum install gcc-c++ 没有安装gcc的话 先把gcc安装下
cd redis-6.2.7
make
# 进入src目录 执行make install安装redis
cd src
make install
# 在src目录执行./redis-server …/redis.conf即可启动redis(前端启动方式)
./redis-server ../redis.conf

# 修改配置
vim redis.conf
# 搜索 (/)进入编辑状态(i) 保存退出(:wq!) 重启服务
daemonize yes
bind 0.0.0.0 # 运行本机以外访问

# 检查redis状态
ps -ef |grep redis

# 关闭redis
 ./redis-cli shutdown

前端启动截图

配置文件修改

pass

posted @ 2022-09-05 15:07  LazyTiming  阅读(119)  评论(0编辑  收藏  举报