Commit Graph

102 Commits

Author SHA1 Message Date
Katarzyna Cencelewska
2137ece808 Revert "Add missing check during buffer create"
This reverts commit 54faccb.

Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2022-10-24 09:22:52 +02:00
Dominik Dabek
d1a6054af9 enable create subBuffer from pooled buffer
Allow creating subBuffer from buffer from buffer pool allocator
by redirecting the call to the pool buffer and adjusting offset

Related-To: NEO-7332

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2022-10-19 09:33:10 +02:00
Dominik Dabek
e151bc6e2d [OCL] Flag for allocating small buffers from pool
Improves performance in workloads that create small opencl buffers.

To enable, set env var ExperimentalSmallBufferPoolAllocator=1

Known issues (will be addressed in further commits):
- cannot create subBuffer from such buffer
- pool buffer allocation should be reused

Related-To: NEO-7332

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2022-10-14 12:18:42 +02:00
Katarzyna Cencelewska
54faccb53e Add missing check during buffer create
if isLockable is set do not lockResource, to avoid debug break
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2022-10-11 12:44:15 +02:00
Dominik Dabek
d8b7d56160 Copy host ptr on cpu if possible in clCreateBuffer
use cpu copy with locked pointer if possible
because this is faster than copy on gpu
limit to buffers of size at most 64kb

Related-To: NEO-7332

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2022-09-27 17:54:06 +02:00
Kamil Kopryk
68d26470d7 Simplify code - buffer create 1/n
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2022-06-28 16:56:41 +02:00
Kamil Kopryk
858059a3c0 Reduce unnecessary move constructors calls
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2022-06-27 12:49:53 +02:00
Kamil Kopryk
83cab52dc4 Reduce unnecessary copies of memory properties
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2022-06-24 16:49:26 +02:00
Maciej Plewka
5bee8ebd35 Revert "Allow cpu buffers copy on DG2 in 32bit"
This reverts commit 2055daf696.

Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2022-06-08 11:26:00 +02:00
Maciej Plewka
2055daf696 Allow cpu buffers copy on DG2 in 32bit
Resolves: NEO-6906, NEO-6000

Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2022-06-06 16:32:35 +02:00
Baj, Tomasz
9529f21182 Fix missing handle in external memory
Related-To: NEO-6757

Signed-off-by: Baj, Tomasz <tomasz.baj@intel.com>
2022-06-02 16:05:46 +02:00
Krzysztof Gibala
dc1fe7d59a Change MemoryPool to enum class
Use enum class for MemoryPool in GraphicsAllocation
This change will ensure that GA is constructed in the proper way

- Rename namespace for isSystemMemoryPool method
- Add method getMemoryPoolString for logging actual pool which is in used
- Remove wrong pattern in GraphicsAllocation constructor

Related-To: NEO-6523
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2022-06-02 12:46:15 +02:00
Artur Harasimiuk
3f04769f07 style: configure readability-identifier-naming.FunctionCase
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-05-17 20:55:56 +02:00
Artur Harasimiuk
819e0f5515 style: configure readability-identifier-naming.LocalVariableCase
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-05-16 12:39:44 +02:00
Baj, Tomasz
2a0c395db5 Initial implementation for creating buffer with ext memory for OpenCl
Related-To: NEO-6757

Signed-off-by: Baj, Tomasz <tomasz.baj@intel.com>
2022-05-05 13:13:54 +02:00
Bartosz Dunajski
4b0d986876 Move AllocationType enum out of GraphicsAllocation class
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-02-04 17:49:09 +01:00
Bartosz Dunajski
dfdd3c597a Remove redundant BUFFER_COMPRESSED allocation type
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-12-07 13:35:49 +01:00
Bartosz Dunajski
68aea5bf62 Rename compression flags and helpers
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-12-03 18:09:02 +01:00
Bartosz Dunajski
5c266f9ab0 Compression refactor [3/n]
Dont use allocation type for compression preference

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-12-03 17:20:07 +01:00
Bartosz Dunajski
9481d8a88b Compression refactor [2/n]
Dont use allocation type for compression preference

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-12-03 08:47:46 +01:00
Bartosz Dunajski
55959d4d1d Helper method to check if allocation is compressed
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-12-02 16:13:53 +01:00
Bartosz Dunajski
7b55d38e34 Refactor [1/n]: Make compression preference allocation property
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-12-02 15:24:35 +01:00
Filip Hazubski
d586372aaf Correct blitter logic when creating buffer
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-11-10 15:18:41 +01:00
Mateusz Jablonski
9c1e7422b1 DG1: don't use blitter when creating buffer
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-11-03 14:36:56 +01:00
Mateusz Jablonski
b1df167632 Move enable_product.inl to shared
extract api agnostic validators to shared
remove not needed opencl includes from neo shared


Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-10-12 22:02:16 +02:00
Mateusz Jablonski
48f01f28f5 Move core part of MemoryPropertiesHelpers to shared
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-10-07 23:14:38 +02:00
Szymon Morek
3c15023871 Add AllowUnrestrictedSize debug flag
This debug flag allows to allocate memory with size greater than
CL_DEVICE_MAX_MEM_ALLOC_SIZE.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2021-08-05 15:35:26 +02:00
Milczarek, Slawomir
eb14d8458b Add helper function to enable stateless compression
Related-To: NEO-5107

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2021-08-02 14:34:33 +02:00
Szymon Morek
c8b85bb5a9 Add method to check tile only context
Related-To: NEO-6043

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2021-07-21 12:22:42 +02:00
Szymon Morek
8b48b33a0c Remove 4GB limit if shared allocations supported
Resolves: NEO-5984

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2021-06-24 13:28:59 +02:00
Szymon Morek
3ed0f074af Add method to set compression flag
Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2021-06-10 12:27:24 +02:00
lgotszal
3bd4bca911 Copyright header update
Dates corrected in copyright headers to reflect original publication date
(2018 for OpenCL, 2020 for Level Zero).

Signed-off-by: lgotszal <lukasz.gotszald@intel.com>
2021-05-17 20:38:19 +02:00
Mateusz Jablonski
52308244a6 Disallow for copying local memory buffers on CPU
Related-To: NEO-5733
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-04-28 16:25:35 +02:00
Mateusz Jablonski
0607118f15 Correct allocating memory for multi root device buffers
use dedicated method for creating allocation from existing storage

Related-To: NEO-3691
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-04-22 18:32:48 +02:00
Mateusz Jablonski
8215395401 Simplify Context method
return if context has multiple sub devices related to a given root device

Related-To: NEO-3691
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-03-30 10:22:15 +02:00
Krzysztof Gibala
bdf8cf5e23 Add crossRootDeviceAccess flag
Add flag to AllocationProperties for setup system memory allocation path
for buffers

Related-To: NEO-5508
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2021-03-23 14:56:19 +01:00
Igor Venevtsev
52e118fe49 Add extra parameters to Buffer::setSurfaceState() method
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2021-03-16 10:17:59 +01:00
Katarzyna Cencelewska
7fdbf4f6ef Correct set pitch in clEnqueueCopyBufferRect
validate dst and src buffers

Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2021-03-10 12:41:51 +01:00
Mateusz Jablonski
a33d74bb79 Disallow CPU buffer read/write operation if CPU access is disallowed
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-03-02 11:35:08 +01:00
Compute-Runtime-Validation
68e01dd736 Revert "Correct set pitch in clEnqueueCopyBufferRect"
This reverts commit a0f3e868a1.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2021-02-26 13:48:41 +01:00
Katarzyna Cencelewska
a0f3e868a1 Correct set pitch in clEnqueueCopyBufferRect
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2021-02-25 10:39:57 +01:00
Mateusz Hoppe
06bcc67e38 Clean log file from incorrect entries
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-02-15 13:05:29 +01:00
Igor Venevtsev
3df6110a17 Add extra parameters to setArgStateful()
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2021-02-05 12:24:27 +01:00
Slawomir Milczarek
55f3c8f134 Add resolve capability for compressed USM device allocations
Related-To: NEO-5107

Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2021-01-08 12:16:26 +01:00
Krzysztof Gibala
8d2cfd87ae Create graphicsAllocation for all devices in image
Unlock flow for multi device setup in:
- enqueueReadImage
- enqueueWriteImage

Related-To: NEO-4589
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-12-10 17:40:03 +01:00
Filip Hazubski
ed04053007 Add hwhelper function allowRenderCompressionForContext
Rename and unify compression related functions.

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-11-12 13:16:51 +01:00
Krzysztof Gibala
7fcc1bc1ad Use first device for blit transfer when buffer is creating
Related-To: NEO-4589
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-11-06 17:59:04 +01:00
Krzysztof Gibala
3d9a180c12 Implement local memory path for all devices in buffer
Related-To: NEO-4589
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-11-05 15:01:58 +01:00
Krzysztof Gibala
2c1551d40d Extend specialQueue in context to StackVec
Related-To: NEO-4589
Change-Id: I92db4cf8511e13a35307a4f48b51041a6fc7330f
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-10-30 13:33:46 +01:00
Krzysztof Gibala
0f31b5cc8b Use StackVec in Buffer::create instead of std::map
Related-To: NEO-4589
Change-Id: I9aa3a5de7e4e86b85c4589901a81a5b9633fc23f
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-10-22 13:31:21 +02:00