User Tools

Site Tools


en:programmation-jupyter

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
en:programmation-jupyter [2020/02/06 20:20]
admin removed
en:programmation-jupyter [2022/03/11 19:23]
admin
Line 1: Line 1:
-====== Python ======+====== Jupyter lab ======
  
-===== Anaconda =====+It's best to secure your jupyter lab with a password and an SSL certificate so the communication is crypted. 
 +The procedure also sets the port on which the server is running and preventing a web browser from starting.You can change the different options according to your needs.
  
-Even-though **Python** is available in all Linux machines, the module **Anaconda** allows you to load Python version 3.6 that give you access to a wide range of scientific libraries such as Scipy and Numpy. You can find a list of all available modules here: https://store.continuum.io/cshop/anaconda/. In order to use this **suite python**, you need to load the module anaconda in your account: +====== Initial configuration ======
-  module load anaconda+
  
-You will also have access to some virtual environments. You can use the command: +You only need to do this setup once, not everytime you want to use the lab. 
-  module help anaconda + 
-to see what is available.+First, we create a password. This way, it won't be a random key to login. 
 +  jupyter lab password
      
-===== Installing additional modules ===== +Second, we create an SSL keyThis key will allow the server to run as an https serverKeep in mind this is a self-signed certificate and as such is not recognized by the browsers as being secure
- +  openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout $HOME/.jupyter/mykey.key -out $HOME/.jupyter/mycert.pem
-Anaconda comes with many preinstalled packages but you might need one that isn't availableIn that case, you can use the ''pip'' tool to search packages and install them. +
- +
-Here's a search example: +
- +
-<code> +
->pip search pulp +
-coinor.pulp (1.0.4)      - This is a package that wraps pulp and imports it into the namespace package coinor. +
-pulp-or (1.4.6)          - PuLP is an LP modeler written in python. PuLP can generate MPS or LP files and call GLPK, COIN CLP/CBC, CPLEX, and GUROBI to solve linear problems. +
-PuLP-py3 (1.5.5)         - Temporary fork of PuLP offering support for Python 3 while retaining compatibility with Python 2. PuLP is an LP modeler that can generate MPS or LPfiles and call GLPK, COIN +
-                           CLP/CBC, CPLEX, and GUROBI to solve linear problems+
-juicer (0.7.2)           Administer Pulp and Release Carts +
-pulpo-forms (1.1)        Django App to create dynamic Surveys +
-pulpcbc (0.1.4)          UNKNOWN +
-pulpitum (0.2.2)         PyPI client for Humans™ +
-mypulp (0.0.9)           `mypulp` is a package for mypulp. +
-yaposib (0.3.2)          - Yaposib is a python binding to OSI, the Open Solver Interface from COIN-OR. It intends to give access to various solvers through python. Yaposib was created in order to be +
-                           integrated in pulp-or (http://code.google.com/p/pulp-or). +
-pulp-smash (2016.11.10)  - A library for testing Pulp +
-PuLP (1.6.1)             - +
-</code> +
- +
-To install a package, you can do as follows:+
  
-<code> +Thirdwe configure miscelaneous parameters of the lab
->pip install --user pulp +
-Collecting pulp +
-Collecting pyparsing<=1.9.9 (from pulp) +
-Installing collected packages: pyparsingpulp +
-Successfully installed pulp pyparsing-2.0.3 +
-</code>+
  
 +Certificate information
 +  echo "c.ServerApp.certfile = u'$HOME/.jupyter/mycert.pem'" >> $HOME/.jupyter/jupyter_lab_config.py
 +  echo "c.ServerApp.keyfile = u'$HOME/.jupyter/mykey.key'" >> $HOME/.jupyter/jupyter_lab_config.py
 +Don't start a browser
 +  echo "c.ServerApp.open_browser = False" >> $HOME/.jupyter/jupyter_lab_config.py
 +  echo "c.LabServerApp.open_browser = False" >> $HOME/.jupyter/jupyter_lab_config.py
 +Run on port 9000. Change this if needed
 +  echo "c.ServerApp.port = 9000" >> $HOME/.jupyter/jupyter_lab_config.py
  
-===== numpy+scipy =====+Once the setup is complete, you can start the program as usual: 
 +  jupyter lab
  
-If you're using those libraries, be careful when submitting jobs to the compute grid since by default it will use all available processors. To restrict the job to one CPU, you can run your program like this: +====== Remote access ======
-  OPENBLAS_NUM_THREADS=1 MKL_NUM_THREADS=1 python mon programme.py+
  
 +If you wish to start a lab server on a machine and access it remotely, do as usual and create an ssh tunnel to the port you defined in your configuration. For example:
 +  ssh mydesktopname -L9000:localhost:9000
  
  
en/programmation-jupyter.txt · Last modified: 2022/03/11 19:23 by admin