Skip to content

Commit 000c8b7

Browse files
[GPU] Allocate output mem using virtual memory in Windows even if physical memory is full (#30106)
### Details: - *primitive_inst tries to allocate output memory and it can alloc by using virtual memory even if physical memory is full on Windows. So the check_allocatable() func needs to return true.* - *...* ### Tickets: - *161457*
1 parent 0f59f97 commit 000c8b7

File tree

2 files changed

+12
-13
lines changed

2 files changed

+12
-13
lines changed

src/plugins/intel_gpu/src/runtime/ocl/ocl_engine.cpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,6 @@ bool ocl_engine::check_allocatable(const layout& layout, allocation_type type) {
165165
GPU_DEBUG_COUT << "[Warning] [GPU] Exceeded max size of memory allocation: " << "Required " << layout.bytes_count() << " bytes, already occupied : "
166166
<< used_mem << " bytes, but available memory size is " << get_max_memory_size() << " bytes" << std::endl;
167167
GPU_DEBUG_COUT << "Please note that performance might drop due to memory swap." << std::endl;
168-
return false;
169168
}
170169
#endif
171170

src/plugins/intel_gpu/src/runtime/ocl/ocl_stream.cpp

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -79,24 +79,24 @@ void set_arguments_impl(ocl_kernel_type& kernel,
7979
cl_int status = CL_INVALID_ARG_VALUE;
8080
switch (args[i].t) {
8181
case args_t::INPUT:
82-
if (args[i].index < data.inputs.size() && data.inputs[args[i].index]) {
83-
status = set_kernel_arg(kernel, i, data.inputs[args[i].index]);
84-
}
82+
OPENVINO_ASSERT(args[i].index < data.inputs.size() && data.inputs[args[i].index],
83+
"The allocated input memory is necessary to set kernel arguments.");
84+
status = set_kernel_arg(kernel, i, data.inputs[args[i].index]);
8585
break;
8686
case args_t::INPUT_OF_FUSED_PRIMITIVE:
87-
if (args[i].index < data.fused_op_inputs.size() && data.fused_op_inputs[args[i].index]) {
88-
status = set_kernel_arg(kernel, i, data.fused_op_inputs[args[i].index]);
89-
}
87+
OPENVINO_ASSERT(args[i].index < data.fused_op_inputs.size() && data.fused_op_inputs[args[i].index],
88+
"The allocated fused_op_input memory is necessary to set kernel arguments.");
89+
status = set_kernel_arg(kernel, i, data.fused_op_inputs[args[i].index]);
9090
break;
9191
case args_t::INTERNAL_BUFFER:
92-
if (args[i].index < data.intermediates.size() && data.intermediates[args[i].index]) {
93-
status = set_kernel_arg(kernel, i, data.intermediates[args[i].index]);
94-
}
92+
OPENVINO_ASSERT(args[i].index < data.intermediates.size() && data.intermediates[args[i].index],
93+
"The allocated intermediate memory is necessary to set kernel arguments.");
94+
status = set_kernel_arg(kernel, i, data.intermediates[args[i].index]);
9595
break;
9696
case args_t::OUTPUT:
97-
if (args[i].index < data.outputs.size() && data.outputs[args[i].index]) {
98-
status = set_kernel_arg(kernel, i, data.outputs[args[i].index]);
99-
}
97+
OPENVINO_ASSERT(args[i].index < data.outputs.size() && data.outputs[args[i].index],
98+
"The allocated output memory is necessary to set kernel arguments.");
99+
status = set_kernel_arg(kernel, i, data.outputs[args[i].index]);
100100
break;
101101
case args_t::WEIGHTS:
102102
status = set_kernel_arg(kernel, i, data.weights);

0 commit comments

Comments
 (0)