Change forward function to return output pointer

This commit is contained in:
2024-03-12 20:50:49 +01:00
parent 2518138ef8
commit 9d91896f13
8 changed files with 69 additions and 113 deletions

View File

@@ -26,10 +26,10 @@ class Conv2d : public ILayer {
// Outputs
int outputSize;
void forward(const float* d_input, float* d_output);
void setWeights(const float* weights_input);
void setBiases(const float* biases_input);
void host_conv(const float* input, float* output);
float* forward(const float* d_input);
void setWeights(const float* weights_input);
void setBiases(const float* biases_input);
void host_conv(const float* input, float* output);
private:
// Inputs
@@ -47,6 +47,7 @@ class Conv2d : public ILayer {
std::vector<float> biases;
// Cuda
float* d_output;
float* d_weights;
float* d_biases;
float* d_padded;

View File

@@ -18,7 +18,7 @@ class Dense : public ILayer {
);
~Dense();
void forward(const float* d_input, float* d_output);
float* forward(const float* d_input);
void setWeights(const float* weights);
void setBiases(const float* biases);
@@ -26,6 +26,8 @@ class Dense : public ILayer {
int inputSize;
int outputSize;
float* d_output;
float* d_weights;
float* d_biases;

View File

@@ -6,24 +6,17 @@
namespace Layers {
enum Activation {
SIGMOID,
RELU,
NONE
};
enum Activation { SIGMOID, RELU, NONE };
enum Padding {
SAME,
VALID
};
enum Padding { SAME, VALID };
class ILayer {
public:
virtual ~ILayer() {}
virtual void forward(const float* input, float* output) = 0;
virtual void setWeights(const float* weights) = 0;
virtual void setBiases(const float* biases) = 0;
virtual float* forward(const float* input) = 0;
virtual void setWeights(const float* weights) = 0;
virtual void setBiases(const float* biases) = 0;
private:
virtual void initializeWeights() = 0;
@@ -34,6 +27,8 @@ class ILayer {
int inputSize;
int outputSize;
float* d_output;
float* d_weights;
float* d_biases;