init commit

This commit is contained in:
2025-12-21 15:41:59 +01:00
commit c86af91a92
36 changed files with 2399 additions and 0 deletions

40
include/A2Task2.h Normal file
View File

@@ -0,0 +1,40 @@
#pragma once
#include "helper.h"
#include <iostream>
#include <cstdlib>
#define VULKAN_HPP_DISPATCH_LOADER_DYNAMIC 1
#include <vulkan/vulkan.hpp>
#include <fstream>
#include <vector>
#include "initialization.h"
#include "utils.h"
#include "task_common.h"
class A2Task2Solution {
public:
float mstime;
virtual void prepare(const std::vector<uint> &input) = 0;
virtual void compute() = 0;
virtual std::vector<uint> result() const = 0;
virtual void cleanup() = 0;
};
class A2Task2 {
public:
A2Task2(uint problemSize);
A2Task2(std::vector<uint> input);
bool evaluateSolution(A2Task2Solution& solution);
size_t size() const {
return input.size();
}
private:
void computeReference();
std::vector<uint> input;
std::vector<uint> reference;
};