Commit Graph

96 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
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
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
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
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 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 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
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
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
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
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
Slawomir Milczarek 519e75e3d6 Add DRM capability to create a virtual memory address space on Linux
Related-To: NEO-4821

Change-Id: Iefc17d6c0a3649791b9a9b15791a6d263399873d
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2020-07-10 12:16:09 +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
Mateusz Hoppe fea4472553 Allocate per-context memory with specific GPU VA
Related-To: NEO-4829

Change-Id: I821f6709bfa98df3b51a1c966b7a953752d85f74
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-07-07 09:14:10 +02:00
Lukasz Jobczyk e027a2653d Move makeResidentBufferObjects to DrmAllocation
Related-To: NEO-4732

Change-Id: Ib7b7a46b0a9fd1d5cc1b89f64f66bc78cab5c563
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-07-02 09:50:26 +02:00
Bartosz Dunajski 6dd07bd3bc Use correct Heap32 index for local memory allocations
Change-Id: I068f712ab2b05ee3d5a9716b21de685a7fee3a02
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-07-01 17:31:43 +02:00
Slawomir Milczarek ac452a267b Remove unsupported DRM I915_EXEC_COMPUTE flag
Related-To: NEO-4744

Change-Id: I1e9da6ec58f8b0144a7371e702a0c3a8425864d7
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2020-06-30 11:58:35 +02:00
Slawomir Milczarek 7e56a8303a Add DG1 support to OpenCL and Level Zero (2/n)
Source location of Linux kernel DRM/i915 interface headers:
https://repositories.intel.com/graphics/kernel-api/index.html

Related-To: NEO-4744

Change-Id: I08a9ab651d8594e9a04d6a83dc48682d4fa53702
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2020-06-25 18:23:40 +02:00
Jitendra Sharma 251994149a Expose DRM interface to sysman APIs
Change-Id: Iab4d42cf90c9804c2b036045f3990aedd31efa91
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2020-06-24 16:40:49 +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
Bartosz Dunajski 240b97706f Fallback into legacy IOCTLs in case of incorrect topology data
Change-Id: Ibf0a3885729ab6cf5888534677ff73b875d142c1
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-06-16 14:13:41 +02:00
Bartosz Dunajski 5af401b7bb Discover GPU topology from i915
Resolves: NEO-4718

Change-Id: I0547c109b961c3732e64b6f22ec761a5943c65ef
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-06-15 10:32:29 +02:00
Sebastian Luzynski 2fb1dd439e Add debug variable for logging drm_buffer object
Change-Id: Ida9635705172c1059b6adf4b6f55fdf4bc50c5b1
2020-06-10 11:47:32 +02:00