32 virtual std::shared_ptr<memory::Memory<T> >
makeInstance()
const override;
65 virtual void copyToHost(T* bufferPointer,
size_t bufferLength)
const override;
71 virtual void copyFromHost(
const T* bufferPointer,
size_t bufferLength)
override;
146 size_t startY,
size_t endY,
147 size_t startZ,
size_t endZ,
148 T* output,
size_t outputSize)
override;
177 double factor)
override;
187 double power)
override;
190 std::shared_ptr<memory::Memory<T> >
getHostMemory()
override;
192 const std::shared_ptr<const memory::Memory<T> >
getHostMemory()
const override;
204 const ivec3& end)
const override;
217 const ivec3& end)
const override;
std::shared_ptr< memory::Memory< T > > getHostMemory() override
Copies the data to host if it is on GPU, otherwise makes a copy.
Definition: CudaMemory.cpp:339
virtual void copyFrom(const memory::Memory< T > &other) override
Copies the contents of the other memory area into this one.
Definition: CudaMemory.cpp:98
Definition: CudaMemory.hpp:21
const size_t ny
Definition: Memory.hpp:341
virtual void operator+=(const memory::Memory< T > &other) override
Definition: CudaMemory.cpp:166
virtual void makeZero() override
Definition: CudaMemory.cpp:259
virtual void operator*=(const memory::Memory< T > &other) override
Definition: CudaMemory.cpp:181
virtual void subtractPower(const memory::Memory< T > &other, double power) override
Definition: CudaMemory.cpp:332
virtual bool isOnHost() const
Definition: CudaMemory.cpp:120
double real
Definition: types.hpp:65
virtual real getTotalVariation(int p, const ivec3 &start, const ivec3 &end) const override
Definition: CudaMemory.cpp:360
Definition: Memory.hpp:28
const size_t nx
Definition: Memory.hpp:340
virtual void operator-=(const memory::Memory< T > &other) override
Definition: CudaMemory.cpp:195
virtual T * getPointer() override
Definition: CudaMemory.cpp:128
virtual void copyInternalCells(size_t startX, size_t endX, size_t startY, size_t endY, size_t startZ, size_t endZ, T *output, size_t outputSize) override
copyInternalCells copies the internal cells into the memory area This is ideal for removing ghost cel...
Definition: CudaMemory.cpp:264
virtual void operator/=(const memory::Memory< T > &other) override
Definition: CudaMemory.cpp:209
const size_t nz
Definition: Memory.hpp:342
CudaMemory(size_t nx, size_t ny=1, size_t nz=1)
Definition: CudaMemory.cpp:44
virtual void copyFromHost(const T *bufferPointer, size_t bufferLength) override
Definition: CudaMemory.cpp:154
virtual void addPower(const memory::Memory< T > &other, double power) override
Definition: CudaMemory.cpp:318
Various utility functions to implement the tecno flux.
Definition: types.hpp:30
float p
Definition: sodshocktube.py:5
virtual std::shared_ptr< memory::Memory< T > > makeInstance() const override
Clones the memory area, but does not copy the content
Definition: CudaMemory.cpp:77
virtual ~CudaMemory()
Definition: CudaMemory.cpp:86
virtual void copyToHost(T *bufferPointer, size_t bufferLength) const override
Definition: CudaMemory.cpp:144
virtual void addLinearCombination(T a1, T a2, const memory::Memory< T > &v2, T a3, const memory::Memory< T > &v3, T a4, const memory::Memory< T > &v4, T a5, const memory::Memory< T > &v5) override
Definition: CudaMemory.cpp:293