Tôi đang chạy R trên một cụm Linux nhiều nút. Tôi muốn chạy phân tích của mình về R bằng cách sử dụng tập lệnh hoặc chế độ hàng loạt mà không cần sử dụng phần mềm tính toán song song như MPI hoặc tuyết.Lập trình R - gửi công việc trên một cụm Linux nhiều nút bằng PBS
Tôi biết điều này có thể được thực hiện bằng cách chia dữ liệu đầu vào sao cho mỗi nút chạy các phần khác nhau của dữ liệu.
Câu hỏi của tôi là làm thế nào để tôi thực hiện chính xác điều này? Tôi không chắc làm thế nào tôi nên mã kịch bản của tôi. Một ví dụ sẽ rất hữu ích!
Tôi đã chạy tập lệnh của mình cho đến nay bằng PBS nhưng dường như nó chỉ chạy trên một nút vì R là một chương trình chuỗi đơn. Do đó, tôi cần tìm ra cách điều chỉnh mã của mình để phân phối lao động cho tất cả các nút.
Dưới đây là những gì tôi đã và đang làm cho đến nay:
1) dòng lệnh:
> qsub myjobs.pbs
2) myjobs.pbs:
> #!/bin/sh
> #PBS -l nodes=6:ppn=2
> #PBS -l walltime=00:05:00
> #PBS -l arch=x86_64
>
> pbsdsh -v $PBS_O_WORKDIR/myscript.sh
3) myscript .sh:
#!/bin/sh
cd $PBS_O_WORKDIR
R CMD BATCH --no-save my_script.R
4) my_script.R:
> library(survival)
> ...
> write.table(test,"TESTER.csv",
> sep=",", row.names=F, quote=F)
gợi ý Bất kỳ sẽ được đánh giá cao! Cảm ơn bạn!
-CC
bạn có chắc là pbs ra mắt nhiều phiên bản không? thử thêm 'echo $ (tên máy chủ)' vào tệp lô công việc – Anycorn