darknet源码学习:forward_network_gpu

更多darknet源代码学习笔记,参看:darknet源码学习:预测分类函数float *network_predict_gpu(network net, float *input)

forward_network_gpu()函数在network_kenels.cu中实现

void forward_network_gpu(network net, network_state state)
{
    state.workspace = net.workspace;
    int i;
    for(i = 0; i < net.n; ++i){
        state.index = i;
        layer l = net.layers[i];
        if(l.delta_gpu && state.train){
            //预测分类的时候,fill_ongpu函数不调用
            fill_ongpu(l.outputs * l.batch, 0, l.delta_gpu, 1);
        }
       
        l.forward_gpu(l, state);       

        if(net.wait_stream)
            cudaStreamSynchronize(get_cuda_stream());
        state.input = l.output_gpu;      
       
    }
   
}

darknet源码解析:network结构体之workspace

darknet源码解析:network结构体之n,本应用中使用cfg文件网络层数为27,即net.n=27。

预测分类的时候,fill_ongpu函数不调用,所以此处不作解析。

darknet源码解析:layer结构体之forward_gpu

 

 

 

发布了373 篇原创文章 · 获赞 151 · 访问量 33万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章