From 1d264dcb2bc25ad78f4331b2e9f642569ba1fa8f Mon Sep 17 00:00:00 2001
From: Alexey <AlexeyAB@users.noreply.github.com>
Date: Thu, 28 Dec 2017 12:55:05 +0000
Subject: [PATCH] Merge pull request #328 from Adesun/EOL
---
src/layer.c | 116 ++++++++++++++++++++++++++++++++++++++++++----------------
1 files changed, 84 insertions(+), 32 deletions(-)
diff --git a/src/layer.c b/src/layer.c
index 5fb5d24..b88c941 100644
--- a/src/layer.c
+++ b/src/layer.c
@@ -4,41 +4,93 @@
void free_layer(layer l)
{
- if(l.type == DROPOUT){
- if(l.rand) free(l.rand);
+ if (l.type == DROPOUT) {
+ if (l.rand) free(l.rand);
#ifdef GPU
- if(l.rand_gpu) cuda_free(l.rand_gpu);
+ if (l.rand_gpu) cuda_free(l.rand_gpu);
#endif
- return;
- }
- if(l.indexes) free(l.indexes);
- if(l.rand) free(l.rand);
- if(l.cost) free(l.cost);
- if(l.biases) free(l.biases);
- if(l.bias_updates) free(l.bias_updates);
- if(l.weights) free(l.weights);
- if(l.weight_updates) free(l.weight_updates);
- if(l.col_image) free(l.col_image);
- if(l.input_layers) free(l.input_layers);
- if(l.input_sizes) free(l.input_sizes);
- if(l.delta) free(l.delta);
- if(l.output) free(l.output);
- if(l.squared) free(l.squared);
- if(l.norms) free(l.norms);
+ return;
+ }
+ if (l.cweights) free(l.cweights);
+ if (l.indexes) free(l.indexes);
+ if (l.input_layers) free(l.input_layers);
+ if (l.input_sizes) free(l.input_sizes);
+ if (l.map) free(l.map);
+ if (l.rand) free(l.rand);
+ if (l.cost) free(l.cost);
+ if (l.state) free(l.state);
+ if (l.prev_state) free(l.prev_state);
+ if (l.forgot_state) free(l.forgot_state);
+ if (l.forgot_delta) free(l.forgot_delta);
+ if (l.state_delta) free(l.state_delta);
+ if (l.concat) free(l.concat);
+ if (l.concat_delta) free(l.concat_delta);
+ if (l.binary_weights) free(l.binary_weights);
+ if (l.biases) free(l.biases);
+ if (l.bias_updates) free(l.bias_updates);
+ if (l.scales) free(l.scales);
+ if (l.scale_updates) free(l.scale_updates);
+ if (l.weights) free(l.weights);
+ if (l.weight_updates) free(l.weight_updates);
+ if (l.delta) free(l.delta);
+ if (l.output) free(l.output);
+ if (l.squared) free(l.squared);
+ if (l.norms) free(l.norms);
+ if (l.spatial_mean) free(l.spatial_mean);
+ if (l.mean) free(l.mean);
+ if (l.variance) free(l.variance);
+ if (l.mean_delta) free(l.mean_delta);
+ if (l.variance_delta) free(l.variance_delta);
+ if (l.rolling_mean) free(l.rolling_mean);
+ if (l.rolling_variance) free(l.rolling_variance);
+ if (l.x) free(l.x);
+ if (l.x_norm) free(l.x_norm);
+ if (l.m) free(l.m);
+ if (l.v) free(l.v);
+ if (l.z_cpu) free(l.z_cpu);
+ if (l.r_cpu) free(l.r_cpu);
+ if (l.h_cpu) free(l.h_cpu);
+ if (l.binary_input) free(l.binary_input);
#ifdef GPU
- if(l.indexes_gpu) cuda_free((float *)l.indexes_gpu);
- //if(l.weights_gpu) cuda_free(l.weights_gpu); // duplicated
- //if(l.weight_updates_gpu) cuda_free(l.weight_updates_gpu); // duplicated
- if(l.col_image_gpu) cuda_free(l.col_image_gpu);
- if(l.weights_gpu) cuda_free(l.weights_gpu);
- if(l.biases_gpu) cuda_free(l.biases_gpu);
- if(l.weight_updates_gpu) cuda_free(l.weight_updates_gpu);
- if(l.bias_updates_gpu) cuda_free(l.bias_updates_gpu);
- if(l.output_gpu) cuda_free(l.output_gpu);
- if(l.delta_gpu) cuda_free(l.delta_gpu);
- if(l.rand_gpu) cuda_free(l.rand_gpu);
- if(l.squared_gpu) cuda_free(l.squared_gpu);
- if(l.norms_gpu) cuda_free(l.norms_gpu);
+ if (l.indexes_gpu) cuda_free((float *)l.indexes_gpu);
+
+ if (l.z_gpu) cuda_free(l.z_gpu);
+ if (l.r_gpu) cuda_free(l.r_gpu);
+ if (l.h_gpu) cuda_free(l.h_gpu);
+ if (l.m_gpu) cuda_free(l.m_gpu);
+ if (l.v_gpu) cuda_free(l.v_gpu);
+ if (l.prev_state_gpu) cuda_free(l.prev_state_gpu);
+ if (l.forgot_state_gpu) cuda_free(l.forgot_state_gpu);
+ if (l.forgot_delta_gpu) cuda_free(l.forgot_delta_gpu);
+ if (l.state_gpu) cuda_free(l.state_gpu);
+ if (l.state_delta_gpu) cuda_free(l.state_delta_gpu);
+ if (l.gate_gpu) cuda_free(l.gate_gpu);
+ if (l.gate_delta_gpu) cuda_free(l.gate_delta_gpu);
+ if (l.save_gpu) cuda_free(l.save_gpu);
+ if (l.save_delta_gpu) cuda_free(l.save_delta_gpu);
+ if (l.concat_gpu) cuda_free(l.concat_gpu);
+ if (l.concat_delta_gpu) cuda_free(l.concat_delta_gpu);
+ if (l.binary_input_gpu) cuda_free(l.binary_input_gpu);
+ if (l.binary_weights_gpu) cuda_free(l.binary_weights_gpu);
+ if (l.mean_gpu) cuda_free(l.mean_gpu);
+ if (l.variance_gpu) cuda_free(l.variance_gpu);
+ if (l.rolling_mean_gpu) cuda_free(l.rolling_mean_gpu);
+ if (l.rolling_variance_gpu) cuda_free(l.rolling_variance_gpu);
+ if (l.variance_delta_gpu) cuda_free(l.variance_delta_gpu);
+ if (l.mean_delta_gpu) cuda_free(l.mean_delta_gpu);
+ if (l.x_gpu) cuda_free(l.x_gpu);
+ if (l.x_norm_gpu) cuda_free(l.x_norm_gpu);
+ if (l.weights_gpu) cuda_free(l.weights_gpu);
+ if (l.weight_updates_gpu) cuda_free(l.weight_updates_gpu);
+ if (l.biases_gpu) cuda_free(l.biases_gpu);
+ if (l.bias_updates_gpu) cuda_free(l.bias_updates_gpu);
+ if (l.scales_gpu) cuda_free(l.scales_gpu);
+ if (l.scale_updates_gpu) cuda_free(l.scale_updates_gpu);
+ if (l.output_gpu) cuda_free(l.output_gpu);
+ if (l.delta_gpu) cuda_free(l.delta_gpu);
+ if (l.rand_gpu) cuda_free(l.rand_gpu);
+ if (l.squared_gpu) cuda_free(l.squared_gpu);
+ if (l.norms_gpu) cuda_free(l.norms_gpu);
#endif
}
--
Gitblit v1.10.0