== 2011/08/18已完成drbl-mpi.sh [[br]] == DRBL-ONEMPI - A Toolkit for Deploying PC Cluster environment quickly and easily [[br]] Abstract―[[br]] The LAMMPS is classical molecular dynamics software which supports also large scale atomic massively parallel simulation. [[br]] The code has been run on a PC cluster with using DRBL (Diskless Remote Boot in Linux)-ONEMPI. MPICH2 provide an MPI [[br]] implementation that supports different computing and communication platform. How-ever, MPICH2 has still many installation [[br]] steps that are complicate. Therefore, the paper provides DRBL-ONEMPI free software to deploy desktop clusters. It can [[br]] construct quickly a multicores architecture environment and a convenient management for your environment. The DRBL-ONEMPI [[br]] gives user some useful installation process and assists system administrators to deploy their own private cluster [[br]] environment. We build a PC cluster environment, and runs in parallel using MPICH2 on our PC cluster with diskless nodes.[[br]] We will introduce the basic architecture of DRBL-ONEMPI and present some design.[[br]] Keywords―LAMMPS, molecular dynamics, MPICH2, DRBL-ONEMPI.[[br]] I. Introduction [[br]] LAMMPS [1] is created by Sandia National Laboratories, a US Department of Energy labora-tory. LAMMPS is classical molecular [[br]] dynamics simulation software, integrates Newton`s equation of motion, is an open source code, and runs on sin-gle processors [[br]] or parallel programming with using message-passing interface. The LAMMPS source is widely applied in the semiconductors, [[br]] biomolecular, polymers, coarse-grained and microscopic, etc. It has been used to simulate in the chemistry and semiconductor [[br]] research. The LAMMPS has lots of library to use, modify, or extended LAMMPS in your choose. [[br]] In past few years, PC cluster are more and more popular in high performance computing be-cause of computing ability. However, [[br]] it is difficult for the administrator manage lots of computers, to deploy the system environmental and to configure the [[br]] installation of the cluster. The DRBL-ONEMPI provides a way to manage the pc cluster environ-ment, such as the installation [[br]] of the cluster, the deployment system environment, the user man-agement, the system monitor and easy to use it. [[br]] The DRBL-ONEMPI has two component packages including DRBL and ONEMPI. The DRBL is a diskless or systemless environment for [[br]] client machines and an open source solution to managing the deployment of the GNU/Linux oper-ating system across many clients. [[br]] Hence, we have an ideal plan for running MPI programming on the diskless environment and so to exploit ONEMPI. The ONEMPI make [[br]] user avoid complicated the MPICH2 [2] installation process. However, we combine DRBL with ONEMPI which rename DRBL-ONEMPI. [[br]] In general, the pc cluster is diffi-cult to manage and deploy environment. However, we use DRBL-ONEMPI to manage and execute [[br]] mpich2 on our computing environment. The user just enters some instructions on command-line that accomplish diskless environment. [[br]] In section.2, we will introduce LAMMPS si-mulation software. In section.3, the DRBL and ONEMPI system are presented in detail. [[br]] In section.4, the simulation process and benchmark results are discussed. [[br]] II. LAMMPS Simulation [[br]] The LAMMPS has been used wildly in ma-terial processing, such as etching, deposition, sput-tering and surface cleaning, etc. some [[br]] people also use LAMMPS to apply mechanical engineering, such as computational fluid dynamics (CFD), Fracture Mechanics, Micro and [[br]] Nano Mechanics, etc. The LAMMPS is popular one of molecular dynamics software and lots of library. [[br]] The LAMMPS applied process as follows: [[br]] (1) To input a script file for LAMMPS the initial configuration. [[br]] (2) To create a particle and model types, such as atoms, coarse-grained particles, all-atom poly-mers, organic molecules, [[br]] proteins, DNA, etc. [[br]] (3) To choose force fields, the potential has Len-nard-Jones, Morse, Tersoff and EAM, etc. [[br]] (4) To construct boundary and constraints conditions. [[br]] (5) To choose integrators, such as velocity-Verlet integrator, Brownian dynamics, rigid body in-tegration, etc. [[br]] (6) To run program and Output file. [[br]] III. DRBL and ONEMPI design architecture [[br]] A. DRBL Architecture [[br]] Diskless Remote Boot in Linux [3] (DRBL) is an open source solution to managing the dep-loyment of the GNU/Linux operating system [[br]] across many clients. DRBL supports lots of popular GNU/Linux distributions, and it is developed based on diskless and systemless [[br]] environment for client machines. Figure 1 shows DRBL system architec-ture. DRBL uses PXE/Etherboot, DHCP, TFTP, NFS and NIS to [[br]] provide services to client machines, so it is not necessary to install GNU/Linux on the client hard drives individually. Users [[br]] just prepare a server machine for DRBL to be installed as a DRBL server, and follow the DRBL installation wizard to configure [[br]] and dispose the environment for client machines step by step. It’s really an easy job to deploy a DRBL environment on clustering [[br]] systems even for a GNU/Linux beginner, hence cross-platform and user-friendly are the key factors that make the DRBL become a [[br]] superior clustering tool [4-7]. DRBL can efficiently deploy diskless or diskfull cluster environment, and manage client. It configures [[br]] these services (TFTP, NIS, DHCP, and NFS) to build a cluster environment. According to this implementation, administrator just needs [[br]] two steps to deploy cluster environment. (1) Step 1: In-stalls DRBL packages and generates kernel and in-itrd for client; [[br]] (2) Step 2: setup environment para-meters, such IP address, and numbers of clients…. It also provides cluster management and cluster [[br]] system transformation (diskfull or diskless system). The Figure 1 shows DRBL system architecture. [[br]] [[Image(Using DRBL on CPU Cluster.jpg)]] [[br]] Figure 1.Using DRBL on CPU Cluster [[br]] B. ONEMPI Architecture [[br]] ONEMPI is a software package, and it de-pends on DRBL to deploy PC cluster environment. We are just run the ONEMPI script which is [[br]] build a PC cluster quickly. We employ to combine DRBL with ONEMPI to build a message-passing interface system environment. At first [[br]] we need to install configuration the DRBL software which is easy to install on operating system. Then, we run the ONEMPI script by [[br]] using super user when the DRBL is installed on ours system. The two steps is finished, users can execute and compile mpi pro-gramming [[br]] on the system environment. The ONEMPI script is automatically produce the “mpd.hosts” on yours home directory, and the mpd.hosts is [[br]] to record all nodes hostname and Pro-cessor numbers. However, the ONEMPI is achievement to realize the complicate installation process. [[br]] However, users can use the instruction “mpdboot -n * -f mpd.hosts” on yours home direc-tory, and the * is node numbers. [[br]] The Figure 1 shows ONEMPI architecture, and the ONEMPI script has two significance files as follows: [[br]] (1) The “mpi_install.sh” script is configuration to install software package (g++, fort77, gcc, mpich2, etc.) in the system, and create [[br]] the “mpd.conf” file to ours home directory. [[br]] (2) The “drbl_mpi_patch” script is to adjust the DRBL software, including the public key, creating the mpd.hosts file and DRBL [[br]] redeploy clients, etc. [[br]] [[Image(ONEMPI design architecture.jpg)]] [[br]] Figure 2.ONEMPI design architecture [[br]] (3) We can run ONEMPI script file in the terminal command as follows: [[br]]  Step 1: sudo ./install [[br]]  (default : /opt/drbl-mpi) [[br]]  Step 2: cd /opt/drbl-mpi/ [[br]]  Step 3: sudo ./drbl_mpi.sh [[br]] C. System Environment Architecture [[br]] Table 1 shows the software packages about the diskless cluster. There are one server node and two client nodes in our system environment. [[br]] Server and clients have one Intel 2 Quad CPU Quad CPU Q9550 @ 2.83GHz and 8 Gbytes of memory. Ours system is Ubuntu 10.10 version. [[br]] [[Image(Hardware specifications and Software list.jpg)]] [[br]] Table 1.Hardware specifications and Software list [[br]] IV. Performance Results [[br]] We run one example within the LAMMPS software and obtain numerical the results. However, we use MPICH2 in the computing processes. [[br]] The crack propagation is one of LAMMPS software which uses in our environment system and to eva-luate the system performance. The example [[br]] 1 of crack propagation is two-dimensional crack problem and using the Lennard-Jones potential to crack propagation simulation. The example [[br]] 1 of crack parameter is following as: [[br]] Total timestep is 5000, number of atoms are 8141, the lattice constant is 0.93 Ǻ, the geometry is hexagonal lattices, the region is box [[br]] block and the length is 100 Ǻ, width is 40 Ǻ, etc. We can use the instruct on terminal as follows, [[br]] $mpirun -np 12 ~/lammps-29Jul11/src/lmp_g++ < in.crack. The figure 3 shows run the programming process and using 12 processes for crack problem. [[br]] [[Image(lammps.jpg)]] [[br]] Figure 3. The result of crack problem [[br]] The crack problem of total time is 384 second, communicate time is 176 second, output time is 24 second and other time is 73 times. [[br]] V. Discussion and Conclusion [[br]] From our experimentation, we prove that the DRBL-ONEMPI is a great tool to help our dep-loyment environment system, and the system is convenient. [[br]] However, the DRBL has high network loading, owing to the bottleneck of high throughput I/O data communication and over-head, the DRBL architecture [[br]] is not suitable for I/O intensive applications. On the other hand, it brings a great benefit to those CPU intensive ap-plications with RAM disk. [[br]] The DRBL cluster is more and more popular because it is free software and the capability of powerful deployment. We can easy to build up a PC [[br]] high-performance dis-kless Linux cluster [8]. [[br]] REFERENCE [[br]] [1] Sandia National Labs, “LAMMPS Molecular Dynamics Simulator”, http://lammps.sandia.gov [[br]] [2] Argonne National Lab, “MPICH2”, http://phase.hpcc.jp/mirrors/mpi/mpich2/index.htm [[br]] [3] National Center for High-Performance Computing, Taiwan, “DRBL(Diskless Re-mote Boot in Linux)”, http://drbl.sourceforge.net/ [[br]] [4] Che- Yuan Tu ,wen-Chieh Kuo, Yao-Tsung Wang, Steven Shiau, “Building Energy Effi-cient ClassCloud using DRBL”, 10th IEEE/ACM International [[br]] Conference Grid Computing, 2009. [[br]] [5] Che-Yuan Tu, Wen-Chieh Kuo, Wei-Hua Teng, Yao-Tsung Wang, Steven Shiau, “A Power-Aware Cloud Architecture with Smart Metering”, 39th [[br]] International Conference on Parallel Processing Workshops, 2010. [[br]] [6] W. C. Kuo, C. Y. Tu, Y. T. Wang, “Deploy Kerrighed SSI Massively Using DRBL”, High Performance Computing and Grid, Asia, 2009. [[br]] [7] J. H. Shiau, Y. Hu, T. L. Lin , and K. L. Huang, “IMPLEMENT THE PIC-MCC SI-MULATION OF ECR PLASMA SOURCE ON PC CLUSTER WITH DRBL, AN EF-FECTIVE [[br]] APPROACH TO INTEGRATE PC CLUSTER”, Cellular Neural Networks and Their Applications, 2005 9th Internation-al Workshop on 28-30 May 2005 Page(s):311-314. [[br]] [8] Chao-Tung Yang; Ping-I Chen; Ya-Ling Chen, “Performance Evaluation of SLIM and DRBL Diskless PC Clusters on Fedora Core 3”, Parallel and Distributed [[br]]Computing, Ap-plications and Technologies, 2005. PDCAT 2005. Sixth International Conference on 05-08 Dec. 2005 Page(s):479-482. [[br]]