Hybrid Query Processing Engine for Coprocessing in Database Systems
HyPE
|
A DeviceSpecification defines a processing device that is available for performing computations. More...
#include <specification.hpp>
Public Member Functions | |
DeviceSpecification (ProcessingDeviceID pd, ProcessingDeviceType pd_t, ProcessingDeviceMemoryID pd_m) | |
constructs an DeviceSpecification object by assigning necessary informations to all fields of the object | |
ProcessingDeviceID | getProcessingDeviceID () const throw () |
returns the processing device's ProcessingDeviceID | |
ProcessingDeviceType | getDeviceType () const throw () |
returns the processing device's device type | |
ProcessingDeviceMemoryID | getMemoryID () const throw () |
returns the processing device's memory id | |
operator ProcessingDeviceID () | |
implicit conversion to an object of type ProcessingDeviceID | |
operator ProcessingDeviceType () | |
implicit conversion to an object of type ProcessingDeviceType | |
operator ProcessingDeviceMemoryID () | |
implicit conversion to an object of type ProcessingDeviceMemoryID | |
bool | operator== (const DeviceSpecification &) const |
overload of operator== for this class | |
Private Attributes | |
ProcessingDeviceID | pd_ |
the processing device's ProcessingDeviceID | |
ProcessingDeviceType | pd_t_ |
the processing device's device type | |
ProcessingDeviceMemoryID | pd_m_ |
the processing device's memory id |
It consists of a ProcessingDeviceID, which has to be unique, a processing device type (e.g., CPU or GPU) and a memory id, which specifies the memory that the processing devices uses. By convention, the host's CPU has the processing device id of 0, is a processing device from type CPU and the CPU's main memory has memory id 0.
Definition at line 131 of file specification.hpp.
hype::core::DeviceSpecification::DeviceSpecification | ( | ProcessingDeviceID | pd, |
ProcessingDeviceType | pd_t, | ||
ProcessingDeviceMemoryID | pd_m | ||
) |
pd | the unique id of the processing device |
pd_t | type of the processing device (e.g., CPU or GPU) |
pd_m | unique id of the memory the processing device uses |
Definition at line 96 of file specification.cpp.
ProcessingDeviceType hype::core::DeviceSpecification::getDeviceType | ( | ) | const throw () |
Definition at line 112 of file specification.cpp.
References pd_t_.
Referenced by hype::queryprocessing::getProcessingDevice(), and hype::queryprocessing::VirtualProcessingDevice::print().
ProcessingDeviceMemoryID hype::core::DeviceSpecification::getMemoryID | ( | ) | const throw () |
Definition at line 102 of file specification.cpp.
References pd_m_.
Referenced by hype::queryprocessing::VirtualProcessingDevice::print().
ProcessingDeviceID hype::core::DeviceSpecification::getProcessingDeviceID | ( | ) | const throw () |
Definition at line 107 of file specification.cpp.
References pd_.
Referenced by hype::core::Scheduler::ProcessingDevices::addDevice(), hype::core::Scheduler::ProcessingDevices::addSchedulingDecision(), hype_SchedulingDecision_getProcessingDeviceID(), hype::queryprocessing::VirtualProcessingDevice::print(), and hype::core::Scheduler::ProcessingDevices::removeSchedulingDecision().
hype::core::DeviceSpecification::operator ProcessingDeviceID | ( | ) |
Definition at line 117 of file specification.cpp.
References pd_.
hype::core::DeviceSpecification::operator ProcessingDeviceMemoryID | ( | ) |
Definition at line 123 of file specification.cpp.
References pd_m_.
hype::core::DeviceSpecification::operator ProcessingDeviceType | ( | ) |
Definition at line 120 of file specification.cpp.
References pd_t_.
bool hype::core::DeviceSpecification::operator== | ( | const DeviceSpecification & | dev_spec | ) | const |
Definition at line 127 of file specification.cpp.
Definition at line 172 of file specification.hpp.
Referenced by getProcessingDeviceID(), operator ProcessingDeviceID(), and operator==().
Definition at line 176 of file specification.hpp.
Referenced by getMemoryID(), operator ProcessingDeviceMemoryID(), and operator==().
Definition at line 174 of file specification.hpp.
Referenced by getDeviceType(), operator ProcessingDeviceType(), and operator==().