IMPORTANT: Many informations in this document are outdated. This page is kept for historical reason. Please, refer to the wiki of the team for up-to-date informations.
- Where can I find good quality logos of INRIA and LEAR?Here: /home/clear/lear/logos/
The proceedings of many conferences can be found in /home/clear/lear/proceedings/
Documentation can be found at the INRIA intranet
here.
Updated: Feb 15
See the machines text-file, or the corresponding openoffice spreadsheet. In principle any member of LEAR can run jobs on any of our workstations (via ssh), but if it's something large or CPU intensive, please ask the machine's 'owner' first. See below on how to initialize a public/private pair of keys for ssh
The team has a machine cluster composed of 35 hosts and 856 cores. You can submit jobs to it using the OAR scheduler on the cluster front, 'clear'. For usage reference, see man 'oarsub', read the OAR user documentation or kindly ask one of your teammates.
Everything under /home
, /scratch
and
/scratch2
is accessible uniformly on all LEAR computers.
Obviously, accesses to local files are faster.
Most desktop machines are attributed to a team member, therefore it is common courtesy to ask for the user's permission first.
The machines prospero and antonio are your best bet if you need to run a memory or CPU-intensive task without going through the OAR reservation system.
There are also machines hosting Titan GPUs, namely goneril (2 GPUs) and cepheus (1 GPU). Those machines are used for GPU-intensive tasks only, such as CUDA programs.
In short, around 270 TB (Feb 15), excluding home dirs.
/home/lear/your_login
/scratch/machine_name/your_login
or /scratch2/machine_name/your_login
, and /home/clear/your_login
(for historical reasons).
You can ask Matthijs or Xavier to create a directory for you on another disk if you run out of space, but try to clean up first!
First spend 10-15 minutes searching with Google (eg. 'Fedora 18 screen rotation'). Then ask people around you. Then ask the CMI's (currently Xavier Martin, Matthijs Douze and Jakob Verbeek). If they are not available you can submit a request to the MI's here (MI = sysadmins of the whole lab).
/home/wwwlear
. The main publicly available pages are in
pub
, and personal pages are in people
. Local
pages (accessible only to machines in inrialpes.fr and imag.fr) are in
local
, and private pages (accessible only to LEAR
machines) are in private
. /home/ftp/pub/lear/yourlogin
that is visible at /pub/lear on
ftp.inrialpes.fr. People can send files to here via
/incoming/lear on
ftp.inrialpes.fr (the directory cannot be listed, but the files will be there). This is accessible by NFS at
/home/ftp/incoming/lear
. /home/clear/lear
, including
Contributions are welcome! In particular if you think a dataset is of interest to more people, have it placed under the lear directory!
/softs/stow
/home/clear/lear/intel
.
For them to find the license server, do export INTEL_LICENSE_FILE=/home/clear/lear/intel/licenses/USE_SERVER.lic
The home directories mounted on /home/lear/
are
backup'ed regularly. Other data like scratch spaces or home directories
on clear aren't backup'ed at all so be carefull.
The backup system on the NAS is reliable but the main drawback is that we have very limited space on it (4GB per person). Thus please keep in your home only important files that cannot be easily regenerated. For instance you may store your code but not binaries built from it. Please also don't store in your home non work related files. Images and videos databases should be stored on scratch space (or clear, see below).
You can see the state of your disk usage with du and quota. Some applications write a cache in your homedir, typically in the .cache subdirectory. This can be removed or moved to a scrach and linked from your homedir.
The NAS
backups are done four times a day, so at any moment the 4 most recent
backups are available. There are also daily (for 7 days) and weekly (4 weeks)
backups. Recovering is very simple : cd to
/home/lear/my_subdir/.snapshot/backup_number
; this directory
contains the files in as they were at the specified date. Then just copy the
files you wish to restore. The .snapshot
is not listed as a
directory entry but you can access it.
You should add your publications in the HAL database at http://hal.inria.fr. If the interface language is or switches to French, you can go back to English with the button at the upper right of the screen. However, some of the field names will continue to be in French!
The shared login for LEAR members is lear and the passowrd is lear/ljk.
Via the menu choose: Mon espace > Mes dépôts. Select the publication you want to edit, and choose one of the following. Use 'Ajouter un fichier' to add the fulltext of the paper; see also below. Use 'Modify the metadata' to change authors, title, conference name, to correct the publication type, e.g., change an arXiv paper into a conference paper (still keeping the link to arXiv), change a journal paper into a conference paper, etc.
The database is a joint effort by the team, contributing to it is part of your job.
You can make your personal publication page by using the following example URL http://lear.inrialpes.fr/publications_lear.php?author=verbeek
Krystian's Harris/Hessian-affine implementation + dense descriptors, and Lowe's SIFT are integrated in
compute_descriptors, see /home/clear/douze/bin/compute_descriptors
.
A newer package is Obsidian, which computes CS-LBP descriptors. To access this, you need to create an account on the Inria source repository, see here and ask a project admin for access.
If you need only the GIST descriptor from obsidian, see the software page.
All the machines are installed with Fedora Core 18 in 64 bit.
You can run 32-bit code on 64-bit machines. You can
produce 32-bit executables on 64-bit machines with gcc -m32
.
Matlab is available in both modes. If you want to run any version of matlab in
32-bit mode on a 64-bit machine, you have to specify matlab
-glnx86
If a program depends on exotic libraries (especially C++ stuff), it may not run on a machine
with another distribution than the one it was compiled for. A workaround is to
copy the necessary libraries to an accessible directory and point the
LD_LIBRARY_PATH
enivronment variable to it.
You can add software packages packages to the system with sudo yum install toto
(you can find relevant packages with yum search toto
). If you need software that is not in a standard package, you'll have to compile and install it to a scratch, ask the CMI if you need to be assisted with this.
Rebooting will disturb the people logged on your machine or using the discs, so it sould be used only when everything else fails and if it is clear that it will help.
If your machine is slow: use top
to see what processes are
using most CPU time and/or memory. If firefox-bin
consistently uses more than 20%
of CPU, a plugin probably went mad, so restat Firefox. If the bad processes do
not belong to you, ask the owner. The mapping of names to person and office can be found here
If your mouse does not move, or the windows do not get
focus, or you can't click, the window manager probably messed up something. Try
to switch to a text console (ctrl+alt+F2), login, and restart the window
manager by hand (kwin --restart --display :0
for KDE,
metacity --restart --display :0
for Gnome, fvwm2 -r
--display :0
for FVWM, etc.)
If this does not work, or if you cannot switch to a text console, the X server may be hung. Try to kill it with Alt + PrtScn/SysReq + K.
If this does not work, go to another machine and ssh back. Kill process
/etc/X11/X
. If ssh does not work, go to the network problems.
If you cannot access a directory from another machine, it may be a network problem. Try to ping the other machine, then a third LEAR machine. If ping doesn't pass, verify the network cable, or the other machine.
If accessing your homedir or id
mylogin is slow the
LDAP server is failing. Ask the CMI.
This is useful (and recommended) when you run a process on another machine.
Each process has a priority (PR field in top, 40 ≥ PR ≥ 0) used by
the kernel's scheduler to decide when it will be run. If PR is higher,
the process will get less CPU time. A user can set the priority of a
process relative to that of its parent process. The difference between the two
is the 'nice value' (NI in top):
A normal user can set only positive nice values, on his/her own processes.
To launch a command tryout_all_params.sh with a nice value of 13, do:
nice -n 13 tryout_all_params.sh
To change the nice
value of the command when it is already running, find its pid and enter
renice +13 -p <the pid>
There are two types limitation:
So if you afraid that your allocation will exceed the free physical memory
and linux will be terribly slow because of swapping or it might crash the whole
kernel (eventually happens...), set a limit to BOTH (1) and (2). If you just
afraid of crash it is probably enough to set (2). Limits described here are
local to a shell and inherited by sub-shells. To set these limits use
limit
and ulimit
built in commands of tcsh and bash
accordingly.
Notes:
The following example sets the physical memory limit to 200MB and the total
mem limit to 300MB
In tcsh:
limit memoryuse 200m limit
vmemoryuse 300m
In bash:
ulimit -Sm 204800 -Sv 307200
List the current limitations:
In tcsh:
limit
In bash:
ulimit -a
The following example lists the amount of memory currently used by process 3940:
ps -o pid,vsize 3940
You can also use top
to check the amount of memory used by
processes. (ON←
to order it by mem usage.)
The numpy and scipy version installed on the system are not the fastest possible. The easiest way to get a replacement is through the Enthought Python Distribution (EPD) which is free for academic use (you just have to give your academic e-mail address). It contains many useful librairies including Numpy, Scipy, IPython (for an improved python shell), Matplotlib (for plotting) and scikit-learn (machine learning library). The other bonus is that it ships with Intel's MKL (more efficient alternative to ATLAS) and is linked with it. This allows for efficient multithreaded linear algebra, equivalent to Matlab in terms of performance and functionality (Matlab uses MKL under the hood), with a real programming language!
If you want the bleeding edge versions, or if you want to contribute to those great open source projects, you can retrieve and compile the source code for Python, Numpy and Scipy.
For BLAS operations Numpy is relying on the ATLAS library, which comes in two different versions: one is single-threaded (libsatlas.so), one is multi-threaded (libtatlas.so, the default one). Beware that the presence of many softlinks in /usr/lib64/atlas/ makes it almost impossible to call the single-threaded version. Actually this is on purpose in order to 'fool' Python, so that it always uses the multi-threaded version. To change this behavior, just prefix your python call with:
LD_PRELOAD="/usr/lib64/atlas/libsatlas.so.3.10_backup" python myscript.py ...
If you want to dynamically change the number of threads, then only MKL can help you. Refer to the previous question/answer in that case.
Get a spray and piece of cloth in Nathalie's office.
If you print from a graphical program (eg. acroread, firefox,...) try output to a postscript (ps) file and verify you can see the file with gv (ghostview). If not, try something else to generate the ps (e.g. pdftops instead of acroread, opera instead of mozilla, ooffice instead of the Word print-to-file).
To check if the print server works, click on http://print-serv.inrialpes.fr:631/ (it should display a web page). If it does not, the print server is down: ask your CMI.
If the print server is down, you can connect to the printer directly via http (http://ch110b, 'Print' tab) or ftp on older printers (you can put the .ps file). This method is only for emergencies because it short-circuits the print queue.
You can only connect to Inria with ssh. There are two machines accessible from outside:
ssh-keygen -t rsa
and give a password XYZ (it is easier to
leave it empty).
copy the generated id_rsa
and id_rsa.pub
to the
directory ~/.ssh/
on the machine you want to connect from,
and set proper permissions (chmod 600 ~/.ssh/id_rsa; chmod 644 ~/.ssh/id_rsa.pub
)
copy the generated id_rsa.pub
to
~/.ssh/authorized_keys
on your inria account (or append to
it if it exists)
bastion.inrialpes.fr
, register on this page and connect with ssh with
password XYZ. More information about remote login via bastion can be
found here. The
key expires after some time, so you may have to upload it again.
Under Unix (Linux or Mac OS X), ssh should be installed. On Windows, use Putty. To access your INRIA machine from pascal or bastion, use rlogin or ssh as usual.
GNU screen
is a very useful program to run
text-based applications remotely. It can handle multiple shells,
and persists when you disconnect. Tutorials are available on the web.
Viewing graphical programs remotely requires to make an ssh tunnel: apart from the normal connection, ssh forwards the graphical data from a port on the client machine to a port reachable from the server machine. There are two graphical protocols available.
ssh -X login@pascal.inrialpes.fr # replace login with
your login name
and launch your X programs
(xterm
for example) from the ssh-opened shell: X
connections are forwarded. If the client is Mac OS X or Windows, you
must explicitly install and launch an X server on the client before (try
Cygwin for Windows and Apple's X
server on the Mac). With VNC: vncserver
. If it
is not installed, install tiger-vnc from yum (excute
yum search tigervnc
then, for instance, , sudo yum install -y tigervnc.x86_64 tigervnc-server.x86_64)
).
The first time, it will ask you for a password and tell you its VNC display
number (:1 for example). You can see what is displayed in VNC with
vncviewer machine:1
# replace machine with the
name of the machine where the server is running
# replace :1 with
the VNC display number
To connect to your machine from outside, use an enhanced version of TightVNC for Windows,
and Mac. This modified version allows you to connect to your machine
using SSH tunnel via 'pascal' as gateway (since your machine is not directly reachable
from your home). When you launch SSL/SSH VNC Viewer, fill the first field
with your machine name followed by the VNC displayed number (e.g., "zeus:1").
In the second field, enter login@pascal.inrialpes.fr
(replace
login with your login). Then, select the option 'Use SSH'.
xrandr --size WIDTHxHEIGHT
# (if you just execute xrandr without arguments,
it will list the possible resolutions)
The advantage of VNC over X is that closing the connection does not close the programs that are running (since the VNC server is still running). The advantage of X is that it is faster because it transmits high level drawing instructions (like 'draw a line' or 'print this string'), whereas VNC transmits bitmaps of the part of the display that changes.
See Matthijs's notes.
This document specifies how much you should indent your code and whether method names should start with an uppercase letter.
Use the Robert & Collins French-English dictionary
Congratulations! There is a cluster for you. Please read the cluster user guide.