如何解决在GPU上运行BERT作为服务进行并行处理
我最近开始使用在这里找到的BERT作为服务-> https://github.com/hanxiao/bert-as-service
我正在通过将服务器作为作业提交到slurm
来启动服务器。以下是我正在提交的作业的脚本。
#!/bin/bash
#SBATCH -p gpu20
#SBATCH --nodes 1
#SBATCH --gres gpu:4
#SBATCH --cpus-per-task 20
#SBATCH -o example.log
conda activate env3
export CUDA_VISIBLE_DEVICES=1-40
export GPU_DEVICE_ORDINAL=1-40
echo ${GPU_DEVICE_ORDINAL}
echo ${CUDA_VISIBLE_DEVICES}
bert-serving-start -model_dir ./models/uncased_L-12_H-768_A-12/ \
-num_worker 20 \
-max_seq_len 300 \
-mask_cls_sep \
-device_map 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
编码9k句子所花费的时间约为400秒。以前,我尝试过使用CPU,并且编码9000个句子花了200秒。
所以我不确定我是否正确使用了GPU。我需要帮助找出SBATCH
所需的参数,以便在更短的时间内编码越来越多的句子
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。