Wednesday, December 15, 2010

Useful Information on R

R is a free software environment for statistical computing and graphics. It compiles and runs on a wide variety of UNIX platforms, Windows and MacOS.

  1. R CRAN Mirror
  2. R Installation and Administration
Some useful package management instructions
  1. R CMD INSTALL -l /path/to/library pkg1 pkg2 ...
  2. R CMD REMOVE -l /path/to/library pkg1 pkg2 ...

  3. R CMD check -l libdir --install=check:pkgname.log pkgname
For more information, see 6 Add-on packages

Tuesday, December 14, 2010

More understanding of ulimit

Adding on to blog entries Checking that the ulimit is correct when login as ssh

The stack is nothing but a memory storage which is used by programs to hold intermediate results and subroutine return information. The default size of stack is 10240 KB. You may check it by executing "ulimit -a" command.

The stack reclaim the memory when a process exits. If you allocate more memory in stack, but the memory is not available then it may crash due to stack overflow.


If the stack size is set to too small value and this is not enough for a program then it will fail.

Monday, December 13, 2010

ERROR unable to connect to '/var/run/libvirt/libvirt-sock': Connection refused

Please ensure all these steps are done first. We can then isolate the error more accurately. The 1st few steps are taken from HowtoForge Virtualization With KVM On A CentOS 5.2 Server



Step 1: Checking the Virtualisation Technology on AMD and Intel

Step 2: Install KVM and virtinst
# yum install  kvm kmod-kvm qemu libvirt python-virtinst
Step 3: Reboot the System
# shutdown -r now
Step 4: Check that the KVM kernel Module is loaded
# lsmod grep kvm

kvm_intel     50452      0
kvm           109264     1 kvm_intel
(If you use Intel VT CPU, you should see the above, if you are using AMD-V processor, you should see kvm_amd)

When installing KVM and its related components on CentOS 5.x , you might encounter the error when you type the command "# virt-install"
ERROR unable to connect to '/var/run/libvirt/libvirt-sock': Connection refused
Traceback (most recent call last):
   File "/usr/sbin/virt-install", line 889, in ?
      main()
   File "/usr/sbin/virt-install", line 628, in main
      conn = cli.getConnection(options.connect)
   File "/usr/lib/python2.4/site-packages/virtinst/cli.py", line 126, in getConnction
      conn = libvirt.open(connect)
   File "/usr/lib64/python2.4/site-packages/libvirt.py", line 159, in open
     if ret is None:raise libvirtError('virConnectOpen() failed')
libvirtError: unable to connect to '/var/run/libvirt/libvirt-sock': Connection refused
To solve this, edit /etc/libvirt/libvirtd.conf and
# vim /etc/libvirt/libvirtd.conf
uncommented out the listen_tls = 0 line
listen_tls = 0
Start the libvirtd Daemon
# service libvirtd start

You should able to eliminate the error

Thursday, December 9, 2010

MOAB and storing of statistics with ODBC

This documentation ias a useful "How-To" to show how to set up and configure Moab to connect to a MySQL database using the MySQL ODBC driver.

For more information, do look at MOAB Workload Manager, 22.2 ODBC

Wednesday, December 8, 2010

Checking the Virtualisation Technology on AMD and Intel

You may want to check whether your hardware supports Virtualisation for Intel and AMD chipsets.

# egrep "flags.*:.*(svm|vmx)" /proc/cpuinfo

If there is output, your hardware supports virtualisation.

Other related Topics includes
  1. Determining if Intel Virtualization Technology or AMD Virtualization is enabled in the BIOS without rebooting
  2. Detecting Intel VT and AMD-V 

Tuesday, December 7, 2010

Dynamic server provisioning with xCAT and TORQUE

I have found a good article "Dynamic server provisioning with xCAT and TORQUE" from IBM Developers Network > Open Source > Technical Library
"This article describes a solution for building a dynamically provisioned high-performance computing (HPC) cluster system using the Extreme Cloud Administration Toolkit (xCAT) and Tera-scale Open-source Resource and QUEue Manager (TORQUE) open source packages. The xCAT is a leading solution for dynamically provisioning compute, storage, and network resources. TORQUE is a workload and resource-management system that manages batch jobs and compute nodes and schedules the execution of those jobs."


Monday, December 6, 2010

Getting Yum to install from selected repository only

Working from Using Yum to local install without checking Repository, you can use the same principle to install from selected repository while disabling the rest.

# yum --disablerepo=* --enablerepo=dag install (packages)
where dag and update are repositories. If you are not sure the repository names to use, go to /etc/yum.repos.d/xxx.repo. The first line [.....] is the repository names

Saturday, December 4, 2010

Interesting Whitepaper - "Achieving MPI Performance with Fabrics Collectives Offload"

This white paper "Achieving MPI Performance with Fabrics Collectives Offload" written by Voltaire scientist namely Avid Cohen, Yiftah Sharhar, Yaron Haviv and Asaf Wachtel is really a good reading for those who are trying to figure out how to improve MPI from a fabric point of view.

Happy reading.

Wednesday, December 1, 2010

IBM Redbook - Configuration and Tuning GPFS for Digital Media Environments

An Interesing Red-Book named "Configuration and Tuning GPFS for Digital Media Environments "especially if you , abeit a long thick e-book with 272 pages.

Happy Reading!

Monday, November 29, 2010

Troubleshooting Gaussian Calculation


For installing Gaussian TCP Linda, you may want to take a look  UNIX Binary Gaussian 09 Revision A.02 Installation instructions which has been updated recently.

"Troubleshooting Gaussian calculations" is a good resource that helps explain some of the errors and issues faced when running Gaussian.

Friday, November 26, 2010

Optimizing OpenFOAM Productivity in Clusters - Article from Desktop Engineering



This is an interesting article from Desktop Engineering "Optimizing OpenFOAM Productivity in Clusters". This article explore the performance gained when the HPC system is configured properly, there is a lot of productivity and gain in performance.

Thursday, November 25, 2010

Encountering Unauthorised Request for Qmgr command

Taken from the Torque Users Group http://www.clusterresources.com/pipermail/torqueusers/2006-March/003408.html


If you encounter "qmgr obj=que svr=default: Unauthorized Request" whenever you type the qmgr command, it is due to /var/spool/pbs/server_name not in sync with the name associated with eth0. To mitigate the problem,
  1. server_name must match the first no-localhost name in /etc/hosts
  2. You can check your hostname on your Linux Box, by typing hostname

Wednesday, November 24, 2010

Quick way to update user information for fingering

You can use the usermod command to update comments field or "Name" field

# usermod -c "User1 Name" user1

Alternatively, you can edit directly at the /etc/passwd 5th column
user1:x:524:100:User1 Name:/home/user1:/bin/bash

You can verify by fingering
# finger user1

Tuesday, November 23, 2010

Default ulimit setting in torque overide ulimit setting

Even though you may have setup the ulimit correctly as suggested by Blog entry "Checking that the ulimit is correct when login as ssh", your job may still encounter the error is you are using torque resource manager.
This is because the default setting in /etc/init.d/pbs_mom is set too low and overide the ulimit setting, the default setting at /etc/init.d/pbs_mom should be changed to

ulimit -l unlimited
ulimit -c unlimited
ulimit -n 32768
#ulimit -n 20000
#ulimit -i 20000

Checking that the ulimit is correct when login as ssh

To check that whether your ulimit work properly when you ssh, you should use the below command. To set ulimit, you may want to check on blog entry Encountering Segmentation Fault, Bus Error or No output
$ ssh node00 ulimit -l

To check that ulimits is set correctly for your mpirun

$ mpirun -np 8 bash -c ulimit -l

The 2 commands output should be similar.

Monday, November 22, 2010

Green Revolution Cooling (www.grcooling.com)



AT SC10, I saw quite a unique and disruptive solution for cooling HPC stuff. It won SC 2009 disruptive technology of the year.




Green Revolution (GR) Cooling method of cooling datacentre is very revolutionary and innovative. According to Green Revolution Cooling, datacentre are cooled by submerging servers in dielectric fluid coolant (GreenDEF coolant).

According to its website, GR Cooling is the first to develop a complete rack and server rack solution using this method at a feasible up-front costs and high performance.


For more information, read the GR Cooling website.

Monday, November 15, 2010

Undergraduate Petascale Education Program

Petascale Education Program seeks to promote understanding and petascale computing among undergraduate and faculty. On the site, you can fund useful materials, undergraduate petascale modules etc....

Bootable Cluster CD

Bootable Cluster CD......Cluster in your pocket....
The BCCD was created to facilitate instruction of parallel computing aspects and paradigms......The BCCD image addresses this problem by providing a non-destructive overlay way to run a full-fledged parallel computing environment on just about any workstation-class system.....
Take a look

Sunday, November 14, 2010

Defunct but useful ClusterWorld Magazine


ClusterWorld Magazine, now defunct as it merge with Linux Magazine. The last edition is June 2005. But nonetheless, it has interesting information on MPI which is still applicable today.

Wednesday, November 10, 2010

Open CL Programming Webinar Series

This is a series of webinars where AMD experts discuss and answer questions about data parallel computing on GPU leveraging on the OpenCL(tm) architecture. These webinars will include beginning and advanced tracks offered at varying times

  1. OpenCL Programming Webinar Series (http://developer.amd.com/) OR
  2. OpenCL Programming Webinar Series (http://www.eventsvc.com/)

Saturday, November 6, 2010

Graph Editor for Open-Source Computer Algebra System Sage

Graph editor part of the open-source computer algebra system Sage. Will need HTML 5

Friday, November 5, 2010

Installing lammps using Intel Compilers, OpenMPI and FFTW (Update)

This is an update of  Blog Entry Installing lammps using Intel Compilers, OpenMPI and FFTW

The steps are still relevant and workable, but if you are doing a lot of customisation pathing or you just simply wish to tweak the parameters in the configuration file, here is my sample script. I got my information from the Message threads of LAMMPS http://lammps.sandia.gov/threads/msg12768.html

Here are my settings, amending the $SOURCE/lammps-30Mar10/src/MAKE/Makefile.Linux

# linux = RedHat Linux box, Intel icc, MPICH2, FFTW

SHELL = /bin/sh
# ---------------------------------------------------------------------
# compiler/linker settings
# specify flags and libraries needed for your compiler

CC = mpicc
CCFLAGS = -g -O -I/usr/local/fftw/include -DFFT_FFTW
DEPFLAGS = -M
LINK = mpicc
LINKFLAGS = -O
USRLIB = -lfftw -lmpi
LIB = -lstdc++ -lpthread
ARCHIVE = ar
ARFLAGS = -rc
SIZE = size

# ---------------------------------------------------------------------

# LAMMPS-specific settings
# specify settings for LAMMPS features you will use
# LAMMPS ifdef options, see doc/Section_start.html

LMP_INC = -DLAMMPS_GZIP
# MPI library, can be src/STUBS dummy lib
# INC = path for mpi.h, MPI compiler settings
# PATH = path for MPI library
# LIB = name of MPI library:wq

MPI_INC = -DMPICH_IGNORE_CXX_SEEK
MPI_PATH = -L/usr/mpi/intel/lib # where I store my openmpi binary and lib
MPI_LIB = -lmpi -lpthread

# FFT library, can be -DFFT_NONE if not using PPPM from KSPACE package
# INC = -DFFT_FFTW, -DFFT_INTEL, -DFFT_NONE, etc, FFT compiler settings
# PATH = path for FFT library
# LIB = name of FFT library

FFT_INC = -DFFT_FFTW
FFT_PATH = -L/usr/local/fftw/lib # I've put my fftw at /usr/local/fftw
FFT_LIB = -lfftw

.............

You can add further flags at CCFLAGS. See my other blog entry
  1. Understanding -DOMPI_SKIP_MPICXX Flag for compiler/linker settings
  2. Understanding -DOMPI_IGNORE_CXX_SEEK Flag for compiler/linker settings

Thursday, November 4, 2010

Copy to remote machines with symbolic links intact

If you are copying directories with hard links and symbolic links to another remote servers intact. Once of the best method is to use rsync
# rsync -lH -rva gromacs remote_server:/usr/local
where l - copy symlinks as symlinks, H - preserve hard links, r - recursive, v - verbose, a - archive

Wednesday, November 3, 2010

Compiling Infiniband or OpenIB with OpenMPI and Intel Compilers on CentOS

Building on the Blog Entry "Useful Information to Compile Infinifband with OpenMPI", here is a more detailed writeup

I'm assuming you have compiled the Intel Compilers and Unzip the OpenMPI Package. Some of these information can be found on simple Ethernet-based Building OpenMPI with Intel Compiler (Ver 2) .
Don't configure and make yet for the OpenMPI Package.


Firstly to compile with OpenIB support,
#./configure --prefix=/usr/mpi/intel/ \ 
CC=icc CXX=icpc F77=ifort FC=ifort \
--with-openib \ 
--with-openib-libdir=/usr/lib64/

# make all install 

To test whether you have compiled and installed correctly, you can run the "ompi_info" command and look for components for your networks.
# ompi_info | grep openib
You should get something like this depending on your component
MCA btl: openib (MCA v2.0, API v2.0, Component v1.4.1)

You are in good shape.

For more information, see OpenMPI, see
  1. 26. How do I build Open MPI with support for Open IB (Infiniband), mVAPI (Infiniband), GM (Myrinet), and/or MX (Myrinet)?

Tuesday, November 2, 2010

Understanding -DOMPI_SKIP_MPICXX Flag for compiler/linker settings

When I was compiling LAMMPS, I come across this Flag when preparing the compiler/linker settings
CCFLAGS =       -g -O -I/usr/local/fftw/include -DFFT_FFTW -DOMPI_SKIP_MPICXX -DOMPI_IGNORE_CXX_SEEK

What do -DFFT_FFTW -DOMPI_SKIP_MPICXX really mean? The answer is nicely given Rolf Vandevaart "Speeding Up C++ Compiles"

In a summary, from the blog
The issue is that if you are compiling C++ code, but you are not using the C++ bindings, the code can be slow to compile.  The workaround is to use the -DOMPI_SKIP_MPICXX flag which tells MPI not to include the C++ header files
And here are the results.  Not quite a 50% speedup, but close

Monday, November 1, 2010

Understanding -DOMPI_IGNORE_CXX_SEEK Flag for compiler/linker settings

When I was compiling LAMMPS, I come across this Flag when preparing the compiler/linker settings


CCFLAGS =  -g -O -I/usr/local/fftw/include -DFFT_FFTW -DOMPI_SKIP_MPICXX -DOMPI_IGNORE_CXX_SEEK
 
What do -DOMPI_IGNORE_CXX_SEEK really seek to solve. It happens on openmpi-1.2 with Intel. This is due to BOTH stdio.h and the MPI C++ interface use SEEK_SET, SEEK_CUR, SEEK_END.
 
For more inforamtion. see this FAQs from NCSA
 I got an error message: SEEK_SET is #defined but must not be for the C++ binding of MPI. What does that mean?

Sunday, October 31, 2010

Bug in Gaussian 09 revision A.02

There is a bug in Gaussian09 revision A.02, which makes the single electron integral very slow, sometimes even fail. Our scientist has verified this. To solve this issue, Upgrade to Gaussian 09 to B.01.

Friday, October 29, 2010

Encountering State Initializing after installing Voltaire Drivers

First thing first,

For more information on downloading the appropriate Voltaire Drivers, see blog entry Download Voltaire OFED Drivers for CentOS. After you have downloaded the appropriate and install Voltaire Drivers, you may encounter something like:

CA 'mlx4_0'
        CA type: MT26428
        Number of ports: 1
        Firmware version: 2.6.0
        Hardware version: a0
        Node GUID: 0x0008f1476328oaf0
        System image GUID: 0x0008fd6478a5af3
        Port 1:
                State: Initializing
                Physical state: LinkUp
                Rate: 40
                Base lid: 2
                LMC: 0
                SM lid: 14
                Capability mask: 0x0251086a
                Port GUID: 0x0008f103467a5af1

It is due to the Subnet Manager (opensm) not being installed. Voltaire OFED Installation package installed only the OpenIB Packages. Even if you have install the opensm before installing the Voltaire OFED Package, the Voltaire OFED Package will uninstall the existing opensm packages to ensure openib packages are fully compatible.

To install the Opensm packages nicely, do read on the blog entry Installing Voltaire QDR Infiniband Drivers for CentOS 5.4

Other good reasing materials:
  1. RHEL and Infiniband - basic diagnostics

Thursday, October 28, 2010

Installing Voltaire QDR Infiniband Drivers for CentOS 5.4

This blog writeup Installing Voltaire QDR Infiniband Drivers for CentOS 5.4 (linuxcluster.wordpress.com) is on how you can
  1. Download the drivers from the Voltaire Website
  2. Install the Infiniband Drivers
  3. Install the Subnet Manager - opensmd
  4. Test the State is "Active"
  5. Connectivity Test between Server and Client
For more information, on Voltaire Infiniband installation, do read on
  1. Voltaire OFED 1.5 User Manual
  2. Infiniband HOWTO by Guy Coates

Tuesday, October 26, 2010

Download Voltaire OFED Drivers for CentOS

Here is the FTP site for downloading Voltaire OFED Drivers Listing. The latest drivers for CentOS is for CentOS 5.4
http://www.voltaire.com/ftp/versions/current/Software/Server_Products/VoltaireOFED-Linux/1.5/

Sunday, October 24, 2010

BashGuide Wiki

BashGuide Wiki by Greg is an excellent material for beginner. According to the wiki which is still work-in-progress
This guide aims to become a starting point for people interested in learning to work with BASH. It aspires to teach its readers good practice techniques for developing scripts for the BASH interpreter, and to educate them about the internal operation of BASH......
To read it.

Saturday, October 23, 2010

Making Disc Images using mkisofs

I've got this tip from Linux Format Edition 137. Very useful indeed.

mkisofs is a wonderful utility to generate ISO images. To generate a compatible ISO images on a disc which are readable everywhere, consider the following commands

$ mkisofs -rdlJ -o disc_directory_image.iso directory/
  1. -r : "Rock Ridge" format is enabled to allow long filenames on UNIX systems
  2. -J : allow long filenames on Windows Systems
  3. -l : Allow full 31-character filenames.
  4. -d : Do not append a period to files that do not have one which violate ISO9660

Friday, October 22, 2010

Using Yum Provides

This is a continuation of Using Yum effectively (Part 1) and Using Yum effectively (Part 2)

I have learned a cool command line "yum provides". "yum provides" help you search for the packages that will install either a file or directory. For example

# yum provides bash

bash-3.2-24.el5.x86_64 : The GNU Bourne Again shell (bash) version 3.2
Repo : base
Matched from:

bash-3.2-24.el5.x86_64 : The GNU Bourne Again shell (bash) version 3.1.
Repo : installed
Matched from:
Other : Provides-match: bash

Thursday, October 21, 2010

Linux Advice Site

Unix and Linux is a collaboratively edited question and answer site for people who love Unix and Linux. No registration is required. Quite an interesting site especially when the site stack have 95% of questions answered

Wednesday, October 20, 2010

CPLEX Installation with Python on CentOS

Following up on this blog entry Free Full version of ILOG Optimization products via IBM's Academic Initiative Program

1. After getting the necessary software and license from IBM Academic Initiative, you should install the CPLEX binary

# ./cplex_studio122.acad.linux-x86.bin

2. For the license file, make use your license file name is "access.ilm" (without the quotation)

3. Create a folder to house the license. CPLEX needs this folder to be present
# mkdir -p /usr/ilog/ilm
# mv access.ilm /usr/ilog/ilm

4. You should be able to run your CPLEX now. To verify, go to the CPLEX binary folder and run it. In my case
# /usr/local/cplex_studio_122/cplex/bin/x86-64_sles10.4.1/cplex

5. To install the Python API of CPLEX, do read up on IBM iLOG Optimization Studio Documentation
# cd /usr/local/cplex_studio_122/cplex/python/x86-64_sles10_4.1/
# python setup.py install --home ./cplex/

You will need to add the path to your PYTHONPATH by running
export PYTHONPATH=$PYTHONPATH:/usr/local/cplex_studio_v12/cplex/python/x86-64_sles10_4.1

Tuesday, October 19, 2010

ChameleonOS Alpha Changeable Skins for Linux

ChameleonOS is a light-weight linux operating system with changeable skins that mimics other Operating Systems including MS and Mac-OS X. ChameleonOS is based on Unity Linux RC2.

Quite neat.

Wednesday, October 6, 2010

Changing a Partition Label on Linux

If you need to re-label a partition, you can use the command e2label

Firstly to display the label of a partition
# e2label /dev/sda1

To change the label of a partition
# e2label /dev/sda1 data

Remember to update the partition label at /etc/fstab file

Tuesday, October 5, 2010

Loading Mod_Python on Apache 2.x on CentOS 4.x and CentOS 5.x

Loading Python on Apache is easy. The material is taken from Mod Python ArchLinux Wiki

Configure Apache
# vim /etc/httpd/conf/httpd.conf

LoadModule python_module modules/mod_python.so

Restart Apache
# service restart httpd

Test Mod_Python
1. Add this block to /etc/httpd/conf/httpd.conf
<Directory /home/www/html> 
   AddHandler mod_python .py
   PythonHandler mod_python.publisher 
   PythonDebug On 
</Directory>

2. Create a file in /home/www/html/ called mptest.py and add this as contents

from mod_python import apache
def handler(req):
req.content_type = 'text/plain'
req.send_http_header()
req.write("Hello World!")
return apache.OK

Restart Apache again
# service restart httpd

Navigate to http://www.yoursite.com/mphandler.py/handler and you should see a site that says
Hello World!

Monday, October 4, 2010

Unzipping file with bz2 extension

If you encounter files that is compressed with bz2 only, use the following commands
$ bunzip2 file.bz2


If however, you encounter files that is compressed with .tar.bz2, use the following commands
$ tar -xvjpf file.bz2

Sunday, October 3, 2010

Installing HandBrake on Fedora 13

Handbrake is an open-source, GPL-licensed, multiplatform, multithreaded video transcoder, available for MacOS X, Linux and Windows.

Installation is straight-forward and much of this material is taken from Compiling HandBrake on Linux

Install the following packages
# yum groupinstall "Development Tools" "Development Libraries" \
"X Software Development" "GNOME Software Development"

# yum install yasm zlib-devel bzip2-devel \
dbus-glib-devel libgudev1-devel webkitgtk-devel libnotify-devel \
gstreamer-devel gstreamer-plugins-base-devel

More Information
  1. HandBrake Wiki
  2. HandBrake Wiki FAQs
  3. HandBrake Site
Another Useful DVD-Backup or DVD-ripping tool is Thoggen. For more information, see Installing Thoggen on Fedora 11

Thursday, September 30, 2010

Configuring SSH to use Protocol 2 or SSHv2 in CentOS

To disable SSHv1 or SSH Protocol 1, do the following:

Check for Protocol configuration
# cat /etc/ssh/sshd_config |grep Protocol

Ensure that you should get only Protocol 2
Protocol 2

If not, Edit the /etc/ssh/sshd_config to reflect only Protocol 2
# vim /etc/ssh/sshd_config
Search for the word Protocol and make the necessary changes.

Restart OpeenSSH Server
# service sshd restart

Tuesday, September 28, 2010

Unable to clear the offline mode for Compute node using pbsnodes command

If you try to make a node online after you deliberately off-line the node perhaps for some repair work and unable to online again. Instead on your Torque Server,  you see errors such as these

PBS_Server: LOG_ERROR::is_request, bad attempt to connect from
192.168.1.1:1023 (address not trusted - check entry in server_priv/nodes

As the log says, there is some issue in the server_priv configuration. If all your nodes are working well except that, you should take a look at the client settings. Maybe your server_priv has the wrong configration.

Once you have cleared the error, just fire off the command
# pbsnodes -c node_name

Monday, September 27, 2010

Donate unused Computer Cycles to World Community Grid

You can join the World Community Grid (WCG) and donate your unused computer cycles and support innovative humanitarian research being conducted all over the world. WCG is a community of over 600,000 people and 1.4 million machines and is the world's largest, free, volunteer super-computer dedicated solely to addressing global medical and scientific issues.

Free Technical Resources at IBM Student Portal

No-charge technical resources are available for students at IBM Student Portal. You can access software downloads and eBooks to learn about leading technologies.

Sunday, September 26, 2010

Installing lapack, blas and atlas on CentOS 5

Installing lapack, blas and atlas on CentOS 5.4 is very simple.Firstly you must enable the follow repositories:

  1. atlas package - EPEL (For more information on how to download EPEL, see Red Hat Enterprise Linux / CentOS Linux Enable EPEL Repository
  2. blas and lapack packages - RPMForge (For more information on how to download RPMForge, See Install RPMForge
Installing atlas, blas and lapack x86_64 packages
# yum install atlas.x86_64 blas.x86_64 lapack.x86_64

Saturday, September 25, 2010

Installing GNU Compilers for CentOS 4.x

If you are installing GNU compilers from yum for CentOS 4.x, here is the yum command to achieve it

GNU Compilers for 3.x (C, C++, Fortran 77, Java)
# yum install gcc, gcc-c++, gcc-g77, gcc-java

GNU Compilers for 4.x (C, C++, Fortran 77, Java)
# yum install gcc4, gcc4-c++, gcc4-gfortran, gcc4-java
Or
#yum install gcc4*

Thursday, September 23, 2010

Resolving Warning Remote Identification has changed!

If you encounter the following error, this can be easily resolve....

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the RSA host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx.
Please contact your system administrator.
Add correct host key in /root/.ssh/known_hosts to get rid of this message.
Offending key in /root/.ssh/known_hosts:6
Password authentication is disabled to avoid man-in-the-middle attacks.
Keyboard-interactive authentication is disabled to avoid man-in-the-middle attacks.
Permission denied (publickey,gssapi-with-mic,password).

You can do a quick fix. In my case, I just simply edit the known_hosts file
# vim /root/.ssh/known_hosts
Search for the remote host that is having the issue. In this case (myserver.com)
:/myserver.com
Delete the "offending" line
:dd
Save the file known_hosts
:wq

Done!

Managing F5 LTM TCP Profile Idle Timeout Settings

For those running Remote Desktop Protocol and facing idle timeout problems, may want to take a look at the Article "Investigating the LTM TCP Profile: Max Syn Retransmissions & Idle Timeout". The default 300 seconds is good enough for most application, but for applications with long-lived connections like remote desktop protocol, the settings should be tweaked to a larger figures or configure to "indefinite"

Wednesday, September 22, 2010

Unable to update glibc for CentOS 4.x

I was trying to update glibc package on my old CentOS 4.x Server, but I seem to encounter errors such as these and unable to

Error: Unable to satisfy dependencies
Error: Package glibc-devel needs glibc = 2.3.4-2.43.el4_8.2, this is not available.
Error: Package glibc-devel needs glibc-headers = 2.3.4-2.43.el4_8.2, this is not available.

To allow the smooth update of glibc package first,
# yum remove glibc-devel glibc-headers glibc-kernheaders

Then finally update the glibc packages
# yum install glibc*

I've got the materials for this blog entry from Bug 6018 - Missing dependency in glibc packages yum not updating

Tuesday, September 21, 2010

Hangs at "UEFI platform initialization" for IBM BladeCenter HS22

Taken from IBM  at "UEFI platform initialization" after backflash - IBM BladeCenter HS22"

After a series of reset and reboot, one of my HS22 suffered a hang at UEFI platform initialization and cannot boot into the OS. Looked around for solution.

Source:
After flashing blade Unified Extensible Firmware Interface (UEFI) from version 1.07 (build 46A) to any earlier version, the blade hangs in Power On Self Test (POST) during the next reboot. The following message is displayed at the top of the screen "UEFI Platform Initialization"

Immediate Workaround:
If the blade is in the hung condition, then it can be recovered by removing the system board battery to reset the blade settings to default.

Complete the following steps:
  1. Remove the blade from the chassis.
  2. Remove the system board battery.
  3. Wait 30 seconds and reinstall the battery.
  4. Reinstall the blade and power on.
  5. Last but not least, please take a good look at the BIOS and reconfigure your BIOS serttings if necessary.

Solution:
Download the fixes patches from IBM Fix Central Site

Have tried it work...

Monday, September 20, 2010

Mount an ISO File in Linux

You do not need to burn an ISO file into a CD before you can use it for its intended purposes. A simple command like this can allow you to see and execute the content in the ISO file

$ mount -o loop -t iso9660 myISO.iso /mnt/mount/point

Sunday, September 19, 2010

Uninstalling Nouveau driver and Installing NVIDIA Drivers on Fedora 13

I was trying to install the proprietary NVIDIA Driver for my workstation with Fedora 13, but was unable to install due to the presence of Nouveau Driver which Fedora installed by default and this installation by Fedora caused a conflict with the intended installation of NVIDIA Driver

Source for this information is derived from a Forum http://www.linuxquestions.org/questions/fedora-35/fedora-12-nouveau-nvidia-driver-solution-771248/

Step 1: Blacklist Nouveau Driver
# vim /etc/modprobe.d/blacklist.conf
Add the below line to the end of /etc/modprobe.d/blacklist.conf
blacklist nouveau

Step 2: Edit /boot/grub/grub.conf and add the following to the end of the kernel line
rdblacklist=nouveau vga=31B
Replace 31B with the desired mode:
1600x1200 - 346
1280x1024 - 31B
1400x1050 - 348
1024x768 - 318
800x600 - 315

For example:
......
kernel /vmlinuz-2.6.34.6-54.fc13.i686 ro 
root=/dev/mapper/vg_kittycool-lv_root rd_LVM_LV=vg_kittycool/lv_root rd_LVM_LV=vg_kittycool/lv_swap 
rd_NO_LUKS rd_NO_MD rd_NO_DM 
LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 
KEYBOARDTYPE=pc KEYTABLE=us rhgb quiet rdblacklist=nouveau vga=31B
......

Step 3: Download and Install NVIDIA Drivers
# chmod 755 NVIDIA......run

# ./NVIDIA......run

# reboot

Monday, September 13, 2010

Chelsio iWARP Installation and Setup Guide for CentOS 5.4

Most of this material for this blog entry is taken the documentation Guide named Chelsio iWARP installation and setup guide (pdf) . The Blog Entry ”Chelsio iWARP Installation and Setup Guide for CentOS 5.4” (Linux Cluster) is an modification from a user’s perspective of the original document from Chelsio.

Sunday, September 12, 2010

Chelsio iWARP Drivers compatibility with Chelsio Linux drivers

The documentation is extracted from Chelsio iWARP Installation and Setup Guide and is formatted on my blog  Chelsio iWARP Drivers compatibility with Chelsio Linux drivers (Linux Cluster)

Here is a listing for the latest OFED to the latest Chelsio Drivers and Firmware


OFED Package Cxgb3toe-W.X.YY.ZZZ driver Firmware Supported/Not Supported/Not Tested
OFED-1.5.1 Cxgb3toe-1.4.1.2 7.10.0 Not Supported
OFED-1.5.1 Cxgb3toe-1.4.1.2 7.8.0 Supported
OFED-1.5.1 Cxgb3toe-1.4.1.2 7.4.0 Not Supported

Wednesday, September 8, 2010

Installing Chelsio T3 10GE Driver on CentOS 5.4

Here the documentation on installing Chelsio Chelsio T3 10GE Driver on CentOS 5.4 (x86-64). For more information, see Installing Chelsio 10GE Driver on CentOS 5.4

Tuesday, September 7, 2010

Chelsio OEM-IBM Download

If you are using Chelsio OEM Driver for IBM Blade, X and P series, do go to  Chelsio OEM-IBM Download

The download page has some interesting articles
  1. Chelsio Cards & Cables Compatibility:-CX4 Adapters
    http://chelsio.com/assetlibrary/pdf/CableConfigs.pdf  
  2. IBM Redbooks
    Chelsio 10GbE Adapters for IBM System Cluster 1350 and IBM iDataPlex
    Chelsio 10 GbE Adapters for IBM Power Systems
  3. Chelsio Adapters driver Download, Installation, Configuration, troubleshooting, support
    http://service.chelsio.com/  
  4. IBM iDataplex and Cluster 1350 - Drivers, Firmware and Software (Red Hat 5.3
    http://www.ibm.com/   
  5. IBM Announcement Letter
    http://www.ibm.com/
  6. IBM system Cluster 1350 Information Center
    http://www.ibm.com/

Monday, September 6, 2010

Weka - Data Mining Software in Java

What is Weka?
Weka is a collection of machine learning algorithms for data mining tasks. The algorithms can either be applied directly to a dataset or called from your own Java code. Weka contains tools for data pre-processing, classification, regression, clustering, association rules, and visualization.
To download and install Weka, see Download and installing Weka

Saturday, September 4, 2010

Installing Sage From Source

Sage is a free open-source mathematics software system licensed under the GPL. It combines the power of many existing open-source packages into a common Python-based interface.
Software Prerequisites:
  1. gcc 4.x and above
  2. g++
  3. gfortran
  4. make
  5. m4
  6. perl
  7. ranlib
  8. tar
  9. readline and its development headers
  10. ssh-keygen -- needed to run the notebook in secure mode.
  11. latex -- highly recommended, though not strictly required

OS and hardware Prerequisites:
  1. 2 GB of free disk space 
  2. Linux (32 bits or 64-bits or IA64 or 32-bit PPC or MAC OS X) 

Steps to install Sage:
# tar xvf sage-x.y.z.tar
# cd sage-x.y.z
# make
# ./sage

Finally add the directory of SAGE to your Path Directory
export PATH=$PATH:/usr/local/sage-x.y.z/

For more detailed information on installation of SAGE, do look at the Steps to Install from Source

Thursday, September 2, 2010

Multi Configuration Time Dependent Hartree (MCTDH)

Multi Configuration Time Dependent Hartree (MCTDH). MCTDH is a general algorithm to solve the time-dependent Schrödinger equation for multidimensional dynamical systems consisting of distinguishable particles. MCTDH can thus determine the quantal motion of the nuclei of a molecular system evolving on one or several coupled electronic potential energy surfaces. MCTDH by its very nature is an approximate method. However, it can be made as accurate as any competing method, but its numerical efficiency deteriorates with growing accuracy.
Do note that for interested researchers, the MCTDH package is distributed on request to interested researchers. If you want to work with MCTDH, please send an e-mail to Hans-Dieter.Meyer at pci.uni-heidelberg.de

The User and Developer Manuals are comprehensive. In particular, the Installation and Compilation straightforward with steps to guide you along....

Wednesday, September 1, 2010

Deploying the MIT Photonic-Bands (MPB) package

The MIT Photonic-Bands (MPB) package is a free program for computing the band structures (dispersion relations) and electromagnetic modes of periodic dielectric structures, on both serial and parallel computers.


MPB Information:
  1. MPB Download Page
  2. MPB Installation Guide

Software Requisites:
  1. Basic linear Algebra Subroutines (BLAS). For more information on BLAS installation, see the Section on BLAS
  2. Linear Algebra PACKage (LAPACK). For more information see the Section on LAPACK
  3. FFTW For more information see my Blog Entry Installing FFTW
  4. HDF (Hierarchical Data Format)
  5. GNU Guile. Guile is a library designed to help programmers create flexible applications. Using Guile in an application allows programmers to write plug-ins, or modules
  6. libctl is a free Guile-based library implementing flexible control files for scientific simulations. 
Sample Installation of prerequisites using F77 - GNU Fortran:
# f77=gfortran CFLAGS="-I/usr/local/fftw-mpi-2.1.5/gnu/include -I/usr/local/hdf5-1.8.5/gnu/include" 
CPPFLAGS="-I/usr/local/fftw-mpi-2.1.5/gnu/include -I/usr/local/hdf5-1.8.5/gnu/include -DH5_USE_16_API=1" 
LDFLAGS="-L/usr/local/fftw-mpi-2.1.5/gnu/lib -L/usr/local/hdf5-1.8.5/gnu/lib"


Finally the Installtion of MIT PB, for our installation, we use some of the settings
# ./configure --prefix=/usr/local/mpb-1.4.2 --with-mpi 
--with-blas=/usr/local/gotoblas2-unthreaded/libgoto2.a 
--with-lapack=/usr/local/octave/lib/octave-3.2.4/lapack_LINUX.a

Tuesday, August 31, 2010

Free Full version of ILOG Optimization products via IBM's Academic Initiative Program

Since 15th February 2010, , IBM is offering no-charge full-version ILOG Optimization products via IBM's Academic Initiative Program. The ILOG Optimization provides registered members with renewable one-year access to IBM ILOG OPL-CPLEX, CPLEX, CP Optimizer and CP for both teaching and research use.

Registered members can access and obtain ILOG Optimization software at: https://www.ibm.com/developerworks/university/software/get_software.html, where they can search for ILOG Optimization or individual solvers

To run the software, members will also need to download a key from: https://www.ibm.com/developerworks/university/support/ilog.html, but are no longer required to install ILM. Note that as part of Academic Initiative, IBM also makes its professionally-developed training materials available for use in classrooms and labs at: https://www14.software.ibm.com/webapp/devtool/scholar/web/coursewarePickPage.do?source=ai-course-websphere.

For ILOG support, you can go to IBM Academic Initiative Support for more information

Monday, August 30, 2010

Automatically load sessions with SSH

To run a program after the ssh, simply pass the program at the end of the ssh command
# ssh root@remote.server.com nano

To connect into a remote screen session, it is necessary to add the "-t" flag
# ssh -t root@remote.server.com screen -dr
According to the ssh man page, the "-t" flag force pseudo-tty allocation. This can be used to execute arbi-
trary screen-based programs on a remote machine.

For the screen command "screen -dr", it refers to reattaching a session and if necessary detach it first.

Very useful indeed

Sunday, August 29, 2010

Configuration of EtherChannel / Link aggregation with ESX

Taken and summarised from Vmware KB Article "Sample configuration of EtherChannel / Link aggregation with ESX and Cisco/HP switches". This KB article applies to Vmware products version 3.0.x to version 4.1.x


This article describes the sample configurations of configurations of link aggregation / NIC Teaming / LACP / Ether-Channel connectivity between ESX and Physical Network Switches.....

For more information, see Sample configuration of EtherChannel / Link aggregation with ESX

Friday, August 27, 2010

Wiping Data Permanently from the command line

Learned this from the Tip and Tricks from Linux For You Magazine August 2010 Edition

Do be careful when you fire this command as this will destroy all your data. You should use the utilities shred

# shred -v -n 2 -z /dev/sdc
where
-v: verbose
-n: number of passes of random data
-z: finishes cleaning with one pass of zero

Thursday, August 26, 2010

Sage - an Open Source Mathematics Software System

Sage is a free open-source mathematics software system licensed under the GPL. It combines the power of many existing open-source packages into a common Python-based interface.

Additional Documentation:
  1. Sage Tutorial
  2. Sage Installation Guide
  3. Sage FAQ
  4. Download for Linux

Wednesday, August 25, 2010

Smokescreen - Flash.... without plugin

What on earth is Smokescreen?
Smokescreen is a new open-source project aimed at converting Flash to JavaScript/HTML5 to run on devices that does not support adobe flash....

Smokescreen will soon be released for free under an open source license. So look out for more information.
Yes, do look at the Smokescreen Demo

Monday, August 23, 2010

Deploying Big-IP LTM with Microsoft Remote Desktop Services

If you are deploying vwith Microsoft Windows Server 2008 R2 Remote Desktop Services, you will find these articles useful for the deployment......


For more information, read my blog Deploying Big-IP LTM with Microsoft Remote Desktop Services

Friday, August 13, 2010

Connection activation failed Device not managed by NetworkManager

After a fresh installation of Fedora 13, I encountered "Connection activation failed Device not managed by Network Manager". I have no ethernet connection.

Just like all RH users, I did a
# service network restart

And I go this error
Shutting down interface eth0:  Error org.freedesktop.DBus.Error.ServiceUnknown:
The name com.redhat.ifcfgrh1 was not provided by any .service files
Error: Device 'eth0' (/org/freedesktop/NetworkManager/Devices/0) disconnecting
failed: Cannot disconnect an inactive device.
                                                           [FAILED]
Shutting down interface eth1:  Error org.freedesktop.DBus.Error.ServiceUnknown:
The name com.redhat.ifcfgrh1 was not provided by any .service files
Error: Device 'eth0' (/org/freedesktop/NetworkManager/Devices/0) disconnecting
failed: Cannot disconnect an inactive device.
                                                           [FAILED]
Shutting down loopback interface:  Error
org.freedesktop.DBus.Error.ServiceUnknown: The name com.redhat.ifcfgrh1 was not
provided by any .service files
Error org.freedesktop.DBus.Error.ServiceUnknown: The name com.redhat.ifcfgrh1
was not provided by any .service files
Error org.freedesktop.DBus.Error.ServiceUnknown: The name com.redhat.ifcfgrh1
was not provided by any .service files
Error org.freedesktop.DBus.Error.ServiceUnknown: The name com.redhat.ifcfgrh1
was not provided by any .service files
                                                           [  OK  ]
Bringing up loopback interface:  Error

It is only starting the Network Manager Manually, I got my ethernet connection
# /etc/init.d/NetworkManager start

For more information on this phenomenon, you can take a look at Bug 583113 - Error while starting network service soon after fresh installation  

Wednesday, August 11, 2010

Detecting Intel VT and AMD-V

Here is a simple and useful short writeup on how to Detect Intel VT and AMD-V and enabling it to ensure you can have the virtualisation extension for your Hyper-V, KVM or other Hyper-Visor that make use of hardware virtualisation

Detecting Intel VT and AMD-V from vmjournal.wordpress.com

Monday, August 9, 2010

Determining if Intel Virtualization Technology or AMD Virtualization is enabled in the BIOS without rebooting

If you are using Vmware Technology for your Virtualisation, you may find this information useful.

Taken from Vmware KB Determining if Intel Virtualization Technology or AMD Virtualization is enabled in the BIOS without rebooting (Jul 29 2010). Simplified at my blog Determining if Intel Virtualization Technology or AMD Virtualization is enabled in the BIOS without rebooting (Virtual Machine Journal)

Product Versions affected:

VMware ESX 3.0.x
VMware ESX 3.5.x
VMware ESX 4.0.x
VMware ESXi 3.5.x Embedded
VMware ESXi 3.5.x Installable
VMware ESXi 4.0.x Embedded
VMware ESXi 4.0.x Installable

Sunday, August 8, 2010

Advanced Management Module firmware v3.54L (BPET54L) - IBM BladeCenter dated 7th Jul 2010

There is a new update for Advanced Management Module Firmware v3.54L (BPET54L) for IBM Blade Centre dated 23rd July 2010.  With the apply of this updates, one of my blade server was finally rediscovered....

As for the instruction how to update, here the setup instruction
ftp://download2.boulder.ibm.com/ecc/sar/CMA/XSA/ibm_fw_amm_bpet54l_anyos_noarch.txt


IBM BladeCenter E Chassis (7967, 1881, 8677)
IBM BladeCenter H Chassis (7989, 8852)
IBM BladeCenter HT Chassis (8740, 8750)
IBM BladeCenter S Chassis (1948, 7779)
IBM BladeCenter S Express
IBM BladeCenter HC10 (7996)
IBM BladeCenter HS12 (8028, 1916, 8014)
IBM BladeCenter HS20 (8832, 1884, 8678, 8843, 7981, 1883)
IBM BladeCenter HS21 (1885, 8853, 7995)
IBM BladeCenter HS21 XM (1915, 7995)
IBM BladeCenter HS22 (7870, 1936, 7809)
IBM BladeCenter HS22V (7871, 1949)
IBM BladeCenter HS40 (8839)
IBM BladeCenter HX5 (7872, 1909)
IBM BladeCenter JS20 (8842)
IBM BladeCenter JS21 (7988, 8844)
IBM BladeCenter JS23 (7778)
IBM BladeCenter JS43 (7778)
IBM BladeCenter LS20 (8850)
IBM BladeCenter LS21 (7971)
IBM BladeCenter LS22 (7901)
IBM BladeCenter LS41 (7972)
IBM BladeCenter LS42 (7902)
IBM BladeCenter PS700 (8406)
IBM BladeCenter PS701 (8406)
IBM BladeCenter PS702 (8406)
IBM BladeCenter JS22
IBM BladeCenter QS21
IBM BladeCenter QS22

Tuesday, August 3, 2010

Intel Unveils New Product Plans for High-Performance Computing - Knight Corners

A possible non-GP-GPU route with many CPU on a chip? As intel put it Single Chip Cloud Computer


During the International Supercomputing Conference (ISC), Intel Corporation announced plans to deliver new products based on the Intel® Many Integrated Core (MIC) architecture that will create platforms running at trillions of calculations per second, while also retaining the benefits of standard Intel processors...... [Read On "Intel Unveils New Product Plans for High-Performance Computing"]

Do Read
  1. Futuristic Intel Chip Could Reshape How Computers are Built, Consumers Interact with Their PCs and Personal Devices
  2. A webcast of Kirk Skaugen's International Supercomputing 2010 keynote presentation will be available here: lecture2go.uni-hamburg.de/live.
  3. Keynote Presentation: Petascale to Exascale - Extending Intel’s HPC Commitment (PDF 7.6MB)

MPI_ERRORS_ARE_FATAL for ARPACK running OpenMPI on CentOS 4

One of our researcher was using ARPACK and OpenMPI and was facing an issue. He faced this problem.

mpirun -np 1 pssdrv1_intel_em64t [xxx.edu.sg:19479] *** An error occurred in MPI_Allreduce [xxx.edu.sg:19479] *** on communicator MPI_COMM_WORLD [xxx.edu.sg:19479] *** MPI_ERR_OP: invalid reduce operation [xxx.edu.sg:19479] *** MPI_ERRORS_ARE_FATAL (your MPI job will now abort)
--------------------------------------------------------------------------
mpirun has exited due to process rank 0 with PID 19479 on node xxx.edu.sg exiting without calling "finalize". This may have caused other processes in the application to be terminated by signals sent by mpirun (as reported here).
--------------------------------------------------------------------------

He managed to solve the problem by removing mpif.h from the source code and assuming ifort is already compiled with OpenMPI, the package should work. This is because PARPACK is relative established package for parallel iterative matrix diagonlization and was developed based on early MPI standard

I have not verified the solution but we have a happy scientist......

Monday, August 2, 2010

ARPACK SOFTWARE

ARPACK is a collection of Fortran77 subroutines designed to solve large scale eigenvalue problems.

The package is designed to compute a few eigenvalues and corresponding eigenvectors of a general n by n matrix A. It is most appropriate for large sparse or structured matrices A where structured means that a matrix-vector product w <- Av requires order n rather than the usual order n2 floating point operations......

Thursday, July 29, 2010

IBM Dynamic System Analysis (DSA) v3.10 (Portable) for RHEL 5 - IBM BladeCenter and System x

IBM DSA Portable Edition is a system information collection and analysis tool that is used by IBM xSeries(R) Service and Support personnel to aid in the diagnosis of system problems.

  1. Please go to: http://www-947.ibm.com/systems/support/supportsite.wss/docdisplay?lndocid=MIGR-5081460&brandind=5000008
  2. Open a linux shell prompt (or command line session)
  3. Login ar root (by using "su" or "sudo")
  4. Change the file permission to become executable
    # chmod +x thefileyoudownloadded.bin
  5. Run the ".bin" file and follow the instructions
    #./thefileyoudownloadded.bin
  6. Please locate the folder /var/log/IBM_SUPPORT and copy the ".gz" file in the folder and send it back to IBM

Wednesday, July 28, 2010

Encountering VGL Error - Could not open display 0


[VGL] NOTICE: Automatically setting VGL_CLIENT environment variable to
[VGL] xxx.xxx.xxx.xxx, the IP address of your SSh client.
No protocol specified
[VGL] ERROR: Could not open display :0.

Do note that for VirtualGL has to connect :0 to access the 3D Graphic Card. Apparently, VGL cannot get access to the display :0



Possible resolution 1:
Is the X Server up? X Server should be up to allow connection to display :0



Possible resolution 2:
Granting access the 3D X Server Read  Granting Access to the 3D X Server from VirtualGL Documentation



Possible resolution 3:
After configuring access to the 3D X Server and booting to init 5, you should log off completely and log in for the VirtualGL test. I did not log-off and was wondering why I have the above error.

There may be other resolutions.....Will document when it comes along

Using xdpyinfo to display information utility for X

According to the manual page, xdpyinfo is a useful utility for diaplaying information about an X server. It can be used to examine
  1. Capabilities of the server
  2. Predefined values for various parameters in communicating between clients and the server
  3. Different types of screen and visuals available
Commands to use
# xdpyinfo -display :0

Monday, July 26, 2010

Using TurboVNC 0.6 and VirtualGL 2.1.4 to run OpenGL Application Remotely on CentOS


For more information on Using TurboVNC 0.6 and VirtualGL 2.1.4 to run OpenGL Application Remotely on CentOS on Linux Cluster
VirtualGL is an open source package which gives any Unix or Linux remote display software the ability to run OpenGL applications with full 3D hardware acceleration…..With VirtualGL, the OpenGL commands and 3D data are instead redirected to a 3D graphics accelerator on the application server, and only the rendered 3D images are sent to the client machine……” For more information see What is VirtualGL? from Project Website"

Friday, July 23, 2010

Using glxgears to report Frame Per Second


glxgears is an OpenGL program that reports FPS (frames per second) numbers. I find this program useful to test out OpeGL Renderer such as simple comparison between VNC, VirtualGL and of course the Direct-From-The-Machine itself.

For TurboVNC (unencrypted) churned out about on a Local LAN
# glxgears
6028 frames in 5.1 seconds = 1186.369 FPS
6000 frames in 5.1 seconds = 1178.267 FPS
5760 frames in 5.1 seconds = 1132.999 FPS
5760 frames in 5.1 seconds = 1133.431 FPS
5520 frames in 5.0 seconds = 1096.104 FPS
5147 frames in 5.0 seconds = 1027.200 FPS
5160 frames in 5.1 seconds = 1016.540 FPS
5160 frames in 5.1 seconds = 1016.316 FPS
5160 frames in 5.1 seconds = 1016.578 FPS
5160 frames in 5.1 seconds = 1016.974 FPS
5160 frames in 5.1 seconds = 1018.695 FPS

For SSH and Xming churned out about on a Local LAN. But the glxgears image refresh is definitely slower than TurboVNC even though the FPS is similar.
# glxgears
6761 frames in 5.0 seconds = 1345.283 FPS
7022 frames in 5.2 seconds = 1343.998 FPS
7021 frames in 5.2 seconds = 1337.664 FPS
6632 frames in 5.1 seconds = 1288.340 FPS
6632 frames in 5.1 seconds = 1297.666 FPS
6760 frames in 5.2 seconds = 1309.137 FPS
6632 frames in 5.2 seconds = 1266.929 FPS
7022 frames in 5.3 seconds = 1330.755 FPS
6631 frames in 5.1 seconds = 1309.255 FPS
6632 frames in 5.0 seconds = 1314.089 FPS
6891 frames in 5.3 seconds = 1305.207 FPS
6631 frames in 5.1 seconds = 1291.670 FPS

For Direct-From-The-Machine. This is the best performance
# glxgears
61237 frames in 5.0 seconds = 12247.371 FPS
65314 frames in 5.0 seconds = 13062.798 FPS
60291 frames in 5.0 seconds = 12058.135 FPS
64627 frames in 5.0 seconds = 12925.391 FPS
64976 frames in 5.0 seconds = 12995.109 FPS
64949 frames in 5.0 seconds = 12989.766 FPS
64961 frames in 5.0 seconds = 12992.117 FPS
64953 frames in 5.0 seconds = 12990.459 FPS
64920 frames in 5.0 seconds = 12983.886 FPS

For VirtualGL on VGL Image Transport with a Direct X11 Connection. Performance is very good near Direct-From-The-Machine
6559 frames in 5.0 seconds = 1311.784 FPS
6573 frames in 5.0 seconds = 1314.600 FPS
6548 frames in 5.0 seconds = 1309.470 FPS
6547 frames in 5.0 seconds = 1309.399 FPS
6545 frames in 5.0 seconds = 1308.945 FPS
6544 frames in 5.0 seconds = 1308.787 FPS
6527 frames in 5.0 seconds = 1305.391 FPS
6527 frames in 5.0 seconds = 1305.336 FPS