Skip to content
Snippets Groups Projects
Commit 37ccae56 authored by 数学の武士's avatar 数学の武士
Browse files

hotfix

parent e19f3cb6
Branches
No related tags found
No related merge requests found
...@@ -2,8 +2,10 @@ ...@@ -2,8 +2,10 @@
#include <cstdlib> #include <cstdlib>
#include <cstring> #include <cstring>
namespace memproc
{
template<> template<>
bool memproc::dealloc<MemType::CPU>(void *&array, size_t &allocated_size) bool dealloc<MemType::CPU>(void *&array, size_t &allocated_size)
{ {
if(allocated_size > 0) if(allocated_size > 0)
{ {
...@@ -15,14 +17,14 @@ bool memproc::dealloc<MemType::CPU>(void *&array, size_t &allocated_size) ...@@ -15,14 +17,14 @@ bool memproc::dealloc<MemType::CPU>(void *&array, size_t &allocated_size)
} }
template<> template<>
bool memproc::dealloc<MemType::CPU>(void *&array) bool dealloc<MemType::CPU>(void *&array)
{ {
free(array); free(array);
return true; return true;
} }
template <> template <>
bool memproc::alloc<MemType::CPU>(void *&array, const size_t new_size) bool alloc<MemType::CPU>(void *&array, const size_t new_size)
{ {
array = malloc(new_size); array = malloc(new_size);
memset(array, 0, new_size); memset(array, 0, new_size);
...@@ -32,7 +34,7 @@ bool memproc::alloc<MemType::CPU>(void *&array, const size_t new_size) ...@@ -32,7 +34,7 @@ bool memproc::alloc<MemType::CPU>(void *&array, const size_t new_size)
template <> template <>
bool memproc::realloc<MemType::CPU>(void *&array, size_t &allocated_size, const size_t new_size) bool realloc<MemType::CPU>(void *&array, size_t &allocated_size, const size_t new_size)
{ {
if(new_size > allocated_size) if(new_size > allocated_size)
{ {
...@@ -46,9 +48,10 @@ bool memproc::realloc<MemType::CPU>(void *&array, size_t &allocated_size, const ...@@ -46,9 +48,10 @@ bool memproc::realloc<MemType::CPU>(void *&array, size_t &allocated_size, const
} }
template <> template <>
bool memproc::memcopy<MemType::CPU, MemType::CPU>(void *dst, const void* src, const size_t copy_elem_size) bool memcopy<MemType::CPU, MemType::CPU>(void *dst, const void* src, const size_t copy_elem_size)
{ {
memcpy(dst, src, copy_elem_size); memcpy(dst, src, copy_elem_size);
return true; return true;
} }
}
\ No newline at end of file
...@@ -2,8 +2,10 @@ ...@@ -2,8 +2,10 @@
#include <cuda.h> #include <cuda.h>
#include <cuda_runtime_api.h> #include <cuda_runtime_api.h>
namespace memproc
{
template<> template<>
bool memproc::dealloc<MemType::GPU>(void *&array, size_t &allocated_size) bool dealloc<MemType::GPU>(void *&array, size_t &allocated_size)
{ {
if(allocated_size > 0) if(allocated_size > 0)
{ {
...@@ -15,14 +17,14 @@ bool memproc::dealloc<MemType::GPU>(void *&array, size_t &allocated_size) ...@@ -15,14 +17,14 @@ bool memproc::dealloc<MemType::GPU>(void *&array, size_t &allocated_size)
} }
template<> template<>
bool memproc::dealloc<MemType::GPU>(void *&array) bool dealloc<MemType::GPU>(void *&array)
{ {
cudaFree(array); cudaFree(array);
return true; return true;
} }
template <> template <>
bool memproc::alloc<MemType::GPU>(void *&array, const size_t new_size) bool alloc<MemType::GPU>(void *&array, const size_t new_size)
{ {
cudaMalloc ( (void **)&array, new_size); cudaMalloc ( (void **)&array, new_size);
cudaMemset(array, 0, new_size); cudaMemset(array, 0, new_size);
...@@ -31,7 +33,7 @@ bool memproc::alloc<MemType::GPU>(void *&array, const size_t new_size) ...@@ -31,7 +33,7 @@ bool memproc::alloc<MemType::GPU>(void *&array, const size_t new_size)
} }
template <> template <>
bool memproc::realloc<MemType::GPU>(void *&array, size_t &allocated_size, const size_t new_size) bool realloc<MemType::GPU>(void *&array, size_t &allocated_size, const size_t new_size)
{ {
if(new_size > allocated_size) if(new_size > allocated_size)
{ {
...@@ -45,7 +47,7 @@ bool memproc::realloc<MemType::GPU>(void *&array, size_t &allocated_size, const ...@@ -45,7 +47,7 @@ bool memproc::realloc<MemType::GPU>(void *&array, size_t &allocated_size, const
} }
template <> template <>
bool memproc::memcopy<MemType::GPU, MemType::CPU>(void *dst, const void* src, const size_t copy_elem_size) bool memcopy<MemType::GPU, MemType::CPU>(void *dst, const void* src, const size_t copy_elem_size)
{ {
cudaMemcpy ( dst, src, copy_elem_size, cudaMemcpyHostToDevice); cudaMemcpy ( dst, src, copy_elem_size, cudaMemcpyHostToDevice);
...@@ -53,15 +55,16 @@ bool memproc::memcopy<MemType::GPU, MemType::CPU>(void *dst, const void* src, co ...@@ -53,15 +55,16 @@ bool memproc::memcopy<MemType::GPU, MemType::CPU>(void *dst, const void* src, co
} }
template <> template <>
bool memproc::memcopy<MemType::CPU, MemType::GPU>(void *dst, const void* src, const size_t copy_elem_size) bool memcopy<MemType::CPU, MemType::GPU>(void *dst, const void* src, const size_t copy_elem_size)
{ {
cudaMemcpy ( dst, src, copy_elem_size, cudaMemcpyDeviceToHost); cudaMemcpy ( dst, src, copy_elem_size, cudaMemcpyDeviceToHost);
return true; return true;
} }
template <> template <>
bool memproc::memcopy<MemType::GPU, MemType::GPU>(void *dst, const void* src, const size_t copy_elem_size) bool memcopy<MemType::GPU, MemType::GPU>(void *dst, const void* src, const size_t copy_elem_size)
{ {
cudaMemcpy ( dst, src, copy_elem_size, cudaMemcpyDeviceToDevice); cudaMemcpy ( dst, src, copy_elem_size, cudaMemcpyDeviceToDevice);
return true; return true;
} }
}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment