Skip to content
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions src/libPMacc/include/eventSystem/tasks/Factory.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ namespace PMacc
* @param registeringTask optional pointer to an ITask which should be registered at the new task as an observer
*/
template <class TYPE, unsigned DIM>
EventTask createTaskCopyHostToDevice(const HostBuffer<TYPE, DIM>& src, DeviceBuffer<TYPE, DIM>& dst,
EventTask createTaskCopyHostToDevice(HostBuffer<TYPE, DIM>& src, DeviceBuffer<TYPE, DIM>& dst,
ITask *registeringTask = NULL);

/**
Expand All @@ -67,7 +67,7 @@ namespace PMacc
* @param registeringTask optional pointer to an ITask which should be registered at the new task as an observer
*/
template <class TYPE, unsigned DIM>
EventTask createTaskCopyDeviceToHost(const DeviceBuffer<TYPE, DIM>& src,
EventTask createTaskCopyDeviceToHost(DeviceBuffer<TYPE, DIM>& src,
HostBuffer<TYPE, DIM>& dst,
ITask *registeringTask = NULL);

Expand All @@ -78,7 +78,7 @@ namespace PMacc
* @param registeringTask optional pointer to an ITask which should be registered at the new task as an observer
*/
template <class TYPE, unsigned DIM>
EventTask createTaskCopyDeviceToDevice(const DeviceBuffer<TYPE, DIM>& src, DeviceBuffer<TYPE, DIM>& dst,
EventTask createTaskCopyDeviceToDevice( DeviceBuffer<TYPE, DIM>& src, DeviceBuffer<TYPE, DIM>& dst,
ITask *registeringTask = NULL);

/**
Expand Down
6 changes: 3 additions & 3 deletions src/libPMacc/include/eventSystem/tasks/Factory.tpp
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ namespace PMacc
* @param registeringTask optional pointer to an ITask which should be registered at the new task as an observer
*/
template <class TYPE, unsigned DIM>
inline EventTask Factory::createTaskCopyHostToDevice(const HostBuffer<TYPE, DIM>& src, DeviceBuffer<TYPE, DIM>& dst,
inline EventTask Factory::createTaskCopyHostToDevice(HostBuffer<TYPE, DIM>& src, DeviceBuffer<TYPE, DIM>& dst,
ITask *registeringTask)
{

Expand All @@ -66,7 +66,7 @@ namespace PMacc
* @param registeringTask optional pointer to an ITask which should be registered at the new task as an observer
*/
template <class TYPE, unsigned DIM>
inline EventTask Factory::createTaskCopyDeviceToHost(const DeviceBuffer<TYPE, DIM>& src,
inline EventTask Factory::createTaskCopyDeviceToHost(DeviceBuffer<TYPE, DIM>& src,
HostBuffer<TYPE, DIM>& dst,
ITask *registeringTask)
{
Expand All @@ -82,7 +82,7 @@ namespace PMacc
* @param registeringTask optional pointer to an ITask which should be registered at the new task as an observer
*/
template <class TYPE, unsigned DIM>
inline EventTask Factory::createTaskCopyDeviceToDevice(const DeviceBuffer<TYPE, DIM>& src, DeviceBuffer<TYPE, DIM>& dst,
inline EventTask Factory::createTaskCopyDeviceToDevice( DeviceBuffer<TYPE, DIM>& src, DeviceBuffer<TYPE, DIM>& dst,
ITask *registeringTask)
{
TaskCopyDeviceToDevice<TYPE, DIM>* task = new TaskCopyDeviceToDevice<TYPE, DIM > (src, dst);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,18 +34,18 @@ namespace PMacc
{

template <class TYPE, unsigned DIM>
class DeviceBufferIntern;
class DeviceBuffer;

template <class TYPE, unsigned DIM>
class TaskCopyDeviceToDeviceBase : public StreamTask
{
public:

TaskCopyDeviceToDeviceBase(const DeviceBuffer<TYPE, DIM>& src, DeviceBuffer<TYPE, DIM>& dst) :
TaskCopyDeviceToDeviceBase( DeviceBuffer<TYPE, DIM>& src, DeviceBuffer<TYPE, DIM>& dst) :
StreamTask()
{
this->source = (DeviceBufferIntern<TYPE, DIM>*) & src;
this->destination = (DeviceBufferIntern<TYPE, DIM>*) & dst;
this->source = & src;
this->destination = & dst;
}

virtual ~TaskCopyDeviceToDeviceBase()
Expand Down Expand Up @@ -95,8 +95,8 @@ namespace PMacc
this->getCudaStream()));
}

DeviceBufferIntern<TYPE, DIM> *source;
DeviceBufferIntern<TYPE, DIM> *destination;
DeviceBuffer<TYPE, DIM> *source;
DeviceBuffer<TYPE, DIM> *destination;
};


Expand All @@ -108,7 +108,7 @@ namespace PMacc
{
public:

TaskCopyDeviceToDevice(const DeviceBuffer<TYPE, DIM1>& src, DeviceBuffer<TYPE, DIM1>& dst) :
TaskCopyDeviceToDevice(DeviceBuffer<TYPE, DIM1>& src, DeviceBuffer<TYPE, DIM1>& dst) :
TaskCopyDeviceToDeviceBase<TYPE, DIM1>(src, dst)
{
}
Expand All @@ -131,7 +131,7 @@ namespace PMacc
{
public:

TaskCopyDeviceToDevice(const DeviceBuffer<TYPE, DIM2>& src, DeviceBuffer<TYPE, DIM2>& dst) :
TaskCopyDeviceToDevice( DeviceBuffer<TYPE, DIM2>& src, DeviceBuffer<TYPE, DIM2>& dst) :
TaskCopyDeviceToDeviceBase<TYPE, DIM2>(src, dst)
{
}
Expand All @@ -158,7 +158,7 @@ namespace PMacc
{
public:

TaskCopyDeviceToDevice(const DeviceBuffer<TYPE, DIM3>& src, DeviceBuffer<TYPE, DIM3>& dst) :
TaskCopyDeviceToDevice( DeviceBuffer<TYPE, DIM3>& src, DeviceBuffer<TYPE, DIM3>& dst) :
TaskCopyDeviceToDeviceBase<TYPE, DIM3>(src, dst)
{
}
Expand Down
20 changes: 10 additions & 10 deletions src/libPMacc/include/eventSystem/tasks/TaskCopyDeviceToHost.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -35,20 +35,20 @@ namespace PMacc
{

template <class TYPE, unsigned DIM>
class HostBufferIntern;
class HostBuffer;
template <class TYPE, unsigned DIM>
class DeviceBufferIntern;
class DeviceBuffer;

template <class TYPE, unsigned DIM>
class TaskCopyDeviceToHostBase : public StreamTask
{
public:

TaskCopyDeviceToHostBase(const DeviceBuffer<TYPE, DIM>& src, HostBuffer<TYPE, DIM>& dst) :
TaskCopyDeviceToHostBase( DeviceBuffer<TYPE, DIM>& src, HostBuffer<TYPE, DIM>& dst) :
StreamTask()
{
this->host = (HostBufferIntern<TYPE, DIM>*) & dst;
this->device = (DeviceBufferIntern<TYPE, DIM>*) & src;
this->host = & dst;
this->device = & src;
}

virtual ~TaskCopyDeviceToHostBase()
Expand Down Expand Up @@ -100,8 +100,8 @@ namespace PMacc
//std::cout<<"-----------fast D2H"<<std::endl;;
}

HostBufferIntern<TYPE, DIM> *host;
DeviceBufferIntern<TYPE, DIM> *device;
HostBuffer<TYPE, DIM> *host;
DeviceBuffer<TYPE, DIM> *device;
};

template <class TYPE, unsigned DIM>
Expand All @@ -112,7 +112,7 @@ namespace PMacc
{
public:

TaskCopyDeviceToHost(const DeviceBuffer<TYPE, DIM1>& src, HostBuffer<TYPE, DIM1>& dst) :
TaskCopyDeviceToHost( DeviceBuffer<TYPE, DIM1>& src, HostBuffer<TYPE, DIM1>& dst) :
TaskCopyDeviceToHostBase<TYPE, DIM1>(src, dst)
{
}
Expand All @@ -138,7 +138,7 @@ namespace PMacc
{
public:

TaskCopyDeviceToHost(const DeviceBuffer<TYPE, DIM2>& src, HostBuffer<TYPE, DIM2>& dst) :
TaskCopyDeviceToHost(DeviceBuffer<TYPE, DIM2>& src, HostBuffer<TYPE, DIM2>& dst) :
TaskCopyDeviceToHostBase<TYPE, DIM2>(src, dst)
{
}
Expand All @@ -165,7 +165,7 @@ namespace PMacc
{
public:

TaskCopyDeviceToHost(const DeviceBuffer<TYPE, DIM3>& src, HostBuffer<TYPE, DIM3>& dst) :
TaskCopyDeviceToHost( DeviceBuffer<TYPE, DIM3>& src, HostBuffer<TYPE, DIM3>& dst) :
TaskCopyDeviceToHostBase<TYPE, DIM3>(src, dst)
{
}
Expand Down
20 changes: 10 additions & 10 deletions src/libPMacc/include/eventSystem/tasks/TaskCopyHostToDevice.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -32,20 +32,20 @@ namespace PMacc
{

template <class TYPE, unsigned DIM>
class HostBufferIntern;
class HostBuffer;
template <class TYPE, unsigned DIM>
class DeviceBufferIntern;
class DeviceBuffer;

template <class TYPE, unsigned DIM>
class TaskCopyHostToDeviceBase : public StreamTask
{
public:

TaskCopyHostToDeviceBase(const HostBuffer<TYPE, DIM>& src, DeviceBuffer<TYPE, DIM>& dst) :
TaskCopyHostToDeviceBase(HostBuffer<TYPE, DIM>& src, DeviceBuffer<TYPE, DIM>& dst) :
StreamTask()
{
this->host = (HostBufferIntern<TYPE, DIM>*) & src;
this->device = (DeviceBufferIntern<TYPE, DIM>*) & dst;
this->host = & src;
this->device = & dst;
}

virtual ~TaskCopyHostToDeviceBase()
Expand Down Expand Up @@ -98,8 +98,8 @@ namespace PMacc
}


HostBufferIntern<TYPE, DIM> *host;
DeviceBufferIntern<TYPE, DIM> *device;
HostBuffer<TYPE, DIM> *host;
DeviceBuffer<TYPE, DIM> *device;

};

Expand All @@ -111,7 +111,7 @@ namespace PMacc
{
public:

TaskCopyHostToDevice(const HostBuffer<TYPE, DIM1>& src, DeviceBuffer<TYPE, DIM1>& dst) :
TaskCopyHostToDevice(HostBuffer<TYPE, DIM1>& src, DeviceBuffer<TYPE, DIM1>& dst) :
TaskCopyHostToDeviceBase<TYPE, DIM1>(src, dst)
{
}
Expand All @@ -131,7 +131,7 @@ namespace PMacc
{
public:

TaskCopyHostToDevice(const HostBuffer<TYPE, DIM2>& src, DeviceBuffer<TYPE, DIM2>& dst) :
TaskCopyHostToDevice( HostBuffer<TYPE, DIM2>& src, DeviceBuffer<TYPE, DIM2>& dst) :
TaskCopyHostToDeviceBase<TYPE, DIM2>(src, dst)
{
}
Expand All @@ -155,7 +155,7 @@ namespace PMacc
{
public:

TaskCopyHostToDevice(const HostBuffer<TYPE, DIM3>& src, DeviceBuffer<TYPE, DIM3>& dst) :
TaskCopyHostToDevice( HostBuffer<TYPE, DIM3>& src, DeviceBuffer<TYPE, DIM3>& dst) :
TaskCopyHostToDeviceBase<TYPE, DIM3>(src, dst)
{
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ namespace PMacc


template <class TYPE, unsigned DIM>
class DeviceBufferIntern;
class DeviceBuffer;

template <class TYPE, unsigned DIM>
class TaskGetCurrentSizeFromDevice : public StreamTask
Expand All @@ -48,7 +48,7 @@ class TaskGetCurrentSizeFromDevice : public StreamTask
TaskGetCurrentSizeFromDevice(DeviceBuffer<TYPE,DIM>& buffer):
StreamTask()
{
this->buffer = (DeviceBufferIntern<TYPE, DIM>*) & buffer;
this->buffer = & buffer;
}

virtual ~TaskGetCurrentSizeFromDevice()
Expand Down Expand Up @@ -82,7 +82,7 @@ class TaskGetCurrentSizeFromDevice : public StreamTask

private:

DeviceBufferIntern<TYPE, DIM> *buffer;
DeviceBuffer<TYPE, DIM> *buffer;
};

} //namespace PMacc
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ namespace PMacc
{

template <class TYPE, unsigned DIM>
class DeviceBufferIntern;
class DeviceBuffer;

template <class TYPE, unsigned DIM>
class TaskSetCurrentSizeOnDevice : public StreamTask
Expand All @@ -53,7 +53,7 @@ class TaskSetCurrentSizeOnDevice : public StreamTask
StreamTask(),
size(size)
{
this->destination = static_cast<DeviceBufferIntern<TYPE, DIM>*> (& dst);
this->destination = & dst;
}

virtual ~TaskSetCurrentSizeOnDevice()
Expand Down Expand Up @@ -91,7 +91,7 @@ class TaskSetCurrentSizeOnDevice : public StreamTask
activate();
}

DeviceBufferIntern<TYPE, DIM> *destination;
DeviceBuffer<TYPE, DIM> *destination;
const size_t size;
};

Expand Down
12 changes: 6 additions & 6 deletions src/libPMacc/include/eventSystem/tasks/TaskSetValue.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@
#include "memory/boxes/DataBox.hpp"

#include "eventSystem/EventSystem.hpp"
#include "memory/buffers/DeviceBufferIntern.hpp"
#include "memory/buffers/DeviceBuffer.hpp"
#include "eventSystem/tasks/StreamTask.hpp"
#include "mappings/simulation/EnvironmentController.hpp"

Expand Down Expand Up @@ -122,7 +122,7 @@ __global__ void kernelSetValue(DataBox data, const TYPE value, const DataSpace<D


template <class TYPE, unsigned DIM>
class DeviceBufferIntern;
class DeviceBuffer;

/*Set a value for a GridBuffer on the defice
* TYPE = data type (e.g. float, float2)
Expand All @@ -141,7 +141,7 @@ class TaskSetValue<TYPE,DIM,false> : public StreamTask
StreamTask(),
value(value)
{
this->destination = static_cast<DeviceBufferIntern<TYPE, DIM>*> (& dst);
this->destination = static_cast<DeviceBuffer<TYPE, DIM>*> (& dst);
}

virtual ~TaskSetValue()
Expand Down Expand Up @@ -195,7 +195,7 @@ class TaskSetValue<TYPE,DIM,false> : public StreamTask
this->activate();
}

DeviceBufferIntern<TYPE, DIM> *destination;
DeviceBuffer<TYPE, DIM> *destination;
//TYPE *valuePointer_dev;
TYPE *valuePointer_host;
TYPE value;
Expand All @@ -210,7 +210,7 @@ class TaskSetValue<TYPE,DIM,true> : public StreamTask
StreamTask(),
value(value)
{
this->destination = static_cast<DeviceBufferIntern<TYPE, DIM>*> (& dst);
this->destination = & dst;
}

virtual ~TaskSetValue()
Expand Down Expand Up @@ -261,7 +261,7 @@ class TaskSetValue<TYPE,DIM,true> : public StreamTask
this->activate();
}

DeviceBufferIntern<TYPE, DIM> *destination;
DeviceBuffer<TYPE, DIM> *destination;
TYPE value;
};

Expand Down
2 changes: 1 addition & 1 deletion src/libPMacc/include/memory/buffers/Buffer.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -151,7 +151,7 @@ namespace PMacc
__startOperation(ITask::TASK_HOST);
return *current_size;
}

/*! sets the current size (count of elements)
* @param newsize new current size
*/
Expand Down
4 changes: 4 additions & 0 deletions src/libPMacc/include/memory/buffers/DeviceBuffer.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -121,6 +121,8 @@ namespace PMacc
* @return pointer which point to device memory of current size
*/
virtual size_t* getCurrentSizeOnDevicePointer() = 0;

virtual size_t* getCurrentSizeHostSidePointer()=0;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please add some doc for these two


/**
* Sets current size of any dimension.
Expand All @@ -139,6 +141,8 @@ namespace PMacc
* @return internal pitched cuda pointer
*/
virtual const cudaPitchedPtr getCudaPitched() const = 0;

virtual size_t getPitch() const = 0;

/**
* Copies data from the given HostBuffer to this DeviceBuffer.
Expand Down
Loading