From 42d7438879c815494e623e20daf42cae3eeaff8a Mon Sep 17 00:00:00 2001
From: Joseph Redmon <pjreddie@gmail.com>
Date: Fri, 10 Jul 2015 23:38:25 +0000
Subject: [PATCH] added jnet

---
 src/network_kernels.cu |    9 +++++----
 1 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/src/network_kernels.cu b/src/network_kernels.cu
index da21d63..36f5594 100644
--- a/src/network_kernels.cu
+++ b/src/network_kernels.cu
@@ -7,6 +7,7 @@
 #include "data.h"
 #include "utils.h"
 #include "params.h"
+#include "parser.h"
 
 #include "crop_layer.h"
 #include "connected_layer.h"
@@ -58,11 +59,12 @@
 {
     int i;
     float * original_input = state.input;
+    float * original_delta = state.delta;
     for(i = net.n-1; i >= 0; --i){
         layer l = net.layers[i];
         if(i == 0){
             state.input = original_input;
-            state.delta = 0;
+            state.delta = original_delta;
         }else{
             layer prev = net.layers[i-1];
             state.input = prev.output_gpu;
@@ -119,6 +121,7 @@
         cuda_push_array(*net.truth_gpu, y, y_size);
     }
     state.input = *net.input_gpu;
+    state.delta = 0;
     state.truth = *net.truth_gpu;
     state.train = 1;
     forward_network_gpu(net, state);
@@ -132,20 +135,18 @@
 float *get_network_output_layer_gpu(network net, int i)
 {
     layer l = net.layers[i];
+    cuda_pull_array(l.output_gpu, l.output, l.outputs*l.batch);
     if(l.type == CONVOLUTIONAL){
         return l.output;
     } else if(l.type == DECONVOLUTIONAL){
         return l.output;
     } else if(l.type == CONNECTED){
-        cuda_pull_array(l.output_gpu, l.output, l.outputs*l.batch);
         return l.output;
     } else if(l.type == DETECTION){
-        cuda_pull_array(l.output_gpu, l.output, l.outputs*l.batch);
         return l.output;
     } else if(l.type == MAXPOOL){
         return l.output;
     } else if(l.type == SOFTMAX){
-        pull_softmax_layer_output(l);
         return l.output;
     }
     return 0;

--
Gitblit v1.10.0