Difference between revisions of "GPU Build"
Jump to navigation
Jump to search
Line 5: | Line 5: | ||
}} | }} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | ==GPU== | + | ==Single vs. Multi GPU== |
*[https://www.nvidia.com/en-us/geforce/products/10series/geforce-gtx-1080-ti/ GTX 1080 Ti Specs] | *[https://www.nvidia.com/en-us/geforce/products/10series/geforce-gtx-1080-ti/ GTX 1080 Ti Specs] | ||
* Since we are using Tensorflow, it doesn't scale well to multiple GPUs for a single model | * Since we are using Tensorflow, it doesn't scale well to multiple GPUs for a single model | ||
Line 22: | Line 15: | ||
# If the network doesn't fit in the memory of one GPU (11 GB), | # If the network doesn't fit in the memory of one GPU (11 GB), | ||
* [https://devtalk.nvidia.com/default/topic/743814/cuda-setup-and-installation/advice-on-single-vs-multi-gpu-system/ Advice on single vs multi-GPU system] | * [https://devtalk.nvidia.com/default/topic/743814/cuda-setup-and-installation/advice-on-single-vs-multi-gpu-system/ Advice on single vs multi-GPU system] | ||
− | # | + | # Want to get two graphics cards, one for development, one (crappy card) for operating system [https://stackoverflow.com/questions/21911560/how-can-i-set-one-nvidia-graphics-card-for-display-and-other-for-computingin-li] |
*[https://stackoverflow.com/questions/37732196/tensorflow-difference-between-multi-gpus-and-distributed-tensorflow Different uses of multiple GPUs] | *[https://stackoverflow.com/questions/37732196/tensorflow-difference-between-multi-gpus-and-distributed-tensorflow Different uses of multiple GPUs] | ||
# Intra-model parallelism: If a model has long, independent computation paths, then you can split the model across multiple GPUs and have each compute a part of it. This requires careful understanding of the model and the computational dependencies. | # Intra-model parallelism: If a model has long, independent computation paths, then you can split the model across multiple GPUs and have each compute a part of it. This requires careful understanding of the model and the computational dependencies. | ||
Line 28: | Line 21: | ||
====TL;DR==== | ====TL;DR==== | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | Pros of multiple GPUs: | |
− | * | + | *Adds a lot of complexity. |
− | * | + | Cons of multiple GPUs: |
+ | *Possible speed ups if the network can be split up (and is big enough), but tensorflow is not great for this | ||
+ | *Able to train multiple networks at once (either copies of the same network or modified networks). Allows for running long experiments while running new ones | ||
+ | *More memory for huge batches (not sure if necessary) | ||
− | |||
− | |||
− | |||
− | |||
− | ==Misc.== | + | ==Misc. Parts== |
*Cases: Rosewill 1.0 mm Thickness 4U Rackmount Server Chassis, Black Metal/Steel RSV-L4000[https://www.amazon.com/gp/product/B0056OUTBK/ref=oh_aui_detailpage_o04_s00?ie=UTF8&psc=1] | *Cases: Rosewill 1.0 mm Thickness 4U Rackmount Server Chassis, Black Metal/Steel RSV-L4000[https://www.amazon.com/gp/product/B0056OUTBK/ref=oh_aui_detailpage_o04_s00?ie=UTF8&psc=1] | ||
*DVDRW (Needed?): Asus 24x DVD-RW Serial-ATA Internal OEM Optical Drive DRW-24B1ST [http://www.amazon.com/Asus-Serial-ATA-Internal-Optical-DRW-24B1ST/dp/B0033Z2BAQ/ref=sr_1_2?s=pc&ie=UTF8&qid=1452399113&sr=1-2&keywords=dvdrw] | *DVDRW (Needed?): Asus 24x DVD-RW Serial-ATA Internal OEM Optical Drive DRW-24B1ST [http://www.amazon.com/Asus-Serial-ATA-Internal-Optical-DRW-24B1ST/dp/B0033Z2BAQ/ref=sr_1_2?s=pc&ie=UTF8&qid=1452399113&sr=1-2&keywords=dvdrw] | ||
Line 64: | Line 51: | ||
==Single GPU Build== | ==Single GPU Build== | ||
+ | |||
+ | |||
==Double GPU Build== | ==Double GPU Build== | ||
[https://pcpartpicker.com/list/ZQjKf8 PC Partpicker build] missing a lot of pieces | [https://pcpartpicker.com/list/ZQjKf8 PC Partpicker build] missing a lot of pieces | ||
+ | |||
+ | ===Motherboard=== | ||
+ | *Should have enough PCIe slots | ||
+ | *Motherboards: ASUS Z10PE-D16 [http://www.newegg.com/Product/Product.aspx?Item=N82E16813132257&Tpk=N82E16813132257], Dual LGA 2011 R3, DDR4 - Up to 32GB RDIMM, 16 slots | ||
+ | |||
+ | ===CPU/Fan=== | ||
+ | *Not a huge deal, but used for data preparation | ||
+ | *If using multiple GPUs, at least one core (two threads) per GPU | ||
+ | *Chips: Intel Haswell Xeon e5-2620v3, 6 core @ 2.4ghz, 6x256k level 1 cache, 15mb level 2 cache, socket LGA 2011-v3 [https://www.amazon.com/gp/product/B00M1BUUMO/ref=oh_aui_detailpage_o04_s00?ie=UTF8&psc=1] | ||
+ | *CPU Fans: Intel Thermal Solution Cooling Fan for E5-2600 Processors BXSTS200C [https://www.amazon.com/gp/product/B007HJAM50/ref=oh_aui_detailpage_o03_s00?ie=UTF8&psc=1] | ||
+ | |||
+ | ===GPU=== | ||
+ | * 2x GTX 1080 Ti for computation | ||
+ | * Video card for monitor | ||
+ | |||
+ | ===RAM=== | ||
+ | *At least as much RAM as GPUs, probably twice that much (2 * Number of cards * 11 GB [GTX 1080 Ti size]) | ||
+ | *RAM: Crucial DDR4 RDIMM [http://www.newegg.com/Product/Product.aspx?Item=9SIA0ZX39C3002], 2133Mhz , Registered (buffered) and ECC, comes in packs of 4 x 32GB | ||
+ | |||
+ | ===PSU=== | ||
+ | *Some say 1.5x-2x wattage of GPU+CPU, some say GPU+CPU+100W | ||
+ | *PSUs: Corsair RM Series 850 Watt ATX/EPS 80PLUS Gold-Certified Power Supply - CP-9020056-NA RM850 [https://www.amazon.com/gp/product/B00EB7UIXM/ref=oh_aui_detailpage_o03_s00?ie=UTF8&psc=1] | ||
+ | |||
+ | ===Storage=== | ||
+ | *M.2 Drives: Samsung 950 PRO -Series 512GB PCIe NVMe - M.2 Internal SSD 2-Inch MZ-V5P512BW [https://www.amazon.com/gp/product/B01639694M/ref=oh_aui_detailpage_o03_s01?ie=UTF8&psc=1] | ||
+ | *Solid State Drives: Intel Solid-State Drive 750 Series SSDPEDMW400G4R5 PCI-Express 3.0 MLC - 400GB [https://www.amazon.com/gp/product/B00UHJJQAY/ref=oh_aui_detailpage_o07_s00?ie=UTF8&psc=1] or 800GB [https://www.amazon.com/gp/product/B013QP8XUE/ref=oh_aui_detailpage_o00_s00?ie=UTF8&psc=1] | ||
+ | *Regular Hard drives: WD Red 3TB NAS Hard Disk Drive [https://www.amazon.com/gp/product/B008JJLW4M/ref=oh_aui_detailpage_o00_s00?ie=UTF8&psc=1] - 5400 RPM Class SATA 6 Gb/s 64MB Cache 3.5 Inch |
Revision as of 13:26, 25 October 2017
GPU Build | |
---|---|
Project Information | |
Project Title | GPU Build |
Owner | Oliver Chang, Kyran Adams |
Start Date | |
Deadline | |
Primary Billing | |
Notes | |
Has project status | Active |
Copyright © 2016 edegan.com. All Rights Reserved. |
Contents
Single vs. Multi GPU
- GTX 1080 Ti Specs
- Since we are using Tensorflow, it doesn't scale well to multiple GPUs for a single model
- Which GPU for deep learning (04/09/2017)
- "I quickly found that it is not only very difficult to parallelize neural networks on multiple GPUs efficiently, but also that the speedup was only mediocre for dense neural networks. Small neural networks could be parallelized rather efficiently using data parallelism, but larger neural networks... received almost no speedup."
- Possible other use of multiple GPUs: training multiple different models simultaneously, "very useful for researchers, who want try multiple versions of a new algorithm at the same time."
- This source recommends GTX 1080 Tis and does cost analysis of it
- If the network doesn't fit in the memory of one GPU (11 GB),
- Want to get two graphics cards, one for development, one (crappy card) for operating system [1]
- Intra-model parallelism: If a model has long, independent computation paths, then you can split the model across multiple GPUs and have each compute a part of it. This requires careful understanding of the model and the computational dependencies.
- Replicated training: Start up multiple copies of the model, train them, and then synchronize their learning (the gradients applied to their weights & biases).
TL;DR
Pros of multiple GPUs:
- Adds a lot of complexity.
Cons of multiple GPUs:
- Possible speed ups if the network can be split up (and is big enough), but tensorflow is not great for this
- Able to train multiple networks at once (either copies of the same network or modified networks). Allows for running long experiments while running new ones
- More memory for huge batches (not sure if necessary)
Misc. Parts
- Cases: Rosewill 1.0 mm Thickness 4U Rackmount Server Chassis, Black Metal/Steel RSV-L4000[2]
- DVDRW (Needed?): Asus 24x DVD-RW Serial-ATA Internal OEM Optical Drive DRW-24B1ST [3]
- Keyboard and Mouse: AmazonBasics Wired Keyboard and Wired Mouse Bundle Pack [4]
Other Builds/Guides
- Deep learning box for $1700 (Discussion)
- A Full Hardware Guide to Deep Learning
- Cheap build
- How to build a GPU deep learning machine
- Deep Learning Computer Build useful tips, long
Questions to ask:
- Approx. dataset/batch size
- Network card?
- DVD drive?
Single GPU Build
Double GPU Build
PC Partpicker build missing a lot of pieces
Motherboard
- Should have enough PCIe slots
- Motherboards: ASUS Z10PE-D16 [5], Dual LGA 2011 R3, DDR4 - Up to 32GB RDIMM, 16 slots
CPU/Fan
- Not a huge deal, but used for data preparation
- If using multiple GPUs, at least one core (two threads) per GPU
- Chips: Intel Haswell Xeon e5-2620v3, 6 core @ 2.4ghz, 6x256k level 1 cache, 15mb level 2 cache, socket LGA 2011-v3 [6]
- CPU Fans: Intel Thermal Solution Cooling Fan for E5-2600 Processors BXSTS200C [7]
GPU
- 2x GTX 1080 Ti for computation
- Video card for monitor
RAM
- At least as much RAM as GPUs, probably twice that much (2 * Number of cards * 11 GB [GTX 1080 Ti size])
- RAM: Crucial DDR4 RDIMM [8], 2133Mhz , Registered (buffered) and ECC, comes in packs of 4 x 32GB
PSU
- Some say 1.5x-2x wattage of GPU+CPU, some say GPU+CPU+100W
- PSUs: Corsair RM Series 850 Watt ATX/EPS 80PLUS Gold-Certified Power Supply - CP-9020056-NA RM850 [9]
Storage
- M.2 Drives: Samsung 950 PRO -Series 512GB PCIe NVMe - M.2 Internal SSD 2-Inch MZ-V5P512BW [10]
- Solid State Drives: Intel Solid-State Drive 750 Series SSDPEDMW400G4R5 PCI-Express 3.0 MLC - 400GB [11] or 800GB [12]
- Regular Hard drives: WD Red 3TB NAS Hard Disk Drive [13] - 5400 RPM Class SATA 6 Gb/s 64MB Cache 3.5 Inch