7 fprintf(stderr,
"avg %4d x%4d x%4d -> %4d\n", w, h, c, c);
19 int output_size = l.
outputs * batch;
20 l.
output = calloc(output_size,
sizeof(
float));
21 l.
delta = calloc(output_size,
sizeof(
float));
27 l.output_gpu = cuda_make_array(l.
output, output_size);
28 l.delta_gpu = cuda_make_array(l.
delta, output_size);
44 for(b = 0; b < l.
batch; ++b){
45 for(k = 0; k < l.
c; ++k){
46 int out_index = k + b*l.
c;
48 for(i = 0; i < l.
h*l.
w; ++i){
49 int in_index = i + l.
h*l.
w*(k + b*l.
c);
61 for(b = 0; b < l.
batch; ++b){
62 for(k = 0; k < l.
c; ++k){
63 int out_index = k + b*l.
c;
64 for(i = 0; i < l.
h*l.
w; ++i){
65 int in_index = i + l.
h*l.
w*(k + b*l.
c);
void(* forward_gpu)(struct layer, struct network)
void(* backward_gpu)(struct layer, struct network)
void resize_avgpool_layer(avgpool_layer *l, int w, int h)
void(* forward)(struct layer, struct network)
avgpool_layer make_avgpool_layer(int batch, int w, int h, int c)
void backward_avgpool_layer(const avgpool_layer l, network net)
void(* backward)(struct layer, struct network)
void forward_avgpool_layer_gpu(avgpool_layer layer, network net)
void backward_avgpool_layer_gpu(avgpool_layer layer, network net)
void forward_avgpool_layer(const avgpool_layer l, network net)