From 34db68f5bd0537bc32d44eff3958ceee69977e57 Mon Sep 17 00:00:00 2001
From: pswietojanski
Date: Mon, 28 Sep 2015 17:08:59 +0100
Subject: [PATCH] some more clarifications
---
00_Introduction.ipynb | 122 ++++++++++++++++++++----------------------
1 file changed, 58 insertions(+), 64 deletions(-)
diff --git a/00_Introduction.ipynb b/00_Introduction.ipynb
index defed34..6cf69fa 100644
--- a/00_Introduction.ipynb
+++ b/00_Introduction.ipynb
@@ -36,19 +36,39 @@
"\n",
"## Instructions for DICE:\n",
"\n",
- "### Configuring virtual environment (the generic way)\n",
+ "### Directory structure and getting things organised\n",
+ "\n",
+ "To get things somehow standarized between people, and make life of everyone easier, we propse to organise your DICE setup in the following directory structure:\n",
+ "\n",
+ " * `~/mlpractical/` -- for a general course repository\n",
+ " * `~/mlpractical/repos-3rd` -- for stuff you download, build and install (numpy, OpenBlas, virtualenv)\n",
+ " * `~/mlpractical/repo-mlp` -- this is the actual course repository you clone from our website (do not create a dir for it yet!)\n",
+ " * `~/mlpractical/venv` -- this is where virutal envirnoment will make its dir (do not create a dir for it yet!)\n",
+ "\n",
+ "Create now repos-3rd directory (option -p in the below command will automatically create (non-existing) **p**arent directories (mlpractical):\n",
+ "\n",
+ " * `mkdir -p ~/mlpractical/repos-3rd`\n",
+ "\n",
+ "And now, let us set an MLP_WDIR environmental variable (MLP Working DIRectory) that denotes an absolute path of working dir pointing to `~/mlpractial`, **add the below line** to your `~/.bashrc` file (if it does not exists, create one!):\n",
+ "\n",
+ "```\n",
+ "export MLP_WDIR=~/mlpractical\n",
+ "```\n",
+ "\n",
+ "Now re-source `~/.bashrc` by typing (so the env variables get updated!): `source ~/.bashrc`\n",
+ "\n",
+ "Enter the `repos-3rd` directory by typing: `cd ~/mlpractical/repos-3rd` (or ```cd $MLP_WDIR/repos-3rd``` if you want)\n",
+ "\n",
+ "### Configuring virtual environment\n",
+ "\n",
+ "Make sure you are in `repos-3rd` directory and that MLP_WDIR variable has been exported (you may type export in the terminal and examine the list of availabe variables in the current session), then type:\n",
"\n",
" * `git clone https://github.com/pypa/virtualenv`\n",
- " * Enter the cloned repository and type `./virtualenv.py --python /usr/bin/python2.7 --no-site-packages ~/mlpractical`\n",
- " * Activate the environment by typing `source ~/mlpractical/bin/activate` (to leave the virtual environment one may type `decativate`). Environments need to be activated every time ones start the new session (unless you do this explicitly in the shell starting scripts, i.e. `~/.bashrc`).\n",
- "\n",
- "### Configuring virtual environment (more comfy DICE wrapper; ignore if you did the generic way above)\n",
- "\n",
- "DICE comes with a handy virtual environment wrapper, called $\\texttt{mkvirtualenv}$, which allows to simplify a bit the above process, to use it:\n",
- "\n",
- " * `source /usr/bin/virtualenvwrapper.sh` (add this also to `~/.bashrc` script so it is available automatically every time you ssh to the grid)\n",
- " * Then type `mkvirtualenv mlpractical --python /usr/bin/python2.7` (this will create an environment under ~/.virtualenvs/mlpractical)\n",
- " * To activate the environment you can use `workon` script that comes with the wrapper. Simply type: `workon mlpractical`\n",
+ " * Enter the cloned repository and type ```./virtualenv.py --python /usr/bin/python2.7 --no-site-packages $MLP_WDIR/venv```\n",
+ " * Activate the environment by typing `source ~/mlpractical/venv/bin/activate` (to leave the virtual environment one may type `decativate`)\n",
+ " * Environments need to be activated every time ones start the new session so add this command to your `~/.bashrc` script, by typing the below command (note, MLP_WDIR export needs to preceed this command and `.` is actually important):\n",
+ " \n",
+ " ```. $MLP_WDIR/venv/bin/activate``` \n",
"\n",
"### Install packages\n",
"\n",
@@ -76,10 +96,10 @@
"\n",
"#### OpenBlas\n",
"\n",
- "To install OpenBlas library run (replace first line to be the path to the directory where you want to install OpenBlas):\n",
+ "Enter again repos-3rd directory (`cd ~/mlpractical/repos-3rd) and copy into terminal the following commands (one at the time):\n",
"\n",
"```\n",
- "OBDir=~/OpenBlas\n",
+ "OBDir=$MLP_WDIR/repos-3rd/OpenBLAS\n",
"git clone git://github.com/xianyi/OpenBLAS\n",
"cd OpenBLAS\n",
"make\n",
@@ -89,24 +109,26 @@
"Once OpenBLAS is finished compiling we need to ensure the compiled shared library files in the `lib` subdirectory are available to the shared library loader. This can be done by appending the absolute path to the `lib` subdirectory to the `LD_LIBRARY_PATH` environment variable. To ensure this changes persist we will change the bash start up file `~/.bashrc` by opening it in a text editor (e.g. by running `gedit ~/.bashrc`) and adding the following line\n",
"\n",
"```\n",
- "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$OBDir/lib\n",
+ "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$MLP_WDIR/repos-3rd/OpenBLAS/lib\n",
"```\n",
"\n",
+ "Note, we again are using MLP_WDIR here, so the above line needs to be placed after you set MLP_WDIR.\n",
+ "\n",
"After you have edited `.bashrc` run\n",
"\n",
"```\n",
"source ~/.bashrc\n",
- "source ~/mlpractical/bin/activate\n",
+ "source ~/mlpractical/venv/bin/activate\n",
"```\n",
"\n",
"to rerun the bash start up script make sure the new environment variable is available in the current shell and then reactivate the virtual environment.\n",
"\n",
"#### Numpy\n",
"\n",
- "To install `numpy` linked against the OpenBLAS libraries we just compiled, first run the following\n",
+ "To install `numpy` linked against the OpenBLAS libraries we just compiled, first run the following commands (one at a time)\n",
"\n",
"```\n",
- "cd ~/Downloads\n",
+ "cd ~/mlpractical/repos-3rd/\n",
"wget http://downloads.sourceforge.net/project/numpy/NumPy/1.9.2/numpy-1.9.2.zip\n",
"unzip numpy-1.9.2.zip\n",
"cd numpy-1.9.2\n",
@@ -116,67 +138,39 @@
"python setup.py build --fcompiler=gnu95\n",
"```\n",
"\n",
- "Assuming the virtual environment is activated, the below command will install numpy in a desired space (`~/.virtualenvs/mlpractical/...`):\n",
+ "Assuming the virtual environment is activated, the below command will install numpy in a desired space (`~/mlpractical/venv/...`):\n",
"\n",
"```\n",
"python setup.py install\n",
"```\n",
"\n",
+ "Now use pip to install remaining packages: `scipy`, `matplotlib`, `argparse`, `nose`,\n",
"\n",
- "### Installing remaining packages and running tests\n",
+ "### Getting the mlpractical repository\n",
"\n",
- "Use pip to install remaining packages: `scipy`, `matplotlib`, `argparse`, `nose`, and check if they pass the tests. An example for numpy is given below."
+ "Clone the course repository from the github, by navigating to `~/mlpractical` directory and typing:\n",
+ "\n",
+ "```\n",
+ "git clone https://github.com/CSTR-Edinburgh/mlpractical.git repo-mlp\n",
+ "```\n",
+ "\n",
+ "When download is ready, enter the repo-mlp directory (`cd repo-mlp`) and start the actual interactive notebook session by typing:\n",
+ "\n",
+ "```\n",
+ "ipython notebook\n",
+ "```\n",
+ "\n",
+ "This should start a ipython server which opens a new browser window listing files in `repo-mlp` directory, including `00_Introduction.ipynb.`. Open it and run (from the browser interface) the following examples and exercies."
]
},
{
"cell_type": "code",
- "execution_count": 1,
+ "execution_count": null,
"metadata": {
"collapsed": false,
"scrolled": true
},
- "outputs": [
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "\u001b[H\u001b[2Jatlas_3_10_blas_threads_info:\n",
- " libraries = ['tatlas']\n",
- " library_dirs = ['/usr/lib64/atlas']\n",
- " define_macros = [('HAVE_CBLAS', None), ('ATLAS_INFO', '\"\\\\\"3.10.1\\\\\"\"')]\n",
- " language = c\n",
- " include_dirs = ['/usr/include']\n",
- "lapack_opt_info:\n",
- " libraries = ['tatlas', 'tatlas', 'tatlas']\n",
- " library_dirs = ['/usr/lib64/atlas']\n",
- " define_macros = [('ATLAS_INFO', '\"\\\\\"3.10.1\\\\\"\"')]\n",
- " language = f77\n",
- " include_dirs = ['/usr/include']\n",
- "blas_opt_info:\n",
- " libraries = ['tatlas']\n",
- " library_dirs = ['/usr/lib64/atlas']\n",
- " define_macros = [('HAVE_CBLAS', None), ('ATLAS_INFO', '\"\\\\\"3.10.1\\\\\"\"')]\n",
- " language = c\n",
- " include_dirs = ['/usr/include']\n",
- "openblas_info:\n",
- " NOT AVAILABLE\n",
- "openblas_lapack_info:\n",
- " NOT AVAILABLE\n",
- "atlas_3_10_threads_info:\n",
- " libraries = ['tatlas', 'tatlas', 'tatlas']\n",
- " library_dirs = ['/usr/lib64/atlas']\n",
- " define_macros = [('ATLAS_INFO', '\"\\\\\"3.10.1\\\\\"\"')]\n",
- " language = f77\n",
- " include_dirs = ['/usr/include']\n",
- "lapack_mkl_info:\n",
- " NOT AVAILABLE\n",
- "blas_mkl_info:\n",
- " NOT AVAILABLE\n",
- "mkl_info:\n",
- " NOT AVAILABLE\n"
- ]
- }
- ],
+ "outputs": [],
"source": [
"%clear\n",
"import numpy\n",
@@ -383,7 +377,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython2",
- "version": "2.7.5"
+ "version": "2.7.9"
}
},
"nbformat": 4,