zoukankan      html  css  js  c++  java
  • Error : Failed to get convolution algorithm. This is probably because cuDNN failed to initialize

    记录一下:

    报错:# Error : Failed to get convolution algorithm. This is probably because cuDNN failed to initialize, so try looking to see if a warning log message was printed above 
    

      

    由于我用的是Flask框,在各个py文件之间相互引用、调用的过程中,可能会存在文件、模块先后顺序的问题,导致一系列的问题;

    因为我需要在flask框架中全局加载一次模型,进行多次预测,所以在框架初始化的时候,就需要load_model,之后在接口中进行预测,这就可能会导致一个问题是:是否能够保持模型和预测内容在一个会话中。

    从网上查找了一些方法之后,如果没有解耦,直接在一个视图函数中完成一系列的操作(不推荐,新手可能会这样),会避免这个错误,从而实现预测,但是当解耦了之后,就会存在上述说的一些问题,以及上面的报错。

    上面的报错解决方法是:

    # 添加内容:
    config.gpu_options.allow_growth = True
    # 最后代码类似这样的:
    
    config = tf.ConfigProto()
    config.gpu_options.allow_growth = True
    config.gpu_options.per_process_gpu_memory_fraction = 0.4
    session = tf.Session(config=config)
    with session.as_default():
        x1, x2, model_name = AnalysisData().analysis_config_json()
        model = load_model(model_name)
        a = model.predict((np.random.random((1, 32, 32, 3)) * 255).astype(np.int8))
    

      

    这样即解决了我上述的报错问题。

  • 相关阅读:
    使用积分图像统计元素
    compareHist
    均值平移算法
    课后作业-阅读任务-阅读提问-1
    《对软件工程课程的期望》
    自我介绍
    作业
    结对-结对编项目作业名称-需求分析
    对软件工程课程的期望
    自我介绍
  • 原文地址:https://www.cnblogs.com/aidenzdly/p/11804675.html
Copyright © 2011-2022 走看看