Commit Graph

136 Commits

Author SHA1 Message Date
Zdanowicz, Zbigniew
51d34da7ec Add multiEngineQueue field to DispatchFlags and modify interfaces
Change-Id: Iaa4754a22e9b88201aed7df01c7d6e5fd06c84a9
2019-02-14 17:12:15 +01:00
Filip Hazubski
a8d4733802 Replace MemObj::flags with MemoryProperties
Change-Id: I886cd775d1eca55964b7c4b05f6c977558a73922
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-02-12 10:16:09 +01:00
Maciej Plewka
5abda619a1 Set pitch and qPitch for unified multisample images
Change-Id: I4eaf8678077f7ecd7f5f9ec860a3e59b7e89e78c
2019-02-11 15:52:18 +01:00
Kamil Diedrich
62e56d2398 Disable L3cache when resolve argument
Change-Id: I4bb3a18d67254eef8aa4a0ce6b29401726f0b47e
2019-02-06 15:51:31 +01:00
Maciej Plewka
d58b9840b8 Fix surfaceState for multisample images
Change-Id: I2d4b17e162f61892ca1a86c241a722ef0c51ee42
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2019-02-05 12:44:57 +01:00
Filip Hazubski
d30cc221df Update disabling caching for a resource
Change-Id: I00eac0add01f75a1b82d04cf42652c15b776a457
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-02-01 10:50:21 +01:00
Filip Hazubski
3fe78d263b Update getGraphicsAllocationType
Change-Id: I7613d0d5550d8032b960f86aa117b4baf6b9216f
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-01-31 11:02:35 +01:00
Filip Hazubski
54d96e3e3d Add isFieldValid helper method
Change-Id: I6f8d67a99fa8ca41f61a7f966312cbe43f5ea719
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-01-29 09:58:46 +01:00
Mrozek, Michal
c0d4122c26 Ensure that temporary buffer has zero copy flag set.
Change-Id: Iefa6f281cc61237be21aeff7c26d080c32385a75
2019-01-28 11:00:00 +01:00
Mrozek, Michal
083a4ff779 Always enable L3 cache for non zero copy buffers.
Change-Id: Ie83a2b6b040bd0bab2cfd5dbb0e788af881f966f
2019-01-25 12:20:44 +01:00
Hoppe, Mateusz
d7ce6ef8d1 Allocate images through preferred pool call
Change-Id: I79c9c1a0a95a8a3e26ed690530b71ef504cc7ff8
2019-01-25 09:05:25 +01:00
Dunajski, Bartosz
996d4f8387 Update GMM API to query TileMode for SurfaceState programming
Change-Id: I7cef2d8651037874811f8e3fefabc70470eec5bb
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-01-23 08:35:15 +01:00
Filip Hazubski
fae6c5fce2 Add bit helpers
Change-Id: I3f29793f0fec7555c1440db7504e4adbb6904d4f
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-01-18 12:19:27 +01:00
Zdanowicz, Zbigniew
158f200476 Add HW commands const definitions
Change-Id: If2e9d7f7f707b7b8c7bd8dbd3853ab3b6dad0c9a
2019-01-18 12:13:25 +01:00
Filip Hazubski
2d321cb557 Add option to disable caching for a resource
Introduce CL_MEM_LOCALLY_UNCACHED_RESOURCE flag that can be used with
clCreateBufferWithPropertiesINTEL()

Change-Id: I9f208f00952cdca7482371ec21cbc57c08435b52
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-01-17 13:32:36 +01:00
Mrozek, Michal
a58a897bf3 Move unrecoverable prior to pointer deference.
Change-Id: I35c33de88fd4c2286a678f250df3ff9b3b495097
2019-01-09 10:24:18 +01:00
Hoppe, Mateusz
cbc4d349a8 Do not align down pointer passed to hostPtr allocation
- do not align up hostPtr allocation size
- align BaseAddress programmed in SurfaceState to DWORD

Change-Id: Ic6d02e53fd13dda881f8eb845a131bffe4deb45c
2019-01-08 21:21:34 +01:00
Mrozek, Michal
acc5e87b40 Change CL_MEM_USE_HOST_PTR buffer allocation scheme.
- Choose BUFFER type if local memory is present.
- add CL_MEM_FORCE_SHARED_PHYSICAL_MEMORY_INTEL for allocations that
require host pointer storage.

Change-Id: Ifd3c74800cd53a2a9bb2171212a47ef5bcffe2a1
2019-01-08 16:24:10 +01:00
Mrozek, Michal
1ce3898400 Improve checkMemory validation.
- check that proper flags are passed if hostPtr is presented.
- fix a bug in buffer fixture.
- fix some bugs in other tests.

Change-Id: If708fd06598e5f3d8a94b3e24fb83f689f6b52c7
2019-01-08 11:44:37 +01:00
Mrozek, Michal
5c9f8eee23 Change the type for CL_MEM_ALLOC_HOST_PTR buffers in 64 bit.
Change-Id: Ic70d8bb3e172b80b7c20b570e5e307be460defce
2019-01-08 09:08:00 +01:00
Hoppe, Mateusz
a31c446d9f Allocate non USE_HOST_PTR and non-buffer images in preferred pool.
Change-Id: Ia486c7b32932202162d6587d06dc61023e38fff6
2018-12-31 14:37:44 +01:00
Mateusz Jablonski
c9e667d601 Simplify Memory Manager API [4/4]
- fill AllocationData in one place
- remove allocateGraphicsMemoryForSVM function
- refactor SVM manager tests

Change-Id: I6f4ecd70503da8031cced50ea98a54162fd8e5d3
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-12-20 09:01:33 +01:00
Mrozek, Michal
b99cf6c3ff Image / Buffer refactor.
- do not use redescribe flag for image/buffer from other image/buffer.
- use redescribe flag only when image is redescribed via redescribe interface
- remove image specific functions from mem object
- remove redundant fields
- add new implementation of isImageFromBuffer/isImageFromImage basing
on associated mem object.
- pass associated mem object to redescrbed images.
- remove redundant setters

Change-Id: I267637a48fbc2afdad9a9f5e5e9ccd6bd0c09972
2018-12-19 21:21:44 +01:00
Hoppe, Mateusz
f6790c42cf Refactor Graphics Allocation paths for Images
Change-Id: Ifa3084b18cac95289bbceeaf3669dd31567fbd3e
2018-12-19 13:49:53 +01:00
Kamil Diedrich
62814237e7 Add const keyword after isImageFromBuffer declaration
Change-Id: I716846c9d58abfa62509f3bf150aea453e9a435e
2018-12-19 09:15:02 +01:00
Kamil Diedrich
2f88abfa2a Add information about image from buffer extension
- don't change allocation type when buffer is given
- add flag isImageFromBuffer to mem_obj

Change-Id: I48a0722040d8482ed3653540179d047245affa3c
2018-12-18 22:37:33 +01:00
Piotr Fusik
e8a71132a4 Remove unnecessary casts.
Change-Id: I2d293d065c7efa006efe7d60a625cba0c6116c86
2018-12-18 13:42:14 +01:00
Dunajski, Bartosz
4ddf5a1e87 Add debug flag to control RenderCompressed value in HardwareInfo
Change-Id: I733125fbd8596f24cdeb636b69a9198c44bd899b
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-12-17 13:11:00 +01:00
Mateusz Jablonski
8ec072d39c Simplify Memory Manager API [3/4]
- remove method allocateGraphicsMemory(size_t size)
- pass allocation type in allocation properties
- set allocation type in allocateGraphicsMemoryInPreferredPool

Change-Id: Ia9296d0ab2f711b7d78aff615cb56b3a246b60ec
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-12-17 10:42:16 +01:00
Pawel Wilma
5094c630f7 Force resource locking on transfer calls
Add debug variables to force resource locking on memory transfer calls
and to call makeResident() on mapVirtualAddress() call.

Change-Id: Ifa78d951fcb81812b10a98252bd414124dec9c74
2018-12-14 12:25:28 +01:00
Mateusz Jablonski
a6be6533ea Simplify Memory Manager API [2/n]
- make AllocationData a protected structure
- use AllocationProperties instead of AllocationFlags
- refactor methods: allocateGraphicsMemory64kb, allocateGraphicsMemoryForSVM
- call AllocateGraphicsMemoryInPreferredPool in AllocateGraphicsMemory
  where there is no host ptr

Change-Id: Ie9ca47b1bccacd00f8486e7d1bf6fb3985e5cb12
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-12-11 13:12:00 +01:00
Mrozek, Michal
c865dbbaa1 Choose BUFFER_HOST_MEMORY as type in 32 bit applications.
Change-Id: I33addbd37cb4b9192c2dfa88aeee6d6cbdafd714
2018-12-07 16:17:04 +01:00
Maciej Plewka
bb7f8d9b88 Disable compression when using hostPtr
Change-Id: Ifa066a3824f51b4ad5957de9fe8590853c620587
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2018-12-05 16:07:15 +01:00
Dunajski, Bartosz
b728526c4e Allow Device creating multiple CSRs [8/n]
Use OsContextId instead of DeviceIndex for residency

Change-Id: Ib2367b32b5b3e320252d8254f1042f1c3d497068
2018-12-04 15:36:59 +01:00
Dunajski, Bartosz
0131e66a70 Allow Device creating multiple CSRs [6/n]
- Introduce default Engine query
- Improve Deferred Deleter usage
- Remove Tag Allocation from Device

Change-Id: Iaa88d8dc0166325acf9a157dcd2217ea408ee285
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-11-29 16:20:13 +01:00
Mateusz Jablonski
66492a53a4 Change type of residency task count to uint32_t
Move definitions of objectNotUsed and objectNotResident to GraphicsAllocation

Change-Id: I2aec604a865cc6c975e9d1121028cbdd35c0b18a
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-11-16 16:04:48 +01:00
Filip Hazubski
622f71a1b2 Move MemoryProperties struct to separate file
Change-Id: Ie35d2638b6fe5cafe64f3b9fc3e0c3b67ac08fd7
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2018-11-15 08:09:16 +01:00
Mateusz Jablonski
815ae851b7 Graphics Allocation: store task count per context id
Move definition of allocations list method to internal_allocation_storage.cpp

Change-Id: I4c6038df8fd1b9335e8a74edbab33b78f9293d8f
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-11-06 12:43:47 +01:00
Filip Hazubski
ea2e634f7e Add clCreateBufferWithPropertiesIntel() API
Change-Id: Icfbbbc2479c1bc94008e0ccf90bcb25adddf0b61
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2018-11-06 11:03:04 +01:00
Mateusz Jablonski
d5c9816428 Remove store allocation methods from memory manager
Move setGPUAddress method to WddmAllocation

Change-Id: I91d877c3791e9eff69276e4258e3ce9c3111ca45
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-10-26 10:53:43 +02:00
Mateusz Jablonski
129380c1a6 Cleanup host ptr manager
Change-Id: I0fc9df41a08255eef8072666c1c5c16806e0f7cf
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-10-26 08:26:38 +02:00
Mateusz Jablonski
b602cd2bb8 Pass execution environment to memory manager
Change-Id: If43cf9d1353b4cbc02ea269fb9105c01cc4e0876
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-10-03 22:12:26 +02:00
Mateusz Jablonski
9a1adc3095 Remove scenarios with memory manager with null csr
Change-Id: Ie151bf3d16c5d994f154c8f9ac3db43702a4798c
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-10-02 21:43:21 +02:00
Hoppe, Mateusz
4ea9f496d5 Fixes for AUBs
- pass aub usage in MockDevice to memory manager
- disallow mapping on cpu for cpu inaccessible memory

Change-Id: I5437a06efd4dd32940b603a15ff98a40091e2b04
2018-09-28 15:55:55 +02:00
Maciej Godek
2ad5108380 Clarified dependencies in Context::getSupportedImageFormats
Change-Id: Iaa09a2b572b3ae6d0533378f0ecf227bd90b1a10
2018-09-27 18:41:18 +02:00
Hoppe, Mateusz
65565acdaf Refactor Buffer::create
- simplify conditions by separation
- reorder some calls
- pass allocateMemory to AllocationFlags

Change-Id: Iab6fd35f9b9c10bfbc19058e69058346ef87dad8
2018-09-27 18:16:54 +02:00
Hoppe, Mateusz
330b9eddbd Upload data to cpu inaccessible memory with enqueueWriteBuffer
Change-Id: Ibb33c4248fd0cb4338c82a9deb3994147c0acba5
2018-09-27 18:09:01 +02:00
Woloszyn, Wojciech
f624ec757b Unify mipmap layout accross platforms
- revert "Fix reported row/slicePitch for mip-maps"
- calculate mipmap offset without gmm

Change-Id: Id4802ef9624ad330e0d0f871dfa4d4fc35a7ba33
2018-09-25 16:27:43 +02:00
Woloszyn, Wojciech
2248c8e048 Fix typo
Change-Id: I393ad63769ac1fd9f95374344dae60dda803346a
2018-09-25 01:53:59 +02:00
Hoppe, Mateusz
5aae5a3d62 Rename DeviceIndex to DevicesBitfield to reflect type usage
Change-Id: Ic5ac1d2d49082dc3c6e98c1fa5178b93ec9ddf56
2018-09-24 14:46:19 +02:00