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

TensorFlow不兼容GPU计算能力8.6的警告问题求助

问题解答

1. 为何每次新会话都会出现该警告?

你安装的这个适配无AVX CPU的TensorFlow预编译包,没有预先针对RTX 3060 Ti的计算能力8.6编译对应的CUDA内核二进制文件。每次启动新的Python会话时,TensorFlow会检测GPU的算力规格,发现没有匹配的预编译内核,就会弹出这个警告,提示要从PTX代码即时编译(JIT)CUDA内核。

而JIT编译的结果只保存在当前会话的内存里,关闭会话后就会被释放,所以每次新开会话都要重新做一次检测,自然每次都会触发这个警告,首次运行时还得重新编译,所以耗时久。

2. 如何消除此警告?

给你几个可行的解决办法:

  • 方法一:使用同时适配无AVX CPU和算力8.6 GPU的TensorFlow包
    找现成的或者自己编译一个TensorFlow wheel,要求同时支持无AVX的i7 950,以及算力8.6的GPU。自己编译的话,要在编译参数里指定--config=cuda和--cuda-compute-capabilities=8.6,同时关闭AVX相关的编译选项。
  • 方法二:直接屏蔽这个警告
    在代码开头加几行配置,把这个警告藏起来:
    import tensorflow as tf
    # 直接把TensorFlow的日志级别调到ERROR,屏蔽所有警告
    tf.get_logger().setLevel('ERROR')
    
    # 或者更精准地只屏蔽这个特定警告
    import warnings
    warnings.filterwarnings("ignore", category=UserWarning, message=r".*TensorFlow was not built with CUDA kernel binaries compatible with compute capability.*")
    
    注意:这种方法只是看不到警告了,JIT编译的问题还在,首次运行还是会慢。
  • 方法三:让JIT编译结果缓存到磁盘
    TensorFlow默认会把JIT编译的结果缓存到磁盘,但可能因为权限或路径问题没生效。你可以手动指定缓存目录,确保自己有读写权限:
    import os
    # 设置缓存路径,替换成你有权限的文件夹
    os.environ['CUDA_CACHE_PATH'] = 'C:/temp/cuda_cache'
    import tensorflow as tf
    
    首次编译完成后,后续新开会话就能读取缓存的编译结果,不仅速度会快很多,警告可能也会减少(或者至少不会再因为编译耗时久而影响使用)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 11:03:31