[ Skip to the content ]

Institute of Formal and Applied Linguistics Wiki


[ Back to the navigation ]

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
Next revision Both sides next revision
gpu [2017/03/16 16:30]
kocmanek [Servers with GPU units]
gpu [2017/03/16 17:10]
kocmanek [Basic commands]
Line 30: Line 30:
 === Individual acquisitions: NVIDIA Academic Hardware Grants == === Individual acquisitions: NVIDIA Academic Hardware Grants ==
  
-There is an easy way to get one high-end GPU: [[https://developer.nvidia.com/academic_gpu_seeding|ask NVIDIA for an Academic Hardware Grant]]. All it takes is writing a short grant application (at most ~2 hrs of work from scratch; if you have a GAUK, ~15 minutes of copy-pasting). Due to the GPU housing issues (mainly rack space and cooling), Milan F. said we should request the Tesla-line cards. If you want to have a look at an application, feel free to ask at hajicj@ufal.mff.cuni.cz :)+There is an easy way to get one high-end GPU: [[https://developer.nvidia.com/academic_gpu_seeding|ask NVIDIA for an Academic Hardware Grant]]. All it takes is writing a short grant application (at most ~2 hrs of work from scratch; if you have a GAUK, ~15 minutes of copy-pasting). Due to the GPU housing issues (mainly rack space and cooling), Milan F. said we should request the Tesla-line cards (2017 check with Milan about this issue). If you want to have a look at an application, feel free to ask at hajicj@ufal.mff.cuni.cz :)
  
 Take care, however, to coordinate the grant applications a little, so that not too many arrive from UFAL within a short time: these grants are explicitly //not// intended to build GPU clusters, they are "seeding" grants meant for researchers to try out GPUs (and fall in love with them, and buy a cluster later). If you are planning to submit the hardware grant, have submitted one, or have already been awarded one, please add yourself here. Take care, however, to coordinate the grant applications a little, so that not too many arrive from UFAL within a short time: these grants are explicitly //not// intended to build GPU clusters, they are "seeding" grants meant for researchers to try out GPUs (and fall in love with them, and buy a cluster later). If you are planning to submit the hardware grant, have submitted one, or have already been awarded one, please add yourself here.
Line 43: Line 43:
      
  
 +===== How to use cluster =====
 +
 +In this section will be explained how to use cluster properly. 
 +==== TensorFlow Environment ====
 +
 +Majority people at UFAL use TensorFlow. To start using it you need to create python virtual environment (virtualenv or use Anaconda for it). Into the environment you must place TensorFlow. The TF is either in CPU or GPU version.
 +
 +  pip install tensorflow
 +  pip install tensorflow-gpu
 +  
 +You can use prepared environment by adding into your ~/.bashrc
 +
 +  export PATH=/a/merkur3/kocmanek/ANACONDA/bin:$PATH
 +
 +And then you can activate your environment:
 +
 +  source activate tf1
 +  source activate tf1cpu
 +
 +This environment have TensorFlow 1.0 and all necessary requirements for NeuralMonkey.
 +
 +==== Using cluster ====
 +
 +Rule number one, always use the GPU queue (never log in machine by ssh). Always use qsub or qsubmit with proper arguments.
 +
 +For testing and using the cluster interactively you can use qrsh (this should not be used for long running experiments since the console is not closed on the end of the experiment). Following command will assign you a GPU and creates interactive console.
 +
 +  qrsh -q gpu.q -l gpu=1 -pty yes bash
 +  
 +For running experiments you must use qsub command:
 +
 +  qsub -q gpu.q -l gpu=1,gpu_cc_min3.5=1,gpu_ram=2G WHAT_SHOULD_BE_RUN
 +  
 +Cleaner way to use cluster is with /home/bojar/tools/shell/qsubmit
 +
 +  qsubmit --gpumem=2G --queue="gpu.q" WHAT_SHOULD_BE_RUN
 +  
 +==== Basic commands ====
 +
 +  lspci
 +    # is any such hardware there?
 +  nvidia-smi
 +    # more details, incl. running processes on the GPU
 +    # nvidia-* are typically located in /usr/bin
 +  watch nvidia-smi
 +    # For monitoring GPU activity in a separate terminal (thanks to Jindrich Libovicky for this!)
 +  nvcc --version
 +    # this should tell CUDA version
 +    # nvcc is typically installed in /usr/local/cuda/bin/
 +  theano-test
 +    # dela to vubec neco uzitecneho? :-)
 +    # theano-* are typically located in /usr/local/bin/
 +  /usr/local/cuda/samples/1_Utilities/deviceQuery/deviceQuery
 +    # shows CUDA capability etc.
 ===== Performance tests ===== ===== Performance tests =====
  
Line 48: Line 102:
  
 In the following table is the experiment conducted by Tom Kocmi. You can replicate experiment: /a/merkur3/kocmanek/Projects/GPUBenchmark (you will need to prepare environment of TensorFlow11 or use my ANACONDA) In the following table is the experiment conducted by Tom Kocmi. You can replicate experiment: /a/merkur3/kocmanek/Projects/GPUBenchmark (you will need to prepare environment of TensorFlow11 or use my ANACONDA)
- 
-I am preparing department-wide benchmark, but meanwhile the results for different experiment: 
- * Athena (GTX 1080) - 2 hodiny 32 minut 
- * Twister (Tesla K40c) - 6 hodin 46 minut 
  
 | machine | Setup; CPU/GPU; [[https://en.wikipedia.org/wiki/CUDA#Supported_GPUs|Capability]] [cc] | Walltime | Note | | machine | Setup; CPU/GPU; [[https://en.wikipedia.org/wiki/CUDA#Supported_GPUs|Capability]] [cc] | Walltime | Note |
Line 69: Line 119:
 | lucifer4   | 8x cores CPU                        134:41:22 |  | | lucifer4   | 8x cores CPU                        134:41:22 |  |
 | victoria   | GeForce GT 630; cc3.0              |        --- | never run, same GPU as Arc | | victoria   | GeForce GT 630; cc3.0              |        --- | never run, same GPU as Arc |
- 
- 
-A comparison with Ondrej's small data set: 
-  * dll2 (2xGPU) takes 13m for one reporting period 
-  * achilles2 (4xCPU with 8 CPUs reserved) takes 24m for one reporting period 
  
  

[ Back to the navigation ] [ Back to the content ]