×
Yeni bir madde oluştur
Sayfa başlığınızı buraya yazın:
We currently have 15 articles on UHeM Wiki. Type your article name above or create one of the articles listed here!



    UHeM Wiki
    15Maddeler

    Python, Anaconda, Tensorflow, Keras, Caffe Kullanım Kılavuzu

    Python İşi Çalıştırmak

    Sarıyer kümesinde Python işi çalıştırmak için, bir çok farklı seçenek mevcuttur:


    1. İşletim Sistemi ile gelen python sürümlerini kullanmak (module yüklemeden python ve python3.4 komutları ile),
    2. module komutu ile yükleyebileceğimiz python sürümlerinden birini kullanmak (MODULE Klavuzu,MODULE Seçimi),
    3. module komutu ile yükleyebileceğimiz Anaconda sürümlerinden biri ile gelen python sürümünü kullanmak,
    4. Kendi evdizinimize kendi Python yada Anaconda sürümümüzü yüklemek


    Bu seçeneklerden ilk ikisi için, eğer pip ile ilave python modülü yüklemek isterseniz, aşağıda anlatılan virtual environment (virtualenv) çözümünü kullanmanızı öneririz. Python 3.4 ve sonrası için, virtualenv çözümünün standart kütüphaneye taşınan sürümü olan venv çözümü daha verimli olacaktır.


    Anaconda kullanacaksanız, Anaconda environment çözümünü kullanmanızı öneririz.


        



    TensorFlow İşi Çalıştırmak

    Sarıyer kümesinde tensorflow işi çalıştırmak için, bir çok farklı seçenek mevcuttur:

    1. kaynak kodudun doğrudan derlenmiş python sürümlerinde sadece cpu kullanarak,
    2. işletim sistemi ile gelen python sürümünde cpu ve gpu kullanarak,
    3. Yüklü bulunan Anaconda2 veya Anaconda3 sürümlerinde kurulu olanları kullanarak,
    4. Kendi ev dizininize, virtualenv ile özel bir python kurulumu yapıp, pip install ile kendi tensorflow'unuzu yükleyerek,
    5. Kendi ev dizininize, kendi Anaconda'nızı yükleyerek.


    GPU kullanmadan, CPU üzerinde tensorflow çalıştırmak, çoğu durumda, GPU kullanımına göre çok daha yavaş olacaktır. Üstelik tensorflow ve Keras GPU üzerinde çalıştıracağınız varsayımı ile hazırlanmaktadır. Bu sebeble, gerçekten bir ihtiyaç yoksa, CPU üzerinde tensorflow kullanımından kaçınılmalıdır.

    Yine de sadece CPU kullanarak tensorflow kullanmak mümkündür:

    #!/bin/bash
    
    #SBATCH -J "Tensorflow-CPU-1.5.0"              # isin adi
    
    #SBATCH -A hsaat                         # account / proje adi
    #SBATCH -p defq                          # kuyruk (partition/queue) adi
    
    #SBATCH -n 56                             # cekirdek / islemci sayisi
    #SBATCH -N 2                             # bilgisayar sayisi
    
    module load TensorFlow/v1.5.0-compiled-from-source-cpu-only
    
    #calisacak tensorflow isi
    python programimiz.py
    


        


    Sarıyer kümesinde, GPU üzerinde (v100q kuyruğunda) çalıştırmak için cuda/cuda-10.2-v100q module dosyası yüklenmelidir. Bu amaçla aşağıdaki gibi bir betik kullanılabilir. Bu betiği /okyanus/progs/slurm_betikleri/tensorflow-1.3-gpu.sh adresinde bulabilirsiniz:


    #!/bin/bash
    
    #SBATCH -J "Tensorflow-GPU"              # isin adi
    
    #SBATCH -A hsaat                         # account / proje adi
    #SBATCH -p v100q                          # kuyruk (partition/queue) adi
    
    #SBATCH -n 1                             # cekirdek / islemci sayisi
    #SBATCH -N 1                             # bilgisayar sayisi
    #SBATCH --gres=gpu:4                     # ilave kaynak (4 gpu gerekli)
    
    module load cuda/cuda-10.2-v100q
    
    #calisacak gpu isi
    python programimiz.py
    


    İşinizin GPU üzerinde çalıştığından emin olmak için, işinizin çalıştığı makinaya ssh yapıp, orada nvidia-smi komutunu çalıştırmanızı tavsiye ederiz. GPU'da çalışan bir program için örnek nvidia-smi çıktısı aşağıdaki gibidir:


    nvidia-smi
    Tue Jan  3 09:15:50 2023
    +-----------------------------------------------------------------------------+
    | NVIDIA-SMI 515.65.01    Driver Version: 515.65.01    CUDA Version: 11.7     |
    |-------------------------------+----------------------+----------------------+
    | GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
    | Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
    |                               |                      |               MIG M. |
    |===============================+======================+======================|
    |   0  NVIDIA A100-SXM...  On   | 00000000:01:00.0 Off |                    0 |
    | N/A   47C    P0    98W / 500W |   3760MiB / 81920MiB |     51%      Default |
    |                               |                      |             Disabled |
    +-------------------------------+----------------------+----------------------+
    |   1  NVIDIA A100-SXM...  On   | 00000000:41:00.0 Off |                    0 |
    | N/A   49C    P0    90W / 500W |   3748MiB / 81920MiB |     94%      Default |
    |                               |                      |             Disabled |
    +-------------------------------+----------------------+----------------------+
    |   2  NVIDIA A100-SXM...  On   | 00000000:81:00.0 Off |                    0 |
    | N/A   54C    P0    91W / 500W |   3764MiB / 81920MiB |     90%      Default |
    |                               |                      |             Disabled |
    +-------------------------------+----------------------+----------------------+
    |   3  NVIDIA A100-SXM...  On   | 00000000:C1:00.0 Off |                    0 |
    | N/A   47C    P0    91W / 500W |   3736MiB / 81920MiB |     17%      Default |
    |                               |                      |             Disabled |
    +-------------------------------+----------------------+----------------------+
    
    +-----------------------------------------------------------------------------+
    | Processes:                                                                  |
    |  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
    |        ID   ID                                                   Usage      |
    |=============================================================================|
    |    0   N/A  N/A    620421      C   ...6_64-multicore-CUDA/namd3     3749MiB |
    |    1   N/A  N/A    620421      C   ...6_64-multicore-CUDA/namd3     3737MiB |
    |    2   N/A  N/A    620421      C   ...6_64-multicore-CUDA/namd3     3753MiB |
    |    3   N/A  N/A    620421      C   ...6_64-multicore-CUDA/namd3     3725MiB |
    +-----------------------------------------------------------------------------+
    

    GPU'da çalışmadığında ise, Processes: bölümününde No running processes found, GPU-Util sütununda ise 0% değerini görüyoruz:

    nvidia-smi
    Tue Jan  3 09:26:17 2023
    +-----------------------------------------------------------------------------+
    | NVIDIA-SMI 515.65.01    Driver Version: 515.65.01    CUDA Version: 11.7     |
    |-------------------------------+----------------------+----------------------+
    | GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
    | Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
    |                               |                      |               MIG M. |
    |===============================+======================+======================|
    |   0  NVIDIA A100-SXM...  On   | 00000000:01:00.0 Off |                    0 |
    | N/A   26C    P0    58W / 500W |      0MiB / 81920MiB |      0%      Default |
    |                               |                      |             Disabled |
    +-------------------------------+----------------------+----------------------+
    |   1  NVIDIA A100-SXM...  On   | 00000000:41:00.0 Off |                    0 |
    | N/A   25C    P0    59W / 500W |      0MiB / 81920MiB |      0%      Default |
    |                               |                      |             Disabled |
    +-------------------------------+----------------------+----------------------+
    |   2  NVIDIA A100-SXM...  On   | 00000000:81:00.0 Off |                    0 |
    | N/A   25C    P0    57W / 500W |      0MiB / 81920MiB |      0%      Default |
    |                               |                      |             Disabled |
    +-------------------------------+----------------------+----------------------+
    |   3  NVIDIA A100-SXM...  On   | 00000000:C1:00.0 Off |                    0 |
    | N/A   25C    P0    56W / 500W |      0MiB / 81920MiB |      0%      Default |
    |                               |                      |             Disabled |
    +-------------------------------+----------------------+----------------------+
    
    +-----------------------------------------------------------------------------+
    | Processes:                                                                  |
    |  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
    |        ID   ID                                                   Usage      |
    |=============================================================================|
    |  No running processes found                                                 |
    +-----------------------------------------------------------------------------+
    



    Anaconda ile Tensorflow, Keras, Caffe İşi Çalıştırmak

    Sariyer kümesinde bir çok Anaconda sürümü mevcuttur. Bu programlar aracılığı ile kurulan Tensorflow, Keras, Caffe gibi bir çok programı kullanabilirsiniz. Bu amaçla ilgili module dosyası yüklenmelidir:

    #!/bin/bash
    
    #SBATCH -J "Tensorflow-GPU"              # isin adi
    
    #SBATCH -A hsaat                         # account / proje adi
    #SBATCH -p v100q                          # kuyruk (partition/queue) adi
    
    #SBATCH -n 1                             # cekirdek / islemci sayisi
    #SBATCH -N 1                             # bilgisayar sayisi
    #SBATCH --gres=gpu:4                     # ilave kaynak (4 gpu gerekli)
    
    module load Anaconda/Anaconda3-5.3.0-python3.7
    
    #calisacak gpu isi
    python programimiz.py
    

    Anaconda sürümlerinde kurulu olmayan paketleri, conda virtual enviroment oluşturarak kurabilirsiniz. Bu konu aşağıdaki Sistemdeki Anaconda'ya Paket Yüklemek bölümünde anlatılmıştır.

    Kendi kullanıcınıza virtualenv ile Python Paketi Kurmak

    Sistemimizi kullanırken ihtiyaç duyacağınız programları, dilerseniz, kendi ev dizininize kurabilirsiniz. Bu kullanacağınız programın lisansının kısıtlı olması yada programda kendinize özel bir ayarlama yapacağınız durumlarda gerekebilir. Ancak bazen de python gibi büyük bir programı kendi ev dizininize kurmaya uğraşmak yerine sadece gereken ilave bir paketi kendi ev dizininize kurmak daha pratik bir çözüm olacaktır. Python bu amaçla pip paketlerinin kendi evdizininize kurulmasına izin vermektedir. Ancak sistemde kurulu pek çok python sürümü olduğundan ve farklı çözümleri farklı python sürümleri ile çalıştırmak isteyebileceğinizden, bizim tavsiyemiz virtualenv paketi ile belli dizinlere özel kurulumlar yapmanızdır.


    Python 3.4 ve sonrası için, virtualenv çözümünün standart kütüphaneye taşınan sürümü olan venv modülü ile kurmak gerekecektir. Python 3.4 ve sonrası için, virtualenv ilkprojem yerine python3 -m venv ilkprojem şeklinde kullanmalıyız.


    Bu amaçla öncelikle kullanacağımız komutlardan emin olmalıyız. Sistemdeki bir çok python sürümü ile birlikte bir çok pip ve virtualenv komutu da kuruludur. Biz kullanacağımız python sürümü ile gelen pip ve virtualenv komutlarını kullandığımızdan emin olmalıyız. Örneğin module load Python/python-2.7.14 komutu ile yüklediğimiz python sürümü bize aşağıdaki dizinlerdeki python, pip ve virtualenv komutlarını sağlamaktadır:


    $ which python
    /okyanus/progs/Python/Python-2.7.14/bin/python
    
    $ which pip
    /okyanus/progs/Python/Python-2.7.14/bin/pip
    
    $ which virtualenv
    /okyanus/progs/Python/Python-2.7.14/bin/virtualenv
    


    Görüleceği üzere hepsi aynı dizinde bulunmaktalar. Böylece doğru sürümlerinin kullanılır durumda olduğundan emin olduk.


    Python3.4 ve sonrası için virtualenv komutu yoktur, yerine python3 -m venv komutu kullanılmalıdır. Şayet, hata ile virtualenv komutunu kullanırsanız, Python 3 yerine Python 2 serisini yükleyecektir ve tum virtual environment hatalı oluşacaktır.


    Bazen python3 serisinde pip yerine pip3 komutunu yada ilave-moduller3 paketlerinde python komutundan pip komutunu çağırmamız da gerekebilir:

    $ pip3 list
    
    $ python -m pip list
    


    Sonrasında pip ile kurulu paketlerin listesini sorarak hem pip komutunun doğru çalıştığından emin olalım, hem de kurmaya çalıştığımız paketin zaten yüklü olmadığını görelim. Aşağıdaki komutun çıktı vermesi biraz uzun sürebilir, sabırlı olalım:


    $ pip list
    DEPRECATION: The default format will switch to columns in the future. You can use --format=(legacy|columns) (or define a format=(legacy|columns) 
    in your pip.conf under the [list] section) to disable this warning.
    absl-py (0.1.10)
    attrs (17.4.0)
    backports.weakref (1.0.post1)
    bleach (1.5.0)
    Cython (0.27.3)
    enum34 (1.1.6)
    funcsigs (1.0.2)
    futures (3.2.0)
    html5lib (0.9999999)
    Markdown (2.6.11)
    mock (2.0.0)
    nose (1.3.7)
    numpy (1.14.1)
    pandas (0.22.0)
    pbr (3.1.1)
    pip (9.0.1)
    pluggy (0.6.0)
    protobuf (3.5.1)
    py (1.5.2)
    pytest (3.4.1)
    python-dateutil (2.6.1)
    pytz (2018.3)
    setuptools (28.8.0)
    six (1.11.0)
    tensorflow (1.5.0)
    tensorflow-tensorboard (1.5.1)
    virtualenv (15.1.0)
    Werkzeug (0.14.1)
    wheel (0.30.0)
    


    Burada bu python sürümünde yüklü pip paketlerini gördük. Şimdi yükleme işine geçebiliriz. Öncelikle virtualenv ile kullanacağımız projeler için bir ortak dizin açalım, şart değilse de virtualenv ile çalıştığımızı hatırlamak açısından faydalı olur:


    $ mkdir virtualenv-projeleri
    
    $ cd virtualenv-projeleri/
    


    Sonrasında ilk virtualenv projemizi başlatabiliriz:

    [mercan@sariyer virtualenv-projeleri ]$ virtualenv ilkprojem
    New python executable in /okyanus/users/mercan/virtualenv-projeleri/ilkprojem/bin/python
    Installing setuptools, pip, wheel...done.
    
    [mercan@sariyer virtualenv-projeleri ]$ /okyanus/users/mercan/virtualenv-projeleri/ilkprojem/bin/python --version
    Python 2.7.14
    
    [mercan@sariyer virtualenv-projeleri ]$ /okyanus/users/mercan/virtualenv-projeleri/ilkprojem/bin/pip --version
    pip 9.0.1 from /okyanus/users/mercan/virtualenv-projeleri/ilkprojem/lib/python2.7/site-packages (python 2.7)
    


        



    Yukarıda görüleceği üzere mevcut python, pip, wheel, python-config, easy_install komutlarının bir kopyası bu proje dizinine konuldu ve bir artık buradaki kopyalarını kullanmalıyız. Bunun için gereken ayarların yapılması için activate komutu çalıştırılmalıdır:

    $ source /okyanus/users/mercan/virtualenv-projeleri/ilkprojem/bin/activate
    
    (ilkprojem) [mercan@sariyer virtualenv-projeleri ]$ which python
    ~/virtualenv-projeleri/ilkprojem/bin/python
    


    Komut satırının başındaki (ilkprojem) ilavesine dikkat ediniz. Bu ilkprojem virtualenv ayarlarının yüklü (activated) olduğunu göstermekte. Dahası python komutu kendi dizinimizdeki python'u çağırıyor. Artık kuruluma geçebiliriz. regex pip paketini kuralım:


    (ilkprojem) [mercan@sariyer virtualenv-projeleri ]$ pip install regex
    Collecting regex
      Downloading regex-2018.02.21.tar.gz (620kB)
        100% |████████████████████████████████| 624kB 1.3MB/s
    Building wheels for collected packages: regex
      Running setup.py bdist_wheel for regex ... done
      Stored in directory: /okyanus/users/mercan/.cache/pip/wheels/63/9b/ce/be27920ad7bd9d2a69038ff983cd9b0a053da42332f4e86361
    Successfully built regex
    Installing collected packages: regex
    Successfully installed regex-2018.2.21
    
    (ilkprojem) [mercan@sariyer virtualenv-projeleri ]$ pip list
    DEPRECATION: The default format will switch to columns in the future. You can use --format=(legacy|columns) (or define a format=(legacy|columns) 
    in your pip.conf under the [list] section) to disable this warning.
    pip (9.0.1)
    regex (2018.2.21)
    setuptools (38.5.2)
    wheel (0.30.0)
    


    Ve sonunda sorunsuzca istediğimiz paketi kurduk. pip list komutunun çıktısında kurulu paketi de görebiliyoruz. Burada birşeye dikkatinizi çekmek istiyorum, virtualenv öncesindeki "pip list" komutunun çıktısında gözüken paketler artık gözükmemekte. Sanki tamamen yeni bir python kurulumu yapmışız gibi aslında.


    İşimiz bitince bu virtualenv ortamını kapatmak için, deactivate komutu kullanmalıyız. Artık python komutu da eski şekline döner:


    (ilkprojem) [mercan@sariyer virtualenv-projeleri ]$ deactivate
    
    [mercan@sariyer virtualenv-projeleri ]$ which python
    /okyanus/progs/Python/Python-2.7.14/bin/python
    
    [mercan@sariyer virtualenv-projeleri ]$
    


    Burada bir dizine kendi paketlerimizi kurulmasını tamamladık. Ancak bu kurduğumuz python ve pip paketlerini kullanacağımız zaman da activate işlemini tekrar etmeliyiz:

    [mercan@sariyer ~ ]$ source /okyanus/users/mercan/virtualenv-projeleri/ilkprojem/bin/activate
    
    (ilkprojem) [mercan@sariyer ~ ]$
    


    Sisteme iş verirken de mutlaka bu activate komutu da iş betiğine eklenmelidir:


    #!/bin/bash
    
    #SBATCH -J "ilkprojem"              # isin adi
    
    #SBATCH -A hsaat                         # account / proje adi
    #SBATCH -p defq                          # kuyruk (partition/queue) adi
    
    #SBATCH -n 56                             # cekirdek / islemci sayisi
    #SBATCH -N 2                             # bilgisayar sayisi
    
    source /okyanus/users/mercan/virtualenv-projeleri/ilkprojem/bin/activate
    
    #calisacak python isi
    python programimiz.py
    
    deactivate
    

    Sistemdeki Anaconda'ya Paket Yüklemek

    Sistemdeki Anaconda Module'lerini kullanırken istediğimiz paketleri yüklemek için Anaconda'nın environment çözümünü (https://conda.io/docs/user-guide/tasks/manage-environments.html) kullanabiliriz. Aynı şekilde bu çözümü kendi ev dizininize kendinizin kurduğunuz Anaconda'da da kullanabilirsiniz.

        


    ahmet adında bir environment oluşturalım:

    $ conda create --name ahmet python=3.7.1
    Solving environment: done
    
    ## Package Plan ##
    
      environment location: /okyanus/users/mercan/.conda/envs/ahmet
    
      added / updated specs:
        - python=3.7.1
    
    
    The following NEW packages will be INSTALLED:
    
        ca-certificates: 2018.03.07-0
        certifi:         2018.11.29-py37_0
        libedit:         3.1.20170329-h6b74fdf_2
        libffi:          3.2.1-hd88cf55_4
        libgcc-ng:       8.2.0-hdf63c60_1
        libstdcxx-ng:    8.2.0-hdf63c60_1
        ncurses:         6.1-he6710b0_1
        openssl:         1.1.1a-h7b6447c_0
        pip:             18.1-py37_0
        python:          3.7.1-h0371630_7
        readline:        7.0-h7b6447c_5
        setuptools:      40.6.3-py37_0
        sqlite:          3.26.0-h7b6447c_0
        tk:              8.6.8-hbc83047_0
        wheel:           0.32.3-py37_0
        xz:              5.2.4-h14c3975_4
        zlib:            1.2.11-h7b6447c_3
    
    Proceed ([y]/n)? y
    
    Preparing transaction: done
    Verifying transaction: done
    Executing transaction: done
    #
    # To activate this environment, use
    #
    #     $ conda activate ahmet
    #
    # To deactivate an active environment, use
    #
    #     $ conda deactivate
    


    Burada python sürümünü vermek önemli, yoksa conda python ve diğer paketleri en son sürüme yükseltmeye çalışıyor! Aynı şekilde diğer paketlerin sürümleri sizin için önemli ise, belli bir sürümde kalmak istiyorsanız, onları da vermek gerek, çünkü sürüm numarasını vermediğimiz her paketin en son sürümü yüklenecektir.


    Sonrasında istediğimiz paketleri kurabiliriz. Mesala scipy paketini kuralım:

    conda install -n ahmet scipy
    Solving environment: done
    
    ## Package Plan ##
    
      environment location: /okyanus/users/mercan/.conda/envs/ahmet
    
      added / updated specs:
        - scipy
    
    
    The following NEW packages will be INSTALLED:
    
        blas:           1.0-mkl
        intel-openmp:   2019.1-144
        libgfortran-ng: 7.3.0-hdf63c60_0
        mkl:            2019.1-144
        mkl_fft:        1.0.6-py37hd81dba3_0
        mkl_random:     1.0.2-py37hd81dba3_0
        numpy:          1.15.4-py37h7e9f1db_0
        numpy-base:     1.15.4-py37hde5b4d6_0
        scipy:          1.1.0-py37h7c811a0_2
    
    Proceed ([y]/n)? y
    
    Preparing transaction: done
    Verifying transaction: done
    Executing transaction: done
    


    Kurabileceğimiz paketleri ve sürümlerini conda search komutu ile araştırabiliriz:

    conda search  cuda
    Loading channels: done
    No match found for: cuda. Search: *cuda*
    # Name                       Version           Build  Channel
    cudatoolkit                      9.0      h13b8566_0  pkgs/main
    cudatoolkit                      9.2               0  pkgs/main
    cudatoolkit                 10.0.130               0  pkgs/main
    cudatoolkit                 10.1.168               0  pkgs/main
    cudatoolkit                 10.1.243      h6bb024c_0  pkgs/main
    cudatoolkit                  10.2.89      hfd86e86_0  pkgs/main
    cudatoolkit                  10.2.89      hfd86e86_1  pkgs/main
    cudatoolkit                 11.0.221      h6bb024c_0  pkgs/main
    cudatoolkit                   11.3.1      h2bc3f7f_2  pkgs/main
    


    Şayet, istediğiniz paketi bulamazsanız, bir de conda-forge kanalına da bakınız:

    conda search -c conda-forge cuda
    Loading channels: done
    No match found for: cuda. Search: *cuda*
    # Name                       Version           Build  Channel
    cuda-python                   11.5.0 py310h122e73d_1  conda-forge
    cuda-python                   11.5.0 py310h122e73d_2  conda-forge
    cuda-python                   11.5.0  py37hcd2ae1e_0  conda-forge
    cuda-python                   11.5.0  py37hcd2ae1e_1  conda-forge
    cuda-python                   11.5.0  py37hcd2ae1e_2  conda-forge
    cuda-python                   11.5.0  py38h709712a_0  conda-forge
    . . .
    cudatoolkit                      9.0      h13b8566_0  pkgs/main
    cudatoolkit                      9.2               0  pkgs/main
    cudatoolkit                  9.2.148     h60dc4a4_10  conda-forge
    cudatoolkit                  9.2.148     h60dc4a4_11  conda-forge
    cudatoolkit                  9.2.148     h80a95b2_10  conda-forge
    cudatoolkit                  9.2.148      h80a95b2_6  conda-forge
    cudatoolkit                  9.2.148      h80a95b2_7  conda-forge
    cudatoolkit                  9.2.148      h80a95b2_8  conda-forge
    cudatoolkit                  9.2.148      h80a95b2_9  conda-forge
    cudatoolkit                 10.0.130               0  pkgs/main
    cudatoolkit                 10.0.130     h8c5a6a4_10  conda-forge
    cudatoolkit                 10.0.130     h8c5a6a4_11  conda-forge
    cudatoolkit                 10.0.130     hf841e97_10  conda-forge
    cudatoolkit                 10.0.130      hf841e97_6  conda-forge
    cudatoolkit                 10.0.130      hf841e97_7  conda-forge
    cudatoolkit                 10.0.130      hf841e97_8  conda-forge
    cudatoolkit                 10.0.130      hf841e97_9  conda-forge
    cudatoolkit                 10.1.168               0  pkgs/main
    cudatoolkit                 10.1.243     h036e899_10  conda-forge
    cudatoolkit                 10.1.243      h036e899_6  conda-forge
    cudatoolkit                 10.1.243      h036e899_7  conda-forge
    cudatoolkit                 10.1.243      h036e899_8  conda-forge
    cudatoolkit                 10.1.243      h036e899_9  conda-forge
    cudatoolkit                 10.1.243      h6bb024c_0  pkgs/main
    cudatoolkit                 10.1.243     h8cb64d8_10  conda-forge
    cudatoolkit                 10.1.243     h8cb64d8_11  conda-forge
    cudatoolkit                  10.2.89     h713d32c_10  conda-forge
    cudatoolkit                  10.2.89     h713d32c_11  conda-forge
    cudatoolkit                  10.2.89     h8f6ccaa_10  conda-forge
    cudatoolkit                  10.2.89      h8f6ccaa_6  conda-forge
    cudatoolkit                  10.2.89      h8f6ccaa_7  conda-forge
    cudatoolkit                  10.2.89      h8f6ccaa_8  conda-forge
    cudatoolkit                  10.2.89      h8f6ccaa_9  conda-forge
    cudatoolkit                  10.2.89      hfd86e86_0  pkgs/main
    cudatoolkit                  10.2.89      hfd86e86_1  pkgs/main
    cudatoolkit                   11.0.3     h15472ef_10  conda-forge
    cudatoolkit                   11.0.3      h15472ef_6  conda-forge
    cudatoolkit                   11.0.3      h15472ef_7  conda-forge
    cudatoolkit                   11.0.3      h15472ef_8  conda-forge
    cudatoolkit                   11.0.3      h15472ef_9  conda-forge
    cudatoolkit                   11.0.3     h88f8997_10  conda-forge
    cudatoolkit                   11.0.3     h88f8997_11  conda-forge
    cudatoolkit                 11.0.221      h6bb024c_0  pkgs/main
    cudatoolkit                   11.1.1     h6406543_10  conda-forge
    cudatoolkit                   11.1.1      h6406543_6  conda-forge
    cudatoolkit                   11.1.1      h6406543_7  conda-forge
    cudatoolkit                   11.1.1      h6406543_8  conda-forge
    cudatoolkit                   11.1.1      h6406543_9  conda-forge
    cudatoolkit                   11.1.1     ha002fc5_10  conda-forge
    cudatoolkit                   11.1.1     ha002fc5_11  conda-forge
    cudatoolkit                   11.2.0      h73cb219_7  conda-forge
    cudatoolkit                   11.2.0      h73cb219_8  conda-forge
    cudatoolkit                   11.2.0      h73cb219_9  conda-forge
    cudatoolkit                   11.2.1      h8204236_8  conda-forge
    cudatoolkit                   11.2.1      h8204236_9  conda-forge
    cudatoolkit                   11.2.2     hbe64b41_10  conda-forge
    cudatoolkit                   11.2.2     hbe64b41_11  conda-forge
    cudatoolkit                   11.2.2     he111cf0_10  conda-forge
    cudatoolkit                   11.2.2      he111cf0_8  conda-forge
    cudatoolkit                   11.2.2      he111cf0_9  conda-forge
    cudatoolkit                   11.3.1      h2bc3f7f_2  pkgs/main
    cudatoolkit                   11.3.1     h9edb442_10  conda-forge
    cudatoolkit                   11.3.1     h9edb442_11  conda-forge
    cudatoolkit                   11.3.1     ha36c431_10  conda-forge
    cudatoolkit                   11.3.1      ha36c431_9  conda-forge
    cudatoolkit                   11.4.2     h00f7ccd_10  conda-forge
    cudatoolkit                   11.4.2      h00f7ccd_9  conda-forge
    cudatoolkit                   11.4.2     h7a5bcfd_10  conda-forge
    cudatoolkit                   11.4.2     h7a5bcfd_11  conda-forge
    cudatoolkit                   11.5.0      h36ae40a_9  conda-forge
    cudatoolkit                   11.5.1     h59c8dcf_10  conda-forge
    cudatoolkit                   11.5.1     h59c8dcf_11  conda-forge
    cudatoolkit                   11.5.1     hcf5317a_10  conda-forge
    cudatoolkit                   11.5.1      hcf5317a_9  conda-forge
    cudatoolkit                   11.6.0     habf752d_10  conda-forge
    cudatoolkit                   11.6.0      habf752d_9  conda-forge
    cudatoolkit                   11.6.0     hecad31d_10  conda-forge
    cudatoolkit                   11.6.0     hecad31d_11  conda-forge
    cudatoolkit                   11.7.0     hd8887f6_10  conda-forge
    cudatoolkit                   11.7.0     hd8887f6_11  conda-forge
    cudatoolkit                   11.8.0     h37601d7_10  conda-forge
    cudatoolkit                   11.8.0     h37601d7_11  conda-forge
    cudatoolkit-dev                  9.2          py36_2  conda-forge
    . . .
    


    Bir environment'i kullanmak için aktive etmeliyiz:

    [mercan@sariyer ~ ]$ source activate ahmet
    (ahmet) [mercan@sariyer ~ ]$
    


    İşimiz bitince normale dönmek için deaktive etmeliyiz:

    (ahmet) [mercan@sariyer ~ ]$ source deactivate
    [mercan@sariyer ~ ]$
    


    İstersek conda paketleri yerine, pip paketlerini de yükleyebiliriz:

    [mercan@sariyer ~ ]$ source activate ahmet
    (ahmet) [mercan@sariyer ~ ]$ pip install regex
    Collecting regex
      Downloading https://files.pythonhosted.org/packages/16/07/ee3e02770ed456a088b90da7c9b1e9aa227e3c956d37b845cef2aab93764/regex-2018.11.22.tar.gz (648kB)
        100% |████████████████████████████████| 655kB 15.6MB/s
    Building wheels for collected packages: regex
      Running setup.py bdist_wheel for regex ... done
      Stored in directory: /okyanus/users/mercan/.cache/pip/wheels/56/b8/60/93cb6f51554e529246d89c994c1cba7b64d768ff1680062661
    Successfully built regex
    Installing collected packages: regex
    Successfully installed regex-2018.11.22
    (ahmet) [mercan@sariyer ~ ]$
    


    Mevcut environment'lerin listesine bakalım:

    [mercan@sariyer ~ ]$ conda info --envs
    # conda environments:
    #
    base                  *  /okyanus/progs/ANACONDA/anaconda3-2018.12-python3.7.1
    ahmet                    /okyanus/users/mercan/.conda/envs/ahmet
    


    Son olarak da ahmet environment'ini silelim:

    conda remove --name ahmet --all
    
    Remove all packages in environment /okyanus/users/mercan/.conda/envs/ahmet:
    
    
    ## Package Plan ##
    
      environment location: /okyanus/users/mercan/.conda/envs/ahmet
    
    
    The following packages will be REMOVED:
    
        blas:            1.0-mkl
        ca-certificates: 2018.03.07-0
        certifi:         2018.11.29-py37_0
        intel-openmp:    2019.1-144
        libedit:         3.1.20170329-h6b74fdf_2
        libffi:          3.2.1-hd88cf55_4
        libgcc-ng:       8.2.0-hdf63c60_1
        libgfortran-ng:  7.3.0-hdf63c60_0
        libstdcxx-ng:    8.2.0-hdf63c60_1
        mkl:             2019.1-144
        mkl_fft:         1.0.6-py37hd81dba3_0
        mkl_random:      1.0.2-py37hd81dba3_0
        ncurses:         6.1-he6710b0_1
        numpy:           1.15.4-py37h7e9f1db_0
        numpy-base:      1.15.4-py37hde5b4d6_0
        openssl:         1.1.1a-h7b6447c_0
        pip:             18.1-py37_0
        python:          3.7.1-h0371630_7
        readline:        7.0-h7b6447c_5
        scipy:           1.1.0-py37h7c811a0_2
        setuptools:      40.6.3-py37_0
        sqlite:          3.26.0-h7b6447c_0
        tk:              8.6.8-hbc83047_0
        wheel:           0.32.3-py37_0
        xz:              5.2.4-h14c3975_4
        zlib:            1.2.11-h7b6447c_3
    
    Proceed ([y]/n)? y