正如问题已经表明的那样,我对深度学习不熟悉.我知道没有GPU,模型的学习过程会很慢.如果我愿意等待,如果我只使用CPU,那会好吗?
在计算深度学习(和一般的神经网络)中执行的许多操作可以并行运行,这意味着它们可以独立地计算然后稍后聚合.这部分是因为大多数操作都在矢量上.
典型的消费者CPU具有4到8个核心,超线程允许它们分别被视为8或16个核心.服务器CPU可以分别有4到24个内核,8到48个线程.此外,大多数现代CPU具有SIMD(单指令多数据)扩展,允许它们在单个线程上并行执行向量操作.根据您使用的数据类型,8核CPU可以一次执行8*2*4 = 64到8*2*8 = 128个向量计算.
Nvidia的新1080ti拥有3584个CUDA核心,这实际上意味着它可以同时执行3584个矢量计算(超线程和SIMD不会在这里发挥作用).这比一个8核CPU多出56到28倍的操作.因此,无论您是训练单个网络还是多次调整元参数,它在GPU上的速度可能比CPU快得多.