然而,另一个需要考虑的重要因素是,并非所有架构都与 cuDNN 兼容。由于几乎所有的深度学习库都使用 cuDNN 做卷积运算,这就限制了对于 Kepler GPU 或更好 GPU 的选择,即 GTX 600 系列或以上版本。最主要的是 Kepler GPU 通常会很慢。因此这意味着你应该选择 900 或 1000 系列 GPU 来获得好的性能。 为了大致搞清楚深度学习任务中的显卡性能比较情况,我创建了一个简单的 GPU 等价表。如何阅读它呢?例如,GTX 980 的速度相当于 0.35 个 Titan X Pascal,或是 Titan X Pascal 的速度几乎三倍快于 GTX 980。 请注意我没有所有这些显卡,也没有在所有这些显卡上跑过深度学习基准。这些对比源于显卡规格以及计算基准(有些加密货币挖掘任务需要比肩深度学习的计算能力)的比较。因此只是粗略的比较。真实数字会有点区别,但是一般说来,误差会是最小的,显卡的排序也没问题。 也请注意,没有充分利用 GPU 的小型网络会让更大 GPU 看起来不那么帅。比如,一个 GTX 1080 Ti 上的小型 LSTM(128 个隐藏单元;batch 大小大于 64)不会比在 GTX 1070 上运行速度明显快很多。为了实现表格中的性能差异,你需要运行更大的网络,比如 带有 1024 个隐藏单元(而且 batch 大小大于 64)的 LSTM。当选择适合自己的 GPU 时,记住这一点很重要。
粗略的比较用于大型深度学习网络 的 GPU 性能。 总的来说,我会推荐 GTX 1080 Ti 或者 GTX 1070。它们都是优秀的显卡,如果你有钱买得起 GTX 1080 Ti 那么就入手吧。GTX 1070 更加便宜点,但是仍然比普通的 GTX Titan X (Maxwell) 要快一些。较之 GTX 980 Ti,这两者都是更佳选择,考虑到增加的 11 G 以及 8G 的内存(而不是 6G)。 8G 的内存看起来有点小,但是对于许多任务来说,绰绰有余。比如,Kaggle 比赛,很多图像数据集、深度风格以及自然语言理解任务上,你遇到的麻烦会少很多。 GTX 1060 是最好的入门 GPU,如果你是首次尝试深度学习或者有时想要使用它来参加 Kaggle 比赛。我不会推荐 GTX 1060 带有 3G 内存的变体产品,既然其他 6G 内存产品的能力已经十分有限了。不过,对于很多应用来说,6G 内存足够了。GTX 1060 要比普通版本的 Titan X 慢一些,但是,在性能和价格方面(eBay 上)都可比肩 GTX980。 如果要说物有所值呢,10 系列设计真的很赞。GTX 1060、GTX 1070 和 GTX 1080 Ti 上都很出色。GTX 1060 适合初学者,GTX 1070 是某些产业和研究部门以及创业公司的好选择,GTX 1080 Ti 通杀高端选择。 一般说来,我不会推荐英伟达 Titan X (Pascal),就其性能而言,价格死贵了。继续使用 GTX 1080 Ti 吧。不过,英伟达 Titan X (Pascal) 在计算机视觉研究人员当中,还是有它的地位的,这些研究人员通常要研究大型数据集或者视频集。在这些领域里,每 1G 内存都不会浪费,英伟达 Titan X 比 GTX 1080 Ti 多 1G 的内存也会带来更多的处理优势。不过,就物有所值而言,这里推荐 eBay 上的 GTX Titan X(Maxwell)——有点慢,不过 12G 的内存哦。 不过,绝大多数研究人员使用 GTX 1080 Ti 就可以了。对于绝大多数研究和应用来说,额外 1G 内存其实是不必要的。 我个人会使用多个 GTX 1070 进行研究。我宁可多跑几个测试,哪怕速度比仅跑一个测试(这样速度会快些)慢一些。在自然语言处理任务中,内存限制并不像计算机视觉研究中那么明显。因此,GTX 1070 就够用了。我的研究任务以及运行实验的方式决定了最适合我的选择就是 GTX 1070。 当你挑选自己的 GPU 时,也应该如法炮制,进行甄选。考虑你的任务以及运行实验的方式,然后找个满足所有这些需求的 GPU。 (责任编辑:本港台直播) |