fix ps cache data prefetch

pull/10051/head
limingqi107 4 years ago
parent f75280f6c2
commit f223413ce9

@ -282,7 +282,6 @@ Status DeviceQueueOp::PushDataToGPU() {
bool is_open = false;
uint32_t handle = INVALID_HANDLE;
int64_t send_batch = 0;
bool ps_data_prefetch = false;
auto release_function = std::bind(&DeviceQueueOp::ReleaseData, this, std::placeholders::_1, std::placeholders::_2);
while (!items.empty() && !GpuBufferMgr::GetInstance().IsClosed()) {
if (!is_open) {
@ -298,9 +297,8 @@ Status DeviceQueueOp::PushDataToGPU() {
}
// Data prefetch only when PS mode enables cache.
if ((!ps_data_prefetch) && (items.size() > 0)) {
if (items.size() > 0) {
ps::PsDataPrefetch::GetInstance().PrefetchData(channel_name_, items[0].data_ptr_, items[0].data_len_);
ps_data_prefetch = true;
}
while (!GpuBufferMgr::GetInstance().IsClosed() && !TaskManager::FindMe()->Interrupted()) {
BlockQueueStatus_T ret = GpuBufferMgr::GetInstance().Push(handle, items, WAIT_TIME);

Loading…
Cancel
Save