Commit Graph

49 Commits

Author SHA1 Message Date
624b418756 Return vector of HwDeviceIds from OSInterface::discoverDevices
Resolves: NEO-4310
Related-To: NEO-4208
Change-Id: Ib4ce27a18a860214b76505f6e122666c86207783
Signed-off-by: Jablonski, Mateusz <mateusz.jablonski@intel.com>
2020-02-18 09:12:12 +01:00
c92afc5b72 Remove OS specific code from DeviceFactory::getDevices
- create RootDeviceEnvironment::initOsInterface method to handle the logic
- move Drm/Wddm's discoverDevices method to OSInterface class
- remove DeviceFactoryCleaner
- add SysCalls::ioctl function

Related-To: NEO-4208
Change-Id: I7600092465fcdfc42da6fa6924069e6b2615fc0c
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-02-14 15:10:46 +01:00
5d12bd8583 Move ownership of Drm to OsInterface
Related-To: NEO-4208
Change-Id: Iaf5255500b5629739065303e4e4f8a724458dbce
Signed-off-by: Jablonski, Mateusz <mateusz.jablonski@intel.com>
2020-02-13 14:19:07 +01:00
807586aafd Linux: discover devices in DeviceFactory::getDevices
Related-To: NEO-4208
Change-Id: Ia4405745d1ae22f03ce344a92f2b664ef6e1b957
Signed-off-by: Jablonski, Mateusz <mateusz.jablonski@intel.com>
2020-02-10 15:53:37 +01:00
f3fc466f5b Move memory_manager to core folder
Change-Id: I8d84d6982fea3cd785f1e15af0ee7fa361258a23
2020-02-08 15:24:13 +01:00
52931156ed Move execution environment to Core
Change-Id: I3f5a1f5ef97f058f91d0be7e3c33df7fff04062e
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-02-06 15:00:37 +01:00
66754c4849 Remove platformDevices from runtime
Related-To: NEO-4207

Change-Id: I70781b44e7d14360a581808049baf8b61fd1b4e4
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-02-05 09:59:13 +01:00
3691ad1ea0 Move os_interface files to core folder
Change-Id: I03fdd962eac9ebad5dc915adf041c21a2e6affbe
2020-02-04 12:53:56 +01:00
10db7e0328 Refactor variables to modify getDevices func behavior
store them in one struct
expect that global state is restored on test end

Related-To: NEO-4207

Change-Id: Icd1db59598f464a34608290d6023405cf7f246f0
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-02-04 10:31:48 +01:00
a5d348ec08 Stop using platformDevices to setup hw info on Linux
Related-To: NEO-4207
Change-Id: I9c0eeea20342d26be99a7a0035b2b85edd5d8abd
Signed-off-by: Jablonski, Mateusz <mateusz.jablonski@intel.com>
2020-02-03 15:02:29 +01:00
a8fbf4ecca Revert "Stop using platformDevices to setup hw info on Linux"
This reverts commit 8bbb719a97.

Change-Id: I1335d6545a0e3497de008ecd185e50fde6418455
2020-02-02 11:26:42 +01:00
8bbb719a97 Stop using platformDevices to setup hw info on Linux
Related-To: NEO-4207
Change-Id: I6ab136c8cddf9652ba05b3ef4e81fb6ad594831b
Signed-off-by: Jablonski, Mateusz <mateusz.jablonski@intel.com>
2020-01-31 14:34:29 +01:00
adc3a97503 Pass RootDeviceEnvironment to Drm
Related-To: NEO-4207
Change-Id: Ic59abf9221702333efea69213391b9646ae0864e
Signed-off-by: Jablonski, Mateusz <mateusz.jablonski@intel.com>
2020-01-30 10:57:03 +01:00
3c89cfc753 Move os_interface files to core
Change-Id: Ie708a944130884248499091854ebc483953fa828
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-01-22 14:50:51 +01:00
172e75147e Make OsInterface root device specific
Related-To: NEO-3857

Change-Id: Ibcd80c731b5d3755b62e0e03d0ffeedb08b52ca0
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2020-01-15 11:07:25 +01:00
0193b3ea69 Change maxNBitValue to a constexpr function
Now maxNBitValue can be used with run time variables.

Change-Id: I323071400305e05e6303a33e24e90c521246d73f
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-11-28 14:40:16 +01:00
6584f58902 Dynamic query of EUCount and SubSliceCount.
Related-To: NEO-3841

Change-Id: I7b92314bb8465233909fd1dddeef4ae1469008c9
Signed-off-by: Pawel Cieslak <pawel.cieslak@intel.com>
2019-11-20 12:28:04 +01:00
1f6dde3f02 Added DeviceId filtering under Linux
Change-Id: Ie4b91d139beb8f31d50737d829e9d8fe801dcfa1
Signed-off-by: Koska <andrzej.koska@intel.com>
Related-To: NEO-3239
2019-10-23 09:11:04 +02:00
c46e886649 Create drm to check status of set memory regions operation
Related-To: NEO-3008

Change-Id: I0c26656c905ad52295ed0aaf2c53731c99da9cc2
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2019-10-16 11:16:27 +02:00
0f122fbcee Remove simplified mocs logic.
Change-Id: I9fabfea94129fbc419ab0c9bca957cf7b9952c38
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2019-10-04 14:21:22 +02:00
4360aff03c Move runtime/helpers/aligned_memory.h to core/helpers
Signed-off-by: Jim Snow <jim.m.snow@intel.com>
Change-Id: I15de094c51d4eb18bfff4d17fd34e817b5525fda
2019-08-06 23:56:24 +02:00
fe26b0b406 Move debug_manager_state_restore.h to core.
Change-Id: I3ef4a1aec40efa4bbc8346a5b517336c42c06519
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-07-15 17:21:38 +02:00
4403796f58 Use GfxPartition for GPU address range allocations
[4/n] - Remove allocator32Bit

Related-To: NEO-2877

Change-Id: I0772a7fe1fda19daa12699c546587bd3cdd84f2c
Signed-off-by: Venevtsev, Igor <igor.venevtsev@intel.com>
2019-07-08 12:09:07 +02:00
5fb7b11049 Enable local memory on Linux by default
Related-To: NEO-2687

Change-Id: I0a208e0ccd2946f1cc07dcfb36a9e9e071bb40bb
2019-07-02 14:39:24 +02:00
165d1e4e55 Use GfxPartition for GPU address range allocations
[2/n] - OsAgnosticMemoryManager

Related-To: NEO-2877

Change-Id: I887126362381ac960608a2150fae211631d3cd5b
Signed-off-by: Venevtsev, Igor <igor.venevtsev@intel.com>
2019-06-25 12:54:20 +02:00
b8fb5e683b Move basic_math.h and vec.h to core directory
Change-Id: I143b7af450ff48d4958b4bc7137b393a2dc0eb64
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-05-14 21:32:55 +02:00
0f87e9aa1a Rename HardwareInfo members
Change-Id: I85f56b677bafdd75dd958b488522393fc18b68af
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-05-09 09:13:55 +02:00
bb80d327c7 Move HardwareInfo ownership to ExecutionEnvironment [1/n]
Change-Id: I5e5b4cc45947a8841282c7d431fb69d9c397a2d4
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-05-08 16:11:01 +02:00
a025dc6985 Reverse logic of creating Memory Manager - part 6
-Remove a redundant condition from the MemoryManager constructor

Change-Id: I4b6c56f30a19e77a7a20f68c6d85516aaa52d102
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-04-01 10:27:29 +02:00
916f1b2436 Cleanup linux_dll_tests 3
- use correct deviceId in tests

Change-Id: Ifa4a0cd0ddd97870fdd5947e6cc71ad75b25cd0b
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2019-03-29 08:42:33 +01:00
84d25a9324 Cleanup linux dll tests 2
- use TESTS_PLATFORM instead of SUPPORT_PLATFORM macros

Change-Id: I00b26c74ae90ee4b649d368ba01ccd2b3b00af3f
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2019-03-28 15:38:56 +01:00
da3e483703 Cleanup linux dll tests
- include headers from absolute paths
- restore changed global state in TearDown()

Change-Id: I81fab71aabc0df9d995928e75611681288951916
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2019-03-28 13:19:18 +01:00
9e52684f5b Change namespace from OCLRT to NEO
Change-Id: If965c79d70392db26597aea4c2f3b7ae2820fe96
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2019-03-26 15:48:19 +01:00
9ecb3193af Reverse logic of creating Memory Manager - part 3
-Move a Device::getEnabled64kbPages method's logic
 to the Memory Manager constructor

Change-Id: Ide88898000e5817a79f9a6ad5dfc9d680bec0533
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-03-25 14:42:16 +01:00
ca4b47f7f4 Add support of GPU preemption (v1.00).
https://github.com/intel/compute-runtime/pull/119

Change-Id: I3134d62b66751c8621b80002373a7a9b198e044e
2019-03-22 08:49:11 +01:00
573d2e0eec Add enableLocalMemory param to DrmMemoryManager ctor
- add linux dll tests for createMemoryManager()

Change-Id: I6e111e7a480d895a8520507af6b6a699f9dca160
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2019-03-12 22:22:37 +01:00
8b57d28116 clang-format: enable sorting includes
Include files are now grouped and sorted in following order:
1. Header file of the class the current file implements
2. Project files
3. Third party files
4. Standard library

Change-Id: If31af05652184169f7fee1d7ad08f1b2ed602cf0
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-02-27 11:50:07 +01:00
cfafe943eb Use different DRM Context for each OsContext on Linux
Change-Id: I543df4accdeba6c69b7dcf86d4238d12dafe92fe
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-12-12 15:08:23 +01:00
f5508ed2d7 Simplify preemption control on Linux
Change-Id: Ie0896cc8950f7fbb271b710b8bb221eb41ba0445
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-12-10 13:12:16 +01:00
6714fe84b8 fix debug message when creating Drm
Change-Id: I1b7a1f65d0e9b7371a171bc1b14c226ec5ae6b08
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2018-11-23 14:15:31 +01:00
40146291ad Update copyright headers
Updating files modified in 2018 only. Older files remain with old style
copyright header

Change-Id: Ic99f2e190ad74b4b7f2bd79dd7b9fa5fbe36ec92
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2018-09-20 18:02:35 +02:00
89cf7532ea Make all gmm helper members non-static
Change-Id: Idb399aa275d66905040b6317d3888c94ffb98c55
2018-08-03 08:25:44 +02:00
e18e9fb94e Move static methods from Gmm to new GmmHelper class
Change-Id: I84fbe94f0e1072324164086b456c71a46ae5040c
2018-06-27 16:46:09 +02:00
08faa004aa Linux dll tests: test turbo patch only on supported platforms
use deviceId from first entry in deviceDescriptorTable as default deviceId
correct using simplified mocs table

Change-Id: I3a6e7cd599912380d48937767f201b44ee98e391
2018-05-21 21:17:12 +02:00
2bc2869fe1 Refactor ult's for preemption enabling part 2
Change-Id: If8e335e87f3a78d35cab12a17880fb1922d479f5
2018-05-10 13:12:03 +02:00
86e000f67a Do not use simplified Mocs Table on gen8 devices.
- On gen8 devices we are not using index to control caching, but we program
caches directly
- In such case we need to rely on values reported from GMM instead of using
Kernel Mocs indexes.

Change-Id: I6c030847509d8f39f63ac98ebd3ebd0b0907e625
2018-04-10 15:43:40 +02:00
d7687e32c4 small cleanup around Linux specific ULTs
- move main file to linux/ folder
- don't use default listener. follow main ULTs behavior

Change-Id: I236a42eef9d7bb3f61112f847aec7fc3e9f7873e
2018-02-16 11:46:29 +01:00
6b368803fc Add support for legacy kernel MOCS selection.
- Detect if driver is operating on patched legacy kernel.
- If turbo patch is detected, assume legacy custom kernel.
- Add simplified MOCS selection logic to GMM helper

Change-Id: I1ae821336205e473f00d72ddbfebee828427dfc7
2018-01-25 09:10:04 +01:00
7e9ad41290 Initial commit
Change-Id: I4bf1707bd3dfeadf2c17b0a7daff372b1925ebbd
2017-12-21 00:45:38 +01:00