Commit Graph

261 Commits

Author SHA1 Message Date
Krzysztof Gibala d957349f76 Pass MultiGraphicsAllocation in Buffer 3/3
Related-To: NEO-4672
Change-Id: Ic6b696b1df798fcdadcf17f9e22f1c0999361e47
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-07-16 10:46:42 +02:00
Krzysztof Gibala 6be8d332f4 Pass MultiGraphicsAllocation in Buffer 1/n
Pass MultiGraphicsAllocation in Buffer instead of GraphicsAllocation

Related-To: NEO-4672
Change-Id: I7fb05ab53f54875f41d90f480e7f930b3b9f2fda
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-07-14 16:50:39 +02:00
Filip Hazubski 2912cebbd4 Update Context::blitMemoryToAllocation function
Change-Id: I5f81cb023b75e82bd3aff8e393f6b9463c767112
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-07-13 15:23:51 +02:00
Lukasz Jobczyk ff0add74e3 Add alternative residency model on Linux
Related-To: NEO-4732

Change-Id: I79e165d2b647af200ca314e1183ecf05903de644
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-07-10 12:38:57 +02:00
Mateusz Jablonski 1a1b4b1c26 Extend key to host ptr fragments container
use separated entries per root device

Related-To: NEO-3691

Change-Id: I26b85b8852b23e6a4d290da689174c59343536b3
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-07-09 17:10:54 +02:00
Krzysztof Gibala a8b40de5e8 Remove graphicsAllocation from MemObj
Related-To: NEO-4672
Change-Id: Ie11ba2e30516947f9ca107d53c5b41429dfdace5
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-07-08 17:18:16 +02:00
Mateusz Jablonski 93c1e1b976 Add MultiGraphicsAllocation to USM
Related-To: NEO-4672
Change-Id: I53ea4bea73ae6d52840146f63bc561bb90f9fe62
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-07-02 09:39:21 +02:00
Mateusz Jablonski 5bc511b77d Remove MemObj::rootDeviceEnvironment
Pass Device to Buffer::setArgStateful

Related-To: NEO-4672
Change-Id: I0b7ed3ee578139f250c8470532dc0ae2eb2991e1
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-07-01 18:47:32 +02:00
Mateusz Jablonski c96fd30e4c Pass root device index to Buffer::setArgStateful
Related-To: NEO-4672
Change-Id: Ic846eac488809bd7d9534bb7378d9398acd36451
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-06-30 15:26:55 +02:00
Mateusz Jablonski f97993ec31 Pass root device index to Image::appendSurfaceStateParams
Related-To: NEO-4672
Change-Id: I65b9fcf6c668b903dc4fe134e51202e7c7f093e3
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-06-30 10:53:45 +02:00
Mateusz Jablonski c6239968a5 Fix typos:
preffered -> preferred
deffered -> deferred

Change-Id: I1b87861590c273d7fcda5bf0c5a772bf36e1bc74
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-06-25 19:17:41 +02:00
Mateusz Jablonski 01596c40f5 Pass device to Buffer::isReadWriteOnCpuPreffered
Related-To: NEO-4672
Change-Id: I857db6af225799f4d3451620d9dfb13f3a099add
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-06-25 12:38:37 +02:00
Maciej Plewka a822503b41 Use encoder to program buffer surface state
Change-Id: Ibe66bd9906743b021a04f1d9aad1aae4127a4f71
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-06-25 12:32:29 +02:00
Mateusz Jablonski 1b3086a823 Pass root device index to setImageArg and setMediaImageArg methods
Related-To: NEO-4672
Change-Id: I983adfe32ca153e9edbeb5918bf923516758d200
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-06-25 11:47:47 +02:00
Mateusz Jablonski ec391d62ee Pass root device index to Buffer::setArgStateless
Related-To: NEO-4672
Change-Id: I3acb09b14588fd4aad253eb82c34d1c2d192a34e
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-06-25 11:33:04 +02:00
Sebastian Luzynski fa3cb35fde Add check if device support Images.
Related-To: NEO-4675
Change-Id: I0c2b6e04536e45e70748983521e8469dd3dad697
2020-06-24 23:38:03 +02:00
Mateusz Jablonski 81cc0afb1e Use root device index to get graphics allocation from buffer
pass root device index to isCompressed method

Related-To: NEO-4672
Change-Id: I6805254b09c86c0e0fb9333f8eb35d6dee73d327
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-06-24 16:08:49 +02:00
Mateusz Jablonski f5e9abae3d Pass root device index to setPipeArg function
Related-To: NEO-4672
Change-Id: I2f2034dd5e35a93c50f5ef7616b46ceb596a8412
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-06-24 14:15:13 +02:00
Mateusz Jablonski 4623707eca Remove parameterless Image::getGraphicsAllocation method
Related-To: NEO-4672
Change-Id: Ib8cebf322d7d2f407627e15746896b315780c6bb
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-06-18 16:12:54 +02:00
Lukasz Jobczyk 8f30d87a1e Unify release variables
Resolves: NEO-4719

Change-Id: Ib2ab959c0a1eb45f24a4e0e2f02c437d96d47751
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-06-18 08:56:29 +02:00
Igor Venevtsev 3859e13322 Split large allocations on Windows due to Wddm limitation
Resolves: NEO-4479

Change-Id: Iffb862a93570a60c2126620d9e5106359acba64a
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2020-06-17 12:47:54 +02:00
Mateusz Jablonski 55ba0ab459 Remove parameterless Buffer::getGraphicsAllocation method
Related-To: NEO-4672
Change-Id: Ie995047b010c45030bec37387358acae0d7f139b
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-06-09 17:36:15 +02:00
Mateusz Jablonski 57d0967a2c Pass root device index to MemObj::getGraphicsAllocation method
leave parameterless method in Buffer and Image classes

add method to remove graphics allocation from MultiGraphicsAllocation

Related-To: NEO-4672
Change-Id: I3020eecfabe9a16af7f36d68a74b32d3f4fc2276
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-06-05 13:18:03 +02:00
Filip Hazubski 78d07b9b37 Pass Device when creating MemoryProperties
Related-To: NEO-4651

Change-Id: Ie1f7f55d4817612de83bfb2a372fd7ac35c11930
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-06-05 12:42:15 +02:00
Mateusz Jablonski 01174f5166 Adjust device bitfield in MemObjHelper::getAllocationPropertiesWithImageInfo
Related-To: NEO-4588
Change-Id: Ib05c9f9e0d2a157c7cf86bd2f39c4f7640ebc433
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-06-04 16:07:07 +02:00
Lukasz Jobczyk ceaface1a9 Read MakeAllBuffersResident in release builds
Resolves: NEO-4302

Change-Id: I0ed8ca197235fc31f1b4b02155a8f4684e0601be
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-06-04 11:06:42 +02:00
Mateusz Jablonski 1db6d28754 Add MultiGraphicsAllocation to MemObj class
use it to get allocation type and coherency status

Related-To: NEO-4672
Change-Id: Id1fdc358f7e2038e78c1225ebc986b2a7775c665
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-06-01 17:55:07 +02:00
Filip Hazubski 99b0f04cc0 Add new API properties queries
Add queries for getting properties that were used when creating an object:
 - CL_QUEUE_PROPERTIES_ARRAY
 - CL_PIPE_PROPERTIES
 - CL_MEM_PROPERTIES
 - CL_SAMPLER_PROPERTIES

Related-To: NEO-4368

Change-Id: Ib761ee3dd338e9718d72ed4c9596b38843a9b802
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-05-27 18:50:58 +02:00
Filip Hazubski 5eed521fe1 Update getInfo function
Allow return value size to be 0. Do not modify return value size in case
of error.

Related-To: NEO-4368

Change-Id: I201e8ee7c23fcdc2712f6b04bedc71bf4ab64f06
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-05-21 17:06:28 +02:00
Filip Hazubski 0a6da52bd4 Add implementation of new OpenCL 3.0 API functions
Additionally unify implementation of API functions related to creating buffers
and images.

Related-To: NEO-4368

Change-Id: Icfafc32f15e667e249fb318072194b6f76bd6481
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-05-15 12:09:08 +02:00
Krzysztof Gibala cb8e9656ee Merge MemoryPropertiesFlags files
Move mem_properties_parser_helper files to memory_properties_flags_helpers
Rename MemoryPropertiesParser to MemoryPropertiesHelper

Related-To: NEO-4143
Change-Id: Ib35360bceff90be2383696083226f8be1e47538c
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-05-08 14:17:36 +02:00
Filip Hazubski 8fd40b090d Add supportsOcl21Features value to capability table
Related-To: NEO-4368

Change-Id: If176d3be7c47d9d9ab70beebe664f2d569997501
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-05-05 15:02:50 +02:00
Xun Deng 2caeb739c3 Refactor libva and OCL sharing to pass in Intel flag
Change-Id: If2580366576b4880fa1a774a2a61cfbceb241835
2020-04-30 16:43:54 +02:00
Mateusz Jablonski 159c804312 Add method to get device bitfield from context
Related-To: NEO-4484
Change-Id: I5079c5bff48b552ed5326b2252bcd9401ea66c7d
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-04-28 21:26:11 +02:00
Krzysztof Gibala b0ed3b2ab1 Refactor MemoryPropertiesFlags
Rename:
- MemoryPropertiesFlags to MemoryProperties
- MemoryPropertiesParser to MemoryPropertiesParserHelper
- getMemoryPropertiesFlags to getFlags
- getMemoryPropertiesFlagsIntel to getFlagsIntel
- functions involved with MemoryPropertiesFlags

Related-To: NEO-4143
Change-Id: I4eec67bba95dd5354d0df43c31e6ca724909138e
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-04-28 18:15:25 +02:00
Zbigniew Zdanowicz 048c90e3b1 Remove RMW access patterns from gfx memory
Related-To: NEO-4338

Change-Id: I8dcfca9a11f499fde44ca9754dec67fe5a5e3d46
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-04-28 15:26:22 +02:00
Filip Hazubski 853d870d1c Return CL_INVALID_OPERATION when creating an image
Error is returned when images are not supported.

Related-To: NEO-4368

Change-Id: I1e7098f7c450dbaefc546ab4cfdaebbb5376def4
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-04-21 18:29:51 +02:00
Krzysztof Gibala 310947e6dd Correct and add test for existing reg key
Correct DisableCachingForStatefulBufferAccess flag access

Change-Id: Ic956ae12d3abaf9c0871921833273d4c355e6766
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-04-16 19:55:54 +02:00
Krzysztof Gibala 9b85e93757 Add reg key to disable caching for stateful buffer
Change-Id: I7d70fa6f1ef869588f9a19c9dc43f49d531bf814
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-04-16 18:22:23 +02:00
Mateusz Jablonski 0c404bc880 Pass device bitfield to allocation properties when creating mem obj
Related-To: NEO-4484
Change-Id: I961e9122591dc7293e37d5c1ca58cbcd649ee653
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-04-16 15:01:37 +02:00
Krzysztof Gibala 42bf1d7e61 Limit CPU copy in isReadWriteOnCpuAllowed
Change-Id: I4b0f7dde7afdb4d6dbf39874b8313cac0f6e5de6
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-04-09 12:30:12 +02:00
Filip Hazubski d0527e1049 Rename memory_constants.h to constants.h
Change-Id: I05b5d20bac12935dc6625b94adc3a03c98c19b49
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-04-02 14:19:39 +02:00
Pawel Wilma 4d80f21dac Reuse mapAllocation for memory transfer during buffer creation
Change-Id: Idcdabb4a9c61b5cbf69164c51ca1690a64665a26
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2020-04-02 14:07:20 +02:00
Filip Hazubski 64575cd589 Pass Context to parseMemoryProperties function
Change-Id: I74ff9fdb9292e281a1a6491387163db0de2ccea2
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-03-31 07:43:01 +02:00
Michal Mrozek b16354ca77 Allow CL_MEM_FORCE_SHARED_PHYSICAL_MEMORY_INTEL as clCreateBuffer flag.
Change-Id: I44c17b29f82efe1d79a0713944e453a6ae21feed
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2020-03-30 12:28:53 +02:00
Filip Hazubski fe851da327 Rename device directory
device directory is renamed to cl_device.

Related-To: NEO-3938

Change-Id: I96794c82632d042da6814550597d805df7bb6436
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-03-24 14:35:21 +01:00
Krzysztof Gibala 0d342ac1aa Add Blitter support for ReadBufferRect
Change-Id: I530acc5a2b70fcd82f8ca5db46a0fa474d493a47
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
Related-To: NEO-4013
2020-03-24 09:23:15 +01:00
Andrzej Swierczynski 664f47e984 Add Context to validateExtraMemoryProperties()
Related-To: NEO-4207

Change-Id: Ib0873726c95e559478c6ada26fd1527a2edd88f7
Signed-off-by: Andrzej Swierczynski <andrzej.swierczynski@intel.com>
2020-03-20 15:39:04 +01:00
Andrzej Swierczynski f8500ac3a8 Add hwInfo to args of fillPoliciesInProperties()
Related-To: NEO-4207

Change-Id: I74b672dd48d9797dfbc871a9e79b92fc2aae9639
Signed-off-by: Andrzej Swierczynski <andrzej.swierczynski@intel.com>
2020-03-17 12:31:21 +01:00
Filip Hazubski 3b149b69a7 Remove duplicated fields from ClDeviceInfo
Related-To: NEO-3938

Change-Id: Ic13d69eaf2ba54794f82d78b058c960f27a6c29d
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-03-17 08:58:34 +01:00
Michal Mrozek 5b255433c5 Remove 32 bit conditions.
Change-Id: I4e2eebec63fb3aea939b69ac42dbc4db035610a5
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2020-03-12 13:00:59 +01:00
Mateusz Hoppe 2def8cdeec Cleanup shared sources
- link sources to neo_core

Change-Id: I7efaadcee80f7bbf8ac40f141c60d31f69161de7
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-02-26 21:52:03 +01:00
Filip Hazubski bfaa531bf5 Move extensions directory
Change-Id: I47363e93839171c5b4eb85037f2b4ca5444e0544
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-02-26 14:34:31 +01:00
Mateusz Jablonski 74072d4916 Access GmmHelper and GmmClientContext via RootDeviceEnvironment
Related-To: NEO-3857
Change-Id: Ie9d719c9884fd89580ce3592a0d4d4cd42862f47
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-02-25 12:32:16 +01:00
Michal Mrozek 0e85ccf084 Choose cpu copy for 32 bit application using local memory.
Change-Id: I74aed9475185b09d4569fafb3427052fff73fd89
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2020-02-24 15:32:11 +01:00
Mateusz Jablonski 49aac737a7 Don't use ClDevice in Buffer::setSurfaceState
Change-Id: Id948b11ee7c0decb7a2e4e4fea70e950ee14913f
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-02-24 14:42:21 +01:00
Mateusz Jablonski 9dbeeea18f Clang-format: restore sorting includes
Change-Id: I34eb993b562c77f56d8fbd51a02ee266c1f76678
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-02-24 10:22:30 +01:00
Mateusz Jablonski 7df9945ebe Add absolute include paths
Change-Id: I67a6919bbbff1d30c7d6cdb257b41c87bad51e7f
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-02-23 23:49:12 +01:00
Mateusz Jablonski 370424a1e0 Change core inlcudes
Change-Id: Iaec903af420f0a92f7d86e484c83300fb9c531ad
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-02-23 18:46:50 +01:00
kamdiedrich d015d3633f Add absolute path to include
Change-Id: Ib0782b4ab8d9a26ec358ecfb57721f4fe8d51b06
2020-02-23 08:47:49 +01:00
kamdiedrich fa8e720f9e Reorganization directory structure [1/n]
Change-Id: Id1a94577437a4826a32411869f516fec20314ec0
2020-02-22 21:56:09 +01:00