Commit Graph

152 Commits

Author SHA1 Message Date
Jaime Arteaga 5c1e60208e Share USM host pointers among devices (2)
Dont pin and instantiate buffer objects associated with a USM
allocation for device >0 at allocation time, but instead, just
do a USERPTR ioctl, as with the allocation associated with
device 0.

Change-Id: Ib37f379df177d14e9d2781a3ed6335cd9550cc87
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-09-04 12:10:06 +02:00
Spruit, Neil R 3c44c6f942 Fix Windows Adapter Enumeration to ensure Render/Compute support
- On Windows, if one uses remote desktop to connect to their windows machine,
  then attempts to run compute workloads, a shadow intel graphics device
  is created and L0/OpenCL will report 2 devices for a single device.
- This second device is not valid and if used will cause workload failures.
- to ensure that only usable devices are reported by L0/OpenCL, we now check
  the Adapter for its Support in D3DKMT_ADAPTERTYPE which for our use must
  have RenderSupported. The Shadow devices only support display and not
  rendering/compute, so this check will avoid reporting a display only
  intel device for compute usage.

Change-Id: Ib619c454aea2deb91135e7958efbca1cee5a05eb
Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-09-04 12:00:47 +02:00
Lukasz Jobczyk 9ea9baf1ad Prepare to switch to new residency model
Related-To: NEO-5007

Change-Id: Ia9b43ca7fea0ef315af5caff5a53a84ffc363937
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-09-04 11:42:59 +02:00
Lukasz Jobczyk 71f99f4174 Optimize mergeWithResidencyContainer method
Related-To: NEO-5007

Change-Id: I7145371c719ceeebf529fdf94a512a8398156591
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-09-04 09:04:09 +02:00
Mateusz Jablonski 442b6cfc47 Verify GL sharing based on primary display's luid
Resolves: NEO-5016
Change-Id: I244536fdd8acacfeb423ae09e13191df66c4f74a
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-09-02 17:14:13 +02:00
Jaime Arteaga 401dcf8c2a Enable local memory bank in DG1 (2)
Add ULT

Change-Id: I58cd200fd8e35b4afde935c7bd46cf4bfcf1bf0c
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-09-02 00:40:02 -07:00
Lukasz Jobczyk 067fea96ca Fix typo
Change-Id: I83f38c41f822f62688b618b84eb8221a160d3528
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-08-31 14:44:40 +02:00
Lukasz Jobczyk 847b8506c3 Return status from Drm::queryVmId
Change-Id: Iec886c91de2920904bc3bec8e8811afd355b8738
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-08-31 07:11:28 +02:00
Maciej Plewka a779e44b52 Support for dsh and ssh on external heap in L0
Related-To: NEO-4724

Change-Id: I85c2effea8a99bebaf9e3db33129641f37dcabe5
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-08-30 06:56:52 +02:00
SaiKishore Konda 8f52561307 Multiple engine support for Sysman Engine API
- multiple engines support for Sysman Engine API
- added engineQuery support
- opencl ULTs to validate engineQuery
- Sysman ULTs to validate engine APIs

Change-Id: I3b4d3a96a4cdca7dd9957f6a57f7b1bf900582d3
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
Signed-off-by: SaiKishore Konda <saikishore.konda@intel.com>
2020-08-28 13:36:31 +02:00
Lukasz Jobczyk 73217c6154 Add debug flag to force userptr allocations alignment
Change-Id: Iaa7769d09e297042bf298f699dc63809d60a3571
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-08-28 09:34:53 +02:00
Lukasz Jobczyk 2368972012 Move bind logging to separate debug flag
Change-Id: I022fa8662c27228f7c559874fc042f8a31381fb5
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-08-28 07:02:52 +02:00
Igor Venevtsev eeb30f960a Fix large graphics allocations split on Windows
1. Canonize reserved gpuAddress
2. Do not check allocation type for host pointer allocations

Related-To: NEO-4479

Change-Id: I4789ff2b1bada0c955ab6ad5a282efbb15be35e5
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2020-08-26 18:00:54 +02:00
Mateusz Jablonski 6870104a1a Pass maxOsContextCount to GraphicsAllocation
Change-Id: I4f327866433fe9b0cc0a6191336b54a9d2282702
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-08-26 09:57:15 +02:00
Sebastian Luzynski 26e700f649 log bo creation and destruction, improve logging
Change-Id: Ic4d66e316ed08d056053a7a9f60611f4b5a762e6
Signed-off-by: Sebastian Luzynski <sebastian.jozef.luzynski@intel.com>
2020-08-25 16:47:11 +02:00
Lukasz Jobczyk 2e5c5b5f29 Check if new residency model is supported in kernel
Related-To: NEO-5007

Change-Id: Ia01e74ed8c314acf71f972b4b55a88a5f4556f08
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-08-25 15:01:18 +02:00
Jaroslaw Chodor 39f42b20ba Require OpenCLDriverName in DeviceRegistryPath
Change-Id: I93a8ca95082f6ddb48adffe33145568f32d77418
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-08-24 08:21:20 +02:00
Igor Venevtsev 8a73b072b4 Share reserved CPU address space region among GfxPartitions
Related-To: NEO-4525

Change-Id: Id7534e317a10849c08ec29a090d782dcc4fabced
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2020-08-21 12:48:49 +02:00
Mateusz Jablonski 739c1c6c99 Pass maxOsContextCount to BufferObject
Change-Id: I9e64718a5a64096c8fdc50f3b84d3843701ff602
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-08-21 11:26:32 +02:00
Pawel Cieslak fb821f21f5 Cmake format script
Related-To: NEO-1157

Change-Id: Ie1b907e838cfb9ad0d75cc8971d415f7c77103c9
Signed-off-by: Pawel Cieslak <pawel.cieslak@intel.com>
2020-08-19 16:36:30 +02:00
Mateusz Hoppe 348ddf810a Query VM ID at context create time
Related-To: NEO-4957

Change-Id: I765c461e1090446e54873c33de001255b7c114a7
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-08-19 12:47:27 +02:00
Mateusz Jablonski 2f761b92e5 Pass maxOsContextCount to WddmAllocation ctor
Change-Id: I8cb72efb51d8b7817cf3572dbbf92796c99da58e
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-08-19 12:31:59 +02:00
Mateusz Jablonski fe163311b1 Pass maxOsContextCount to ResidencyData
Change-Id: If9cf4c9a153ee7afff3f6b66e061db4630d0c8f5
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-08-18 17:45:10 +02:00
Mateusz Jablonski dac2bcd9f1 Reduce number of WddmAllocation ctors
Change-Id: I3ac2ab6a36ac7d0c18559dda176d3a7ec0fe3de1
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-08-18 11:06:02 +02:00
Mateusz Hoppe cdc7649e77 Pass OsContext to memory management methods
Operate on OsContext when per context VMs are used

Related-To: NEO-4957

Change-Id: Ia6bef88a80163d4ceee9f9bf59bda6b569d8929f
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-08-13 19:48:54 +02:00
Jaime Arteaga 515d300c8a Enable local memory bank in DG1
Change-Id: Ifabfd2a7c8c3effd5765995d5ed5740b301e5269
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-08-10 11:45:25 +02:00
Adam Cetnerowski dd322c3466 Document use of RTLD_DEEPBIND
Related-To: NEO-2728

Change-Id: I0febab29385e9fb74d2d946a8242be10327f8ad6
Signed-off-by: Adam Cetnerowski <adam.cetnerowski@intel.com>
2020-08-10 11:31:59 +02:00
Mateusz Jablonski 9bced7da37 Close adapter after veryfing adapter luid from HDC
Related-To: NEO-4952
Change-Id: Ieac35973895baec92ae7f093b1b693cd60994022
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-08-10 09:49:32 +02:00
Mateusz Jablonski 1e7f05e185 Verify DX sharing based on AdapterLuid
Change-Id: I86e970cbc48256e5941f0a071dc549dd22423105
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-08-07 15:49:30 +02:00
Mateusz Jablonski 418db08517 Verify HDC handle when returning devices for GL sharing
Resolves: NEO-4952
Change-Id: I298bb26aacd2cc5ad7206f7fff2b2235098fb8bf
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-08-07 13:45:30 +02:00
Koska 2a4af0b89b Adding handle verification
Change-Id: I46d6bd2dda46ace927cdfea5f47b0e614d5818f4
Signed-off-by: Koska <andrzej.koska@intel.com>
Related-To: NEO-4819
2020-08-06 16:36:39 +02:00
Mateusz Jablonski 171c40d58a Setup device registry path in GMM_INIT_IN_ARGS
Change-Id: If4eed9cb16bd0bba24a0d5803488e00ef48a3fa5
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-08-05 16:50:54 +02:00
Artur Harasimiuk fa6b181120 do not use absolute path when including hw_cmds.h
Change-Id: I59a825f25d6572f7dfb0c80211a6e3652e2827c5
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2020-08-04 13:27:29 +02:00
Slawomir Milczarek d7f196f62a Create Drm context with VM ID if virtual memory supported
Change-Id: I0beae5941ad4ddd5281ae7e12c27e80914e4c128
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2020-08-04 11:35:41 +02:00
Koska ef357b78ff Reading the cl_cache_dir environment variable
Change-Id: Ia104f8e1f1fde310a5eceb6b6319bc8629a057bb
Signed-off-by: Koska <andrzej.koska@intel.com>
Related-To: NEO-4819
2020-08-03 14:44:23 +02:00
Mateusz Hoppe e8246a8179 Fix reading memory maps
- use correct specifier to sscanf to read uint64_t values

Change-Id: I12c7c062794dc7e57f3cd9eb7b325e471396ceb6
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-08-03 13:06:39 +02:00
Igor Venevtsev 4928ea60fe Implement parsing of process mapped memory regions
Related-To: NEO-4525

Change-Id: Ic3f9f04b42a10c2cc33f489a87d6b4b5fa1eedaa
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2020-07-31 15:06:30 +02:00
Lukasz Jobczyk e297cdb74b Disable gem close worker and force pin in direct submission
Related-To: NEO-4338

Change-Id: I1959d69cf3aebf817493e155dad91ff8830ed5b4
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-07-31 13:23:48 +02:00
Lukasz Jobczyk 70ac7ec80e Append proper flag to buffer object
Related-To: NEO-4338

Change-Id: I87604992fdfc20cd02773999f7c019344e8e3213
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-07-31 10:26:28 +02:00
Lukasz Jobczyk c08e3dde82 Make batch buffer resident during direct submit
Related-To: NEO-4338

Change-Id: I9d4d0f0baf96ed5d4aa6d7c8d8206e0681984e84
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-07-31 10:19:28 +02:00
Lukasz Jobczyk 49cd8e4e1b Bind bos to proper VM
Change-Id: I536ff342875bba39cf9a9922fcf647af408ae398
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-07-28 13:21:15 +02:00
Lukasz Jobczyk 038577eaf4 Repeat ioctl when device is busy
Change-Id: I29007c316df610c9410a71a59c5098bd4539b504
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-07-28 11:59:06 +02:00
Lukasz Jobczyk acc4a44b15 Bind allocations in csr under debug flag
Related-To: NEO-4732

Change-Id: Ie2a609dc614d2ad1ee698940fe6f2527d6e92854
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-07-28 08:08:51 +02:00
Lukasz Jobczyk 56a0eb7d0f Set VM id correctly
Change-Id: I5e4396995dd2f68b9a1fa4646061d54c4a85d3fe
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-07-28 07:19:50 +02:00
Lukasz Jobczyk 1924ef271f Bind allocations in all contexts properly
Change-Id: I44ebadf39e83e511ca92ee4ee9a7f2397a1500e0
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-07-28 07:00:41 +02:00
Mateusz Hoppe b89408266a Fix possible memory leaks with BufferObject
Change-Id: Id2141a7a4becfa3ed57034df575b1c868db6715c
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-07-23 09:34:10 +02:00
Bartosz Dunajski d51e3bb9ce Pass ClientType to Gmm
Change-Id: I25ba11d2fd1523fd5cf35157d6a2381991709ad2
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-07-22 17:50:05 +02:00
Kamil Kopryk 9b2e5274d2 Add helper isBankOverrideRequired
Change-Id: I13b7a77ff029f47091a27704a61704ca8cc46ef2
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-4882
2020-07-22 09:24:56 +02:00
Mateusz Hoppe 7aea294c85 Allow perContext VMs
Related-To: NEO-4637

Change-Id: I599aba9c1c06fd9414cfa14ebb2de3fc504d1cad
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-07-16 11:20:51 +02:00
Slawomir Milczarek 3c4c7a0215 Drm create context with an implicit virtual memory address space
Related-To: NEO-4821

Change-Id: I18545d976788daacbb195e243f4049b7f83fd3a2
2020-07-14 14:26:49 +02:00