我在运行gpt-2的时候得到了下面的错误。模型运行到最后,似乎工作了,但是有什么方法可以解决这个问题吗?
谢谢!
2019-11-19 17:13:26.908876: E tensorflow/stream_executor/cuda/cuda_driver.cc:893] failed to alloc 4294967296 bytes on host: CUDA_ERROR_OUT_OF_MEMORY: out of m
emory
2019-11-19 17:13:26.913409: W .\tensorflow/core/common_runtime/gpu/gpu_host_allocator.h:44] could not allocate pinned host memory of size: 4294967296
2019-11-19 17:13:26.917233: E tensorflow/stream_executor/cuda/cuda_driver.cc:893] failed to alloc 3865470464 bytes on host: CUDA_ERROR_OUT_OF_MEMORY: out of m
emory
2019-11-19 17:13:26.921787: W .\tensorflow/core/common_runtime/gpu/gpu_host_allocator.h:44] could not allocate pinned host memory of size: 3865470464
2019-11-19 17:13:26.925608: E tensorflow/stream_executor/cuda/cuda_driver.cc:893] failed to alloc 3478923264 bytes on host: CUDA_ERROR_OUT_OF_MEMORY: out of m
emory
2019-11-19 17:13:26.930056: W .\tensorflow/core/common_runtime/gpu/gpu_host_allocator.h:44] could not allocate pinned host memory of size: 3478923264
6条答案
按热度按时间nimxete21#
需要更多GPU内存。
降低你的批量大小,或者,如果它已经是1,你将不得不使用CPU /切换到一个更小的模型。
dfty9e192#
我用的是GTX 2080 ti。这张卡有意义吗?...
On Wed,Nov 20,2019 at 11:02 AM LoganDark @. *> wrote:你需要更多的GPU内存。降低你的批处理大小,或者,如果它已经是1,你将不得不使用CPU /切换到更小的模型。-你收到这个,因为你创作了线程。直接回复这封电子邮件,在GitHub上查看<#213?email_source=notifications&email_token= AAC 4SBA 4XAT 2 H2 N3 T7 P5 Y 6 TQUVNRVA 5CNFSM 4JPKIABKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEESQE6A#issuecomment-556073592>,或取消订阅< https://github.com/notifications/unsubscribe-auth/AAC4SBGN3FKU5LLWMHRZZQ3QUVNRVANCNFSM4JPKIABA >。
velaa5lx3#
在我看来,你真的应该使用工作站卡,而不是游戏卡。
就我个人而言,我一直不得不使用CPU,因为我还没有被恩与存在的英伟达神和我的笔记本电脑有一个AMD的GPU。专用,但它的AMD,所以TF不喜欢它。
CPU训练工作得很好(我大约每30秒得到一次迭代),它只是速度较慢,而且往往会使系统的其他部分也崩溃。
axr492tv4#
我知道这是旧的,但我想指出的是,你可以在Linux中的GTX 2080 ti上运行GPT-2干扰.但不能在Windows中运行。这样做的原因是.. Windows保留了一部分VRAM用于显示WDDM 2驱动程序中的内容/即使你没有连接到它的显示器/.这是你无法控制的..你不能切换到游戏卡上的仅计算驱动程序。在2080 ti上,它最终是~1GB的VRAM。在Linux上,根据您实际运行的内容,预留的VRAM数量要少得多。您几乎无法将最大的GPT-2型号装入11 GB卡中。因此,Windows中预留的1GB VRAM将其置于边缘。
hfyxw5xn5#
有没有可能以某种方式增加GPU内存?有很多空闲RAM!
尝试在视频卡RTX 2080 TI上训练模型1558 M,但出现内存错误!
v8wbuo2f6#
@sowich
GPU内存内置于GPU中,无法升级。如果您需要更多内存,您唯一的选择是购买具有更多内存的GPU,或购买第二个GPU,与现有GPU相同,并在SLI中运行它们(假设您的PC支持SLI)。
你的RAM被CPU占用。如果你在CPU而不是GPU上运行,你可能会看到RAM的使用率大幅上升。