Python İşi Çalıştırmak
Sarıyer kümesinde Python işi çalıştırmak için, bir çok farklı seçenek mevcuttur:
- İşletim Sistemi ile gelen python sürümlerini kullanmak (module yüklemeden python ve python3.4 komutları ile),
- module komutu ile yükleyebileceğimiz python sürümlerinden birini kullanmak (MODULE Klavuzu,MODULE Seçimi),
- module komutu ile yükleyebileceğimiz Anaconda sürümlerinden biri ile gelen python sürümünü kullanmak,
- 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.
Önemli Uyarı!
Neredeyse tüm programlar paralel çalışabilsinler diye bir takım değişiklikler gerektirirler. Python ve python içinde kullanacağınız paketler için de durum aynıdır. Slurm'den çok sayıda işlemci ve veya makina istemeniz işinizin bu işlemcileri kullandığı anlamına gelmez. İşinizin birden çok işlemci kullanarak çalışmasını ayarlamanız ve kontrol etmeniz gerekecektir. |
TensorFlow İşi Çalıştırmak
Önemli Uyarı!
En son alınan 30 adet 1 GPU'lu sunucumuz (a100q kuyruğu, Her biri 1 adet 80GB A100 GPU içeriyor) ve 10 adet 4 GPU'lu sunucumuz (a100x4q kuyruğu, Her biri 4 adet 80GB A100 GPU içeriyor) kullanıma açılmıştır! Bu sunucuları kullanmak için, Altay kümesinde a100q ve a100x4q kuyruklarına iş verebilirsiniz. Altay kümesi hakkında bilgi için: Altay sistemine iş vermek sayfamıza bakınız. Sariyer kümesindeki v100q kuyruğunda sadece 1 sunucu mevcuttur ve çok daha eskidir. |
Sarıyer kümesinde tensorflow işi çalıştırmak için, bir çok farklı seçenek mevcuttur:
- kaynak kodudun doğrudan derlenmiş python sürümlerinde sadece cpu kullanarak,
- işletim sistemi ile gelen python sürümünde cpu ve gpu kullanarak,
- Yüklü bulunan Anaconda2 veya Anaconda3 sürümlerinde kurulu olanları kullanarak,
- Kendi ev dizininize, virtualenv ile özel bir python kurulumu yapıp, pip install ile kendi tensorflow'unuzu yükleyerek,
- 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
Önemli Uyarı!
GPU bulundurulan bir makinada yada v100q, a100q, a100x4 gibi GPU içeren bir kuyrukta bir işin çalışması, o programın GPU üzerinde çalışacağı anlamına gelmez. İşinizin GPU'da çalışmasını ayarlamanız ve kontrol etmeniz gerekecektir: https://www.tensorflow.org/guide/using_gpu |
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 |
+-----------------------------------------------------------------------------+
Önemli Uyarı!
Tensorflow işinizin birden fazla makinada çalışabilmesi için kodunuzda ilave değişiklikler yapmanız gerekecektir: https://www.tensorflow.org/guide/distributed_training https://www.tensorflow.org/deploy/distributed |
Önemli Uyarı!
Tensorflow işinizin bir makinada birden fazla GPU kullanarak çalışabilmesi için kodunuzda ilave değişiklikler yapmanız gerekecektir: https://www.tensorflow.org/guide/distributed_training https://www.tensorflow.org/api_docs/python/tf/distribute |
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)
Önemli Uyarı!
Python 3.4 ve sonrası için, virtualenv ilkprojem yerine python3 -m venv ilkprojem şeklinde kullanmalıyız. |
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.
Önemli Uyarı!
Anaconda, miniconda, conda kullanımı ilave bir yük getirmektedir. İşinizi daha performanslı çalıştırmanız için, python virtual environment çözümünü kullanmanızı tavsiye ederiz. |
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