Cortex

From ISRWiki
Revision as of 13:50, 14 April 2009 by Alex (talk | contribs)
Jump to navigation Jump to search

Cortex is a computation rack for VisLab humanoid robots.

It contains 7 machines:

  • 1 server that manages startup, shutdown and the file system of the clients.
  • 6 clients that run the user processes.

All clients mount the same file system. Therefore, performing changes in the file system of one of the clients will reflect to all others.

IP's and DNS:

  • Server: 10.10.1.240, server.visnet
  • Client 1: 10.10.1.1, cortex1.visnet
  • Client 2: 10.10.1.2, cortex2.visnet
  • Client 3: 10.10.1.3, cortex3.visnet
  • Client 4: 10.10.1.4, cortex4.visnet
  • Client 5: 10.10.1.5, cortex5.visnet
  • Client 6: 10.10.1.6, cortex6.visnet

The server has:

  • Boot folder for the clients at /tftpboot/pxelinux.cfg. Contains the files:
    • default - default boot file
    • <mac_address> - specific for a machine with the given mac address.
  • startup scripts for each machine at /nfsroot/app

The clients have:

  • A superuser account (compurack) to administer system wide settings (configurations, libs, etc)
  • Normal user accounts. The logon script runs by default the content of file $HOME/.bash_env, where users can set their environment variables, e.g. export ICUB_DIR=$HOME/iCub.
  • A yarp account to update and install the yarp library. YARP_DIR is set by default to /home/yarp/yarp2 to all users (in /etc/bash.bashrc).

Each user should manage its own iCub repository:

  cvs -d vislab@cvs.robotcub.org:/cvsroot/robotcub co iCub


Yarp was set using the following commands (after logging in as yarp):

  cvs -d:pserver:anonymous@yarp0.cvs.sourceforge.net:/cvsroot/yarp0 login
  cvs -z3 -d:pserver:anonymous@yarp0.cvs.sourceforge.net:/cvsroot/yarp0 co -P yarp2
  cd yarp2
  cmake .    (or ccmake .)
  make
  make test


Other system wide libraries/apps are installed by the superuser. Currently the following libraries are installed:

CURSES

  apt-get install libncurses5-dev

ACE

  apt-get install libace-dev

CMAKE

  apt-get install cmake

GSL

  apt-get install libgsl0-dev

GTK/GTKMM/GLADE

  apt-get install libgtk2.0-dev
  apt-get install libgtkmm-2.4-dev
  apt-get install libglademm-2.4-dev

OPENCV

  cvs -z3 -d:pserver:anonymous@opencvlibrary.cvs.sourceforge.net:/cvsroot/opencvlibrary co -P opencv
  cd opencv
  ./configure
  make
  make install
  add /usr/local/lib to /etc/ld.so.conf


Other configurations:

Tuning network: sysctl -w net.core.rmem_max=8388608 sysctl -w net.core.wmem_max=8388608 sysctl -w net.core.rmem_default=65536 sysctl -w net.core.wmem_default=65536 sysctl -w net.ipv4.tcp_rmem='4096 87380 8388608' sysctl -w net.ipv4.tcp_wmem='4096 65536 8388608' sysctl -w net.ipv4.tcp_mem='8388608 8388608 8388608' sysctl -w net.ipv4.route.flush=1


Helper commands:

Check the kernel uname -m

Check the file versions file

Set bash shell in: /etc/passwd

Check disk space: du –h –s /home

Check per user processes: ps -U <user>