You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

TensorFlow2中Tensor与已加载Keras Datasets的默认存放位置是GPU还是CPU?

TensorFlow 2 默认存储位置说明

普通Tensor的默认存放位置

  • 只要你安装的是GPU版TensorFlow,且CUDA、CUDNN环境配置没有问题,新创建的Tensor默认会直接放到可用的第一个GPU上。
  • 没有可用GPU环境的情况下,Tensor才会默认存放到CPU。
  • 特殊情况:如果某个运算没有对应的GPU实现,TensorFlow会自动把涉及的Tensor切回CPU处理,不需要手动调整。

你可以运行下面的代码快速验证Tensor的存放设备:

import tensorflow as tf
test_tensor = tf.constant([1, 2, 3])
print(test_tensor.device)

输出带GPU:0就说明存放在GPU,带CPU:0就是存放在CPU。

加载完成的Keras Datasets默认存放位置

  • 不管有没有可用GPU,Keras内置数据集加载完成后,默认全部存放在CPU内存中,不会自动迁移到GPU显存。
  • 这个设计是因为绝大多数数据集体积都远大于GPU显存上限,直接全部放显存很容易触发OOM报错,所以默认仅在训练时按批次把需要运算的批次数据拷贝到GPU。
  • 如果你的数据集本身非常小,想要全量放到GPU提速,可以手动调用tf.data.experimental.copy_to_device()方法转移整个数据集。

内容的提问来源于stack exchange,提问作者Jaidev Shah

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 04:30:00