Jawaban sebelumnya, meskipun benar, tidak valid untuk sebagian besar cluster komputer skala besar.
Cluster komputer tidak selalu mengikuti konvensi standar untuk mesin, biasanya untuk alasan yang baik, dan tidak ada gunanya membahasnya dengan sysadmin.
Direktori Anda saat ini merujuk ke sistem file pusat, yang diakses melalui jaringan. Ini tidak hanya lambat, tetapi juga menempatkan banyak pada sistem untuk pengguna lainnya, jadi Anda tidak boleh menggunakannya kecuali Anda tidak banyak menulis dan Anda dapat memulihkannya jika pekerjaan macet.
Node komputasi memiliki hard drive sendiri, yaitu sistem file tercepat yang tersedia, dan apa yang seharusnya Anda gunakan. Dokumentasi klaster harus memberitahu Anda apa itu, biasanya /scratch
, /tmp/[jobid]
atau beberapa variabel lingkungan standar non ( $SNIC_TMP
di salah satu yang saya gunakan).
Jadi, apa yang saya rekomendasikan adalah membuatnya dapat dikonfigurasi pengguna. Default dapat menjadi yang pertama Anda memiliki akses tulis ke:
Tetapi mengharapkan tingkat keberhasilan yang rendah dengan pendekatan ini, dan pastikan untuk mengeluarkan peringatan besar.
Sunting: Saya akan menambahkan alasan lain untuk memaksanya diatur oleh pengguna. Salah satu kluster saya telah $TMPDIR
ditetapkan /scratch
, yaitu dapat ditulis oleh pengguna dan pada hard drive lokal. Tetapi, dokumentasi mengatakan bahwa apa pun yang Anda tulis di luar /scratch/[jobid]
dapat dihapus pada titik mana pun, bahkan di tengah jalan. Jadi, jika Anda mengikuti standar, dan kepercayaan $TMPDIR
, Anda akan menemukan crash acak, sangat sulit untuk di-debug. Jadi, Anda mungkin menerima $TMPDIR
, tetapi tidak mempercayainya.
Beberapa kluster lain memang memiliki variabel ini yang dikonfigurasi dengan benar, sehingga Anda dapat menambahkan opsi untuk mempercayai secara eksplisit $TMPDIR
, jika tidak, berikan peringatan besar dan gemuk.