Remove default constructor from Module

This commit is contained in:
2024-05-19 16:16:57 +02:00
parent 8bb2562c4c
commit e23ffe1ee1
2 changed files with 1 additions and 27 deletions

View File

@@ -11,8 +11,7 @@ namespace CUDANet {
class Module : public Layers::SequentialLayer {
public:
Module(const int inputSize, const int inputChannels, const int outputSize, const int outputChannels);
~Module();
virtual ~Module() = 0;
virtual float* forward(const float* d_input) = 0;
@@ -31,8 +30,6 @@ class Module : public Layers::SequentialLayer {
int outputSize;
int outputChannels;
float *d_output;
std::vector<std::pair<std::string, Layers::SequentialLayer*>> layers;
std::unordered_map<std::string, Layers::SequentialLayer*> layerMap;
};

View File

@@ -4,29 +4,6 @@
using namespace CUDANet;
Module::Module(
const int inputSize,
const int inputChannels,
const int outputSize,
const int outputChannels
)
: inputSize(inputSize),
inputChannels(inputChannels),
outputSize(outputSize),
outputChannels(outputChannels),
layers(std::vector<std::pair<std::string, Layers::SequentialLayer*>>()),
layerMap(std::unordered_map<std::string, Layers::SequentialLayer*>()) {
d_output = nullptr;
CUDA_CHECK(cudaMalloc(
(void**)&d_output,
sizeof(float) * outputSize * outputSize * outputChannels
));
}
Module::~Module() {
cudaFree(d_output);
}
void Module::addLayer(const std::string& name, Layers::SequentialLayer* layer) {
layers.push_back({ name, layer });
layerMap[name] = layer;