Showing posts with label HPC. Show all posts
Showing posts with label HPC. Show all posts

Saturday, October 10, 2015

Running job with proper software version via modulefiles in supercomputer

Motivation

On HPC cluster (high performance computing/supercomputer), it is often to have multiple version of the same software installed. When the user want to use the specific software which the certain library, changing environment variable like $PATH manually is tedious and sometime difficult, the is the common errors during running job in HPC. To solve the problem, corresponding shell script would have to be written for multiple languages. All of these explicit steps are error prone and difficult to maintain. It is also no simple upgrade path. One exist solution is by using modulefiles, a (Unix) tool for dynamic modification of a user's environment.

Module Commands

Here are some module commands:
  • module avail: to check available modulefiles
  • module list: view current active modules
  • module purge: delete currently loaded modules
  • module load <package>: to load default module <package>
  • module load <package/version>: to load module <package> on specific version.
  • module unload <package>: unload the package
  • module show <package>: display command triggered by module load
  • module whatis <package>: display 1-line info about the module
  • module help <package>: need a help?

Wednesday, October 07, 2015

Green Computing ala Barcelona Supercomputer

Selain metrik performansi yang diukur dalam floating points operation per second (FLOPS) dan diranking oleh TOP500, ada metrik lain yang dijadikan acuan yakni Flops/W yang menunjukkan seberapa besar superkomputer tersebut ramah lingkungan dan diperingkat oleh GREEN500. Metrik lain yang bisa dijadikan acuan adalah Flops/$, kemampuan superkomputer per USD, namun belum ada website yang memeringkat berdasarkan metrik tersebut.

Untuk menuju superkomputer ramah lingkungan, hal yang bisa dilakukan adalah dengan menggunakan CPU atau core low-power semacam ARM. Mont-blanc adalah project Uni Eropa untuk mengevaluasi CPU di pasaran yang bisa dijadikan superkomputer berenergi rendah. Mont-blanc project di-handle oleh BSC (Barcelona Supercomputing Centre) di Spanyol. Tulisan berikut adalah ulasan singkat studi profile energi yang digunakan oleh Mont-blanc di BSC yang saya lakukan secara remote dengan protokol SSH (script codes saya host di Github).

Superkomputer Barcelona menggunakan platform SLURM, sehingga perintah-perintah yang digunakan pada cluster superkomputer tersebut berbeda dengan cluster yang saya bangun dengan VirtualBox sebelumnya. File script yang saya gunakan untuk mendapatkan power profile Mont-blanc saya host disini (authored by Filippo Mantovani).

ssh ke superkomputer Barcelona

Step-by-step:

Membangun komputer cluster di VirtualBox dengan Rocks kit, Part 2: Testing

Setelah berhasil membangun dan menginstall kluster komputer di VirtualBox, saatnya untuk mengetes kluster tersebut dengan komputasi parallel. Goal yang ingin kita tuju adalah membagi job komputasi (berupa command/script) pada masing-masing node yang sudah kita tambahkan pada master node agar komputar tersebut lebih cepat.

Pertama kita tambahkan user agar bisa login ke kluster dengan perintah useradd (login as root in master),
useradd bagus1
useradd bagus2
passwd bagus1
passwd bagus2
rocks sync users
Perintah-perintah diatas akan menambahkan user (bagus2 dan bagus2), mengeset masing-masing password untuk user dan mensinkronkan user dari master ke nodes.

Sinkroniasi user antar compute nodes

Sunday, October 04, 2015

Membangun kluster komputer di VirtualBox dengan Rocks kit, Part 1: Instalasi

Mambangun kluster komputer sangat dibutuhkan untuk melakukan simulasi dan komputasi yang membutuhkan perfomansi tinggi (high performance komputing, HPC), salah satunya adalah pada superkomputer. Untuk membangun superkomputer dengan kluster, ada baiknya dilakukan simulasi dengan menggunakan virtualisasi, yakni dengan menggunakan VirtualBox. Tujuan tulisan ini adalah unutk membangun komputer kluster di VirtualBox dengan Rocks kit (www.rockscluster.org), sebuah open source kit (OS, operating system) untuk real dan virtual cluster.

Gambar infrastruktur yang akan kita bangun adalah seperti berikut,
Komputer kluster dengan 1 Master dan 2 Compute node
Sebelum masuk pada langkah-langkah development cluster ini, ada baiknya kita membiasakan dengan menu-menu VirtualBox seperti di bawah, jika sudah pernah memakainya, silakan lanjut pada step-by-step.

VirtualBox pada Linux Mint
Requirement :
  • Komputer yang sudah terinstall VirtualBox dengan space kosong minimal 30 GB dan RAM 4 GB
  • File ISO instalasi RocksCluster yang bisa di download disini.