Saya ingin berbagi pengalaman saya ketika mencoba menjalankan program MPI (Message Passing Interface) pada Mac Pro saya yang memiliki 4 CPU. Saya mendapat error "There are not enough slots available" hanya saat saya mencoba menjalankan lebih dari 2 core. Namun, jika saya membuat file host dan menjalankan MPI, maka program tersebut dapat berjalan dengan baik untuk jumlah core apapun.
Saya ingin tahu mengapa saya tidak dapat langsung menjalankan perintah mpirun -np 3 ./myprogram
ketika saya memiliki 4 physical core. Saya telah mencoba menggunakan lstopo dan hwloc, tetapi kedua alat tersebut tidak dapat dijalankan pada terminal saya.
Penjelasan
Lstopo dan hwloc adalah alat yang digunakan untuk mengetahui informasi tentang sistem hardware kita. Dengan demikian, kita dapat mengetahui jumlah core fisik yang ada pada system kita. Namun, jika kita tidak memiliki lstopo dan hwloc, maka kita dapat menggunakan Apple Icon > About This Mac > System Report > Hardware Overview untuk mengetahui informasi tentang sistem hardware kita.
Penggunaan Hwloc
Hwloc adalah alat yang digunakan untuk mengetahui informasi tentang sistem hardware kita. Dengan demikian, kita dapat menggunakan perintah brew install hwloc
untuk menginstall hwloc pada system kita. Kemudian, kita dapat menjalankan lstopo dengan cara berikut: lstopo -p
Solusi
Jika Anda menghadapi error "There are not enough slots available" saat menjalankan program MPI, maka Anda dapat mencoba beberapa solusi berikut:
- Membuat file host dan menjalankan MPI dengan menggunakan perintah
mpirun -hostfile myhosts ./myprogram
- Mengatur jumlah core yang digunakan oleh MPI dengan menggunakan perintah
mpirun -np 3 ./myprogram
(saya sudah mencoba ini, tetapi tidak berhasil) - Menggunakan alat lstopo dan hwloc untuk mengetahui informasi tentang sistem hardware kita
Dengan demikian, saya harap dapat membantu Anda mengatasi error "There are not enough slots available" pada program MPI Anda.