使用vulkan前向计算全连接层时,程序会崩溃。全连接层的参数如下:
InnerProduct pattern 1 1 conv3_w_relu_conv3_w_splitncnn_1 pattern 0=128 1=1 2=799744
跟踪了下ncnn的源码,发现InnerProduct_vulkan::create_pipeline时创建的是pipeline_innerproduct_pack4和pipeline_innerproduct_pack4_lds_64,InnerProduct_vulkan::forward时,使用的却是pipeline_innerproduct_pack1to4,两边不一致,导致赋值的pipeline为空指针,进而崩溃。请问如何修改?
plus:崩溃时的堆栈如附图。
5条答案
按热度按时间jv4diomz1#
请提供下 param 文件
cnwbcb6i2#
param文件参看附件 hujian@ruijii.com From: nihui Date: 2019-08-01 16:39 To: Tencent/ncnn CC: hujian198; Author Subject: Re: [Tencent/ncnn] windows10 64bits Intel UHD 630 crash (#1160) 提供下 param 文件 — You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.
juud5qan3#
recognition.zip
6jygbczu4#
这个问题还没有解决吗?过了好长时间了。
6ljaweal5#
原因是 innerproduct 的输入数据,并非期望的 6248 长度,而是其他的长度,这可能是模型转换过程中,前面的 pooling 层导致的,需要提供原始的模型,以便检查模型转换的问题