Linux GPU/CPU 基础训练推理测试
August 25, 2022 · View on GitHub
Linux GPU/CPU 基础训练推理测试的主程序为test_train_inference_python.sh,可以测试基于Python的模型训练、评估、推理等基本功能。
1. 测试结论汇总
- 训练相关:
| 算法名称 | 模型名称 | 单机单卡 | 单机多卡 |
|---|---|---|---|
| CutPaste | resnet18 | 正常训练 | - |
- 推理相关:
| 算法名称 | 模型名称 | device_CPU | device_GPU | batchsize |
|---|---|---|---|---|
| CutPaste | resnet18 | 支持 | 支持 | 1 |
2. 测试流程
2.1 准备数据
用于基础训练推理测试的数据位于lite_data,直接使用即可。
2.2 准备环境
-
安装PaddlePaddle:如果您已经安装了2.2或者以上版本的paddlepaddle,那么无需运行下面的命令安装paddlepaddle。
# 需要安装2.2及以上版本的Paddle # 安装GPU版本的Paddle pip install paddlepaddle-gpu==2.2.0 # 安装CPU版本的Paddle pip install paddlepaddle==2.2.0 -
安装依赖
pip3 install -r requirements.txt
2.3 功能测试
测试方法如下所示,希望测试不同的模型文件,只需更换为自己的参数配置文件,即可完成对应模型的测试。
bash test_tipc/test_train_inference_python.sh ${your_params_file} lite_train_lite_infer
以resnet18的Linux GPU/CPU 基础训练推理测试为例,命令如下所示。
bash test_tipc/prepare.sh test_tipc/configs/resnet18/train_infer_python.txt lite_train_lite_infer
bash test_tipc/test_train_inference_python.sh test_tipc/configs/resnet18/train_infer_python.txt lite_train_lite_infer
输出结果如下,表示命令运行成功。
Run successfully with command - python3.7 tools/train.py --type lite --model_dir logs --output=./log/resnet18/lite_train_lite_infer/norm_train_gpus_0 --epochs=2 --batch_size=1!
......
Run successfully with command - python3.7 tools/eval.py --type lite --pretrained=./log/resnet18/lite_train_lite_infer/norm_train_gpus_0/final.pdparams!
......
Run successfully with command - python3.7 deploy/export_model.py --pretrained=./log/resnet18/lite_train_lite_infer/norm_train_gpus_0/final.pdparams --save-inference-dir=./log/resnet18/lite_train_lite_infer/norm_train_gpus_0!
......
Run successfully with command - python3.7 deploy/infer.py --use-gpu=True --model-dir=./log/resnet18/lite_train_lite_infer/norm_train_gpus_0 --batch-size=1 --benchmark=False > ./log/resnet18/lite_train_lite_infer/python_infer_gpu_batchsize_1.log 2>&1 !
......
Run successfully with command - python3.7 deploy/infer.py --use-gpu=False --model-dir=./log/resnet18/lite_train_lite_infer/norm_train_gpus_0 --batch-size=1 --benchmark=False > ./log/resnet18/lite_train_lite_infer/python_infer_cpu_batchsize_1.log 2>&1 !