Skip to content

Commit 83cab52

Browse files
Reduce unnecessary copies of memory properties
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
1 parent a20c0b7 commit 83cab52

File tree

7 files changed

+17
-18
lines changed

7 files changed

+17
-18
lines changed

opencl/source/mem_obj/buffer.cpp

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ ValidateInputAndCreateBufferFunc validateInputAndCreateBuffer = Buffer::validate
4343
} // namespace BufferFunctions
4444

4545
Buffer::Buffer(Context *context,
46-
MemoryProperties memoryProperties,
46+
const MemoryProperties &memoryProperties,
4747
cl_mem_flags flags,
4848
cl_mem_flags_intel flagsIntel,
4949
size_t size,
@@ -175,7 +175,7 @@ Buffer *Buffer::create(Context *context,
175175
}
176176

177177
Buffer *Buffer::create(Context *context,
178-
MemoryProperties memoryProperties,
178+
const MemoryProperties &memoryProperties,
179179
cl_mem_flags flags,
180180
cl_mem_flags_intel flagsIntel,
181181
size_t size,
@@ -456,7 +456,7 @@ Buffer *Buffer::createSharedBuffer(Context *context, cl_mem_flags flags, Sharing
456456
return sharedBuffer;
457457
}
458458

459-
void Buffer::checkMemory(MemoryProperties memoryProperties,
459+
void Buffer::checkMemory(const MemoryProperties &memoryProperties,
460460
size_t size,
461461
void *hostPtr,
462462
cl_int &errcodeRet,
@@ -506,7 +506,6 @@ void Buffer::checkMemory(MemoryProperties memoryProperties,
506506
errcodeRet = CL_INVALID_HOST_PTR;
507507
}
508508
}
509-
return;
510509
}
511510

512511
AllocationType Buffer::getGraphicsAllocationTypeAndCompressionPreference(const MemoryProperties &properties, Context &context,
@@ -669,7 +668,7 @@ bool Buffer::isReadWriteOnCpuPreferred(void *ptr, size_t size, const Device &dev
669668
}
670669

671670
Buffer *Buffer::createBufferHw(Context *context,
672-
MemoryProperties memoryProperties,
671+
const MemoryProperties &memoryProperties,
673672
cl_mem_flags flags,
674673
cl_mem_flags_intel flagsIntel,
675674
size_t size,

opencl/source/mem_obj/buffer.h

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ class MemoryManager;
2727
struct EncodeSurfaceStateArgs;
2828

2929
using BufferCreatFunc = Buffer *(*)(Context *context,
30-
MemoryProperties memoryProperties,
30+
const MemoryProperties &memoryProperties,
3131
cl_mem_flags flags,
3232
cl_mem_flags_intel flagsIntel,
3333
size_t size,
@@ -79,7 +79,7 @@ class Buffer : public MemObj {
7979
cl_int &errcodeRet);
8080

8181
static Buffer *create(Context *context,
82-
MemoryProperties properties,
82+
const MemoryProperties &properties,
8383
cl_mem_flags flags,
8484
cl_mem_flags_intel flagsIntel,
8585
size_t size,
@@ -92,7 +92,7 @@ class Buffer : public MemObj {
9292
MultiGraphicsAllocation multiGraphicsAllocation);
9393

9494
static Buffer *createBufferHw(Context *context,
95-
MemoryProperties memoryProperties,
95+
const MemoryProperties &memoryProperties,
9696
cl_mem_flags flags,
9797
cl_mem_flags_intel flagsIntel,
9898
size_t size,
@@ -163,11 +163,11 @@ class Buffer : public MemObj {
163163

164164
bool isCompressed(uint32_t rootDeviceIndex) const;
165165

166-
static bool validateHandleType(MemoryProperties &memoryProperties, UnifiedSharingMemoryDescription &extMem);
166+
static bool validateHandleType(const MemoryProperties &memoryProperties, UnifiedSharingMemoryDescription &extMem);
167167

168168
protected:
169169
Buffer(Context *context,
170-
MemoryProperties memoryProperties,
170+
const MemoryProperties &memoryProperties,
171171
cl_mem_flags flags,
172172
cl_mem_flags_intel flagsIntel,
173173
size_t size,
@@ -180,7 +180,7 @@ class Buffer : public MemObj {
180180

181181
Buffer();
182182

183-
static void checkMemory(MemoryProperties memoryProperties,
183+
static void checkMemory(const MemoryProperties &memoryProperties,
184184
size_t size,
185185
void *hostPtr,
186186
cl_int &errcodeRet,
@@ -202,7 +202,7 @@ template <typename GfxFamily>
202202
class BufferHw : public Buffer {
203203
public:
204204
BufferHw(Context *context,
205-
MemoryProperties memoryProperties,
205+
const MemoryProperties &memoryProperties,
206206
cl_mem_flags flags,
207207
cl_mem_flags_intel flagsIntel,
208208
size_t size,
@@ -219,7 +219,7 @@ class BufferHw : public Buffer {
219219
bool isReadOnlyArgument, const Device &device, bool useGlobalAtomics, bool areMultipleSubDevicesInContext) override;
220220

221221
static Buffer *create(Context *context,
222-
MemoryProperties memoryProperties,
222+
const MemoryProperties &memoryProperties,
223223
cl_mem_flags flags,
224224
cl_mem_flags_intel flagsIntel,
225225
size_t size,

opencl/source/mem_obj/buffer_linux.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
#include "opencl/source/mem_obj/buffer.h"
99

1010
namespace NEO {
11-
bool Buffer::validateHandleType(MemoryProperties &memoryProperties, UnifiedSharingMemoryDescription &extMem) {
11+
bool Buffer::validateHandleType(const MemoryProperties &memoryProperties, UnifiedSharingMemoryDescription &extMem) {
1212
if (memoryProperties.handleType == static_cast<uint64_t>(UnifiedSharingHandleType::LinuxFd)) {
1313
extMem.type = UnifiedSharingHandleType::LinuxFd;
1414
return true;

opencl/source/mem_obj/buffer_windows.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
#include "opencl/source/mem_obj/buffer.h"
99

1010
namespace NEO {
11-
bool Buffer::validateHandleType(MemoryProperties &memoryProperties, UnifiedSharingMemoryDescription &extMem) {
11+
bool Buffer::validateHandleType(const MemoryProperties &memoryProperties, UnifiedSharingMemoryDescription &extMem) {
1212
if (memoryProperties.handleType == static_cast<uint64_t>(UnifiedSharingHandleType::Win32Nt)) {
1313
extMem.type = UnifiedSharingHandleType::Win32Nt;
1414
return true;

opencl/test/unit_test/mem_obj/buffer_tests.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -902,7 +902,7 @@ TEST_P(NoHostPtr, GivenNoHostPtrWhenHwBufferCreationFailsThenReturnNullptr) {
902902
bufferFuncsBackup[i] = bufferFactory[i];
903903
bufferFactory[i].createBufferFunction =
904904
[](Context *,
905-
MemoryProperties,
905+
const MemoryProperties &,
906906
cl_mem_flags,
907907
cl_mem_flags_intel,
908908
size_t,

shared/source/helpers/memory_properties_helpers.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ class MemoryPropertiesHelper {
2222
};
2323

2424
static AllocationProperties getAllocationProperties(
25-
uint32_t rootDeviceIndex, MemoryProperties memoryProperties, bool allocateMemory, size_t size,
25+
uint32_t rootDeviceIndex, const MemoryProperties &memoryProperties, bool allocateMemory, size_t size,
2626
AllocationType type, bool multiStorageResource, const HardwareInfo &hwInfo,
2727
DeviceBitfield subDevicesBitfieldParam, bool deviceOnlyVisibilty);
2828

shared/source/helpers/memory_properties_helpers_base.inl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
namespace NEO {
1313

1414
AllocationProperties MemoryPropertiesHelper::getAllocationProperties(
15-
uint32_t rootDeviceIndex, MemoryProperties memoryProperties, bool allocateMemory, size_t size,
15+
uint32_t rootDeviceIndex, const MemoryProperties &memoryProperties, bool allocateMemory, size_t size,
1616
AllocationType type, bool multiStorageResource, const HardwareInfo &hwInfo,
1717
DeviceBitfield subDevicesBitfieldParam, bool deviceOnlyVisibilty) {
1818

0 commit comments

Comments
 (0)