Fix matmul and max reduce memcheck errors

This commit is contained in:
2024-04-21 22:11:02 +02:00
parent 9a6152469a
commit bdbb3f978e
4 changed files with 16 additions and 41 deletions

View File

@@ -43,12 +43,12 @@ TEST(MatMulTest, MatVecMulTest) {
cudaStatus = cudaMemcpy(d_vector, vector.data(), sizeof(float) * w, cudaMemcpyHostToDevice);
EXPECT_EQ(cudaStatus, cudaSuccess);
int THREADS_PER_BLOCK = std::max(w, h);
int BLOCKS = 1;
int grid_size = (std::max(w, h) + BLOCK_SIZE - 1) / BLOCK_SIZE;
CUDANet::Utils::clear(d_output, h);
CUDANet::Kernels::mat_vec_mul<<<BLOCKS, THREADS_PER_BLOCK, sizeof(float) * w>>>(d_matrix, d_vector, d_output, w, h);
CUDANet::Kernels::mat_vec_mul<<<grid_size, BLOCK_SIZE>>>(d_matrix, d_vector, d_output, w, h);
cudaStatus = cudaDeviceSynchronize();
EXPECT_EQ(cudaStatus, cudaSuccess);
@@ -87,7 +87,7 @@ TEST(MatMulTest, MaxReduceTest) {
cudaStatus = cudaMalloc((void**)&d_input, sizeof(float) * n);
EXPECT_EQ(cudaStatus, cudaSuccess);
cudaStatus = cudaMalloc((void**)&d_output, sizeof(float));
cudaStatus = cudaMalloc((void**)&d_output, sizeof(float) * n);
EXPECT_EQ(cudaStatus, cudaSuccess);
cudaStatus = cudaMemcpy(d_input, input.data(), sizeof(float) * n, cudaMemcpyHostToDevice);

View File

@@ -3,6 +3,7 @@
#include <cuda_runtime.h>
#include <vector>
TEST(ActivationTest, SoftmaxTest1) {
const int inputSize = 5;
cudaError_t cudaStatus;
@@ -39,6 +40,9 @@ TEST(ActivationTest, SoftmaxTest1) {
cudaFree(d_input);
cudaDeviceReset();
cudaStatus = cudaGetLastError();
EXPECT_EQ(cudaStatus, cudaSuccess);
}
TEST(ActivationTest, SoftmaxTest2) {