Commit Graph

38 Commits

Author SHA1 Message Date
Jablonski, Mateusz 798137e4bb Add function to create devices bitfield based on allocation properties
Change-Id: Ic70443b1fb6106186efcff318690e434dc1db625
Signed-off-by: Jablonski, Mateusz <mateusz.jablonski@intel.com>
2019-02-26 12:07:09 +01:00
Dunajski, Bartosz ba681035f8 Add new CSR to ExecutionEnvironment
Change-Id: I5d6b58b5c185bf283ae529ebb21a4cbc8e9f198c
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-02-18 11:39:09 +01:00
Hoppe, Mateusz 0f36265f55 Pass CsrType to initAubCenter
- create AubManager with correct mode

Change-Id: I89c9c3c7edf553854b8b82788cec3dec53a62d79
2019-02-13 09:48:05 +01:00
Piotr Fusik f014f27370 Support the EnableLocalMemory debug variable in CSR.
Change-Id: I902b06ab0b4a3df477d12804ba74b2727d8863f6
2019-02-12 13:09:23 +01:00
Mateusz Jablonski 06600f169b Define GPGPU engines per gen
Change-Id: Ie0e565d11184c5355b5bf09f5b10a567deb5c106
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-01-15 12:05:19 +01:00
Hoppe, Mateusz 82078074bc Add createAubManager function
- unit tests are using mocked version of createAubManager
- dynamic library, aub and tbx tests are using functional
version using aub_stream

Change-Id: I12d69d84d00645009b026df266b8b64adebb86d4
2018-12-12 08:23:18 +01:00
Milczarek, Slawomir 3b8ff44d55 AUB CSR with a separate function to write memory
Move common code related to writing memory to dedicated function

Change-Id: I4ac8ec779cb40146bd27b8e40728d81d3b5b4276
2018-11-26 20:21:19 -08:00
Dunajski, Bartosz 7781089740 Allow Device creating multiple CSRs [4/n]
- Introduce additional RCS engine
- Set fixed size for Engines array

Change-Id: I06533a425684b64214f956783b07877e6157935b
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-11-26 09:40:44 +01:00
Milczarek, Slawomir cd5f85052e AUB CSR with a separate function to submit batch buffer
Move code related to batch buffer submission from flush to dedicated function
Add parameter to pass aub file name from AubCenter to AubManager

Change-Id: I20abb3c8bd92114b3bc9caa2a6291dc1bbddad2a
2018-11-25 18:02:25 -08:00
Dunajski, Bartosz 3ad33bf1b8 Allow Device creating multiple CSRs [3/n]
Add CSR from Device to CommandQueue

Change-Id: Iaccf3c73d25e357242837677777d0513e81f520e
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-11-23 10:51:34 +01:00
Dunajski, Bartosz af46d88fc1 Allow Device creating multiple CSRs [1/n]
Change-Id: Ie5d8d89aa388c608d5464919059c28a054ac9b1e
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-11-21 12:37:25 +01:00
Hoppe, Mateusz 0942edd6af Update aub_stream headers
- pass hwInfo and localMemoryEnabled to AubCenter ctor
- initialize AubCenter in Platform:intialize() when Device is
 created - only when CSR is not CsrHw
- move aub_center files to runtime/aub directory

Change-Id: Iceb4bf1cb2bb55b42d438502cca667a449f11411
2018-11-13 18:09:30 +01:00
Kowalczuk, Jakub 8ead8f727f Control enabling of local memory based on OS and HW Capabilities
Change-Id: Ia26c856aeef27fe638b7a6e895cc289859f3c579
2018-10-25 16:36:47 +02:00
Mateusz Jablonski 4f028d13a1 Command stream receiver: use memory manager from execution environment
Change-Id: I236218a73bd7dac6e5744e3596f146b77b5ca1c8
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-10-16 12:14:55 +02:00
Dunajski, Bartosz 2cd411227c Improve PageTableManager creation
Change-Id: If359c76ae880fb2e1f56fc561aca761530787b5e
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-10-03 22:37:05 +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
Milczarek, Slawomir efdbde245a AUB CSRs to use a shared physical address allocator
This commit introduces AUB-specific control class to execution environment.

Change-Id: I525c9c93a4f10f769dbedb7d097674c35693f0b1
2018-09-26 20:31:56 +02:00
Milczarek, Slawomir ee797c2f14 Multiple AUB CSRs to operate on a single file stream
This commit introduces AUB stream provider class to produce
a single file stream in multi device scenarios with multiple AUB CSRs.

Change-Id: Id70e0d680459d34f4291b9e56aa39d960f025ac6
2018-09-23 05:41:00 +02:00
Artur Harasimiuk 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
Mrozek, Michal 8e33ec04c5 Create separate command stream receiver for every device.
Change-Id: I8073380941e2a3bfe57610e6e437bdc177dcc2d5
2018-09-12 09:32:41 +02:00
Mrozek, Michal 377b99be90 Pass device index to create method..
Change-Id: Iab493edf1b96a6cecf6e3dba6813824529f0c08b
2018-09-11 16:26:54 +02:00
Hoppe, Mateusz cfa8035836 Add localMemorySupported member to MemoryManager
- extend constructor to take new flag
- extend ExecutionEnvironment createMemoryManager with new flag
- only OsAgnosticMemoryManager changes in this step

Change-Id: I1dae4fd79fe28fd87e42b237600dc216c94b597e
2018-09-07 12:04:21 +02:00
Maciej Dziuban 88c5d3f5c2 Refactor ExecutionEnvironment destruction order test
Change-Id: I4c7e8b0da1d2e97d6d688f62d7b311cbdc734323
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-08-22 12:59:24 +02:00
Maciej Dziuban e0e48203d2 Move BuiltIns to ExecutionEnvironment
Change-Id: Ib2a1b82cc7858c898bb32820aad106a01d1325ad
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-08-21 23:15:47 +02:00
Maciej Dziuban d2759a0629 Move CompilerInterface to ExecutionEnvironment
Change-Id: I14afdd8fc41ecd4ac8c8fcbeecda2539bc847288
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-08-21 15:30:15 +02:00
Milczarek, Slawomir 393c2219c9 Add device callback for GMM library to notify AUB subcapture
This commit adds a new callback to be called by GMM library
when it allocates/deallocates compressed resources to collect data
about their addresses and sizes and handle their AUB residency.

Change-Id: I075d3ff4cb049cfe626da82892069c4460ea585c
2018-08-20 14:38:42 +02:00
Mrozek, Michal ae9134233d OsInterface cleanup.
- OsInterface is now a part of execution environment
- it is created when getDevice is being called
- move ownership of wddm from Wddm Memory manager to OSInterface
- reuse osInterface on Linux in Command Stream Receiver
- currently OsInterface is not reused upon command stream receiver creation
on Windows this will change in further commits.
- make enumAdapters non static function

Change-Id: I10f36c01e6729f48653e3b5c11cbc32e811ce754
2018-08-10 14:25:53 +02:00
Jobczyk, Lukasz eebb919c18 Move SourceLevelDebugger ownership to execution environment
Change-Id: I7fc6fd1cde2e450dbd41a164f915373e80a4aaf8
2018-07-25 10:32:29 +02:00
Mrozek, Michal 366a12e3ce Move setting external memory managers to mock layers.
Change-Id: I335fd35269da9093c9e744c2735215e8d561098c
2018-07-20 12:09:48 +02:00
Mrozek, Michal aa71442d50 Make sure that devices reuse memory manager and command stream receiver.
- initialize them only once per execution environment
- initialize tag allocation only once

Change-Id: Ic816c81a84320aeb66b09d333bec69a92fe0859b
2018-07-17 16:38:05 +02:00
Mrozek, Michal f59c191915 Refactor parts of createDeviceImpl.
- Move portions of code to dedicated methods.

Change-Id: I9abec23785f3f3201dce42a7a840ca4a450c4cc1
2018-07-17 09:46:45 +02:00
Mrozek, Michal f6dc90c903 Move destruction of command stream receiver to execution environment.
- remove other explicit resets, no longer needed.
- change the order of destruction, command stream receiver needs to be
destroyed prior to memory manager.

Change-Id: I3c5db46db15a2cb7dc9f6fdb0e06441806fbd9f2
2018-07-16 13:20:25 +02:00
Mrozek, Michal e34c47271b Fix destruction sequence in execution environment.
- Gmm needs to be closed after memory manager.

Change-Id: I608fc328034012ce52b7e791afd9ad2ff2f0cd1a
2018-07-13 09:40:19 +02:00
Mrozek, Michal dc19b018b7 Move memory manager destruction outside of device scope.
Change-Id: Id012b176e99d5fffe39fe91fb54d2d774468a2c1
2018-07-12 11:50:26 +02:00
Mrozek, Michal 7735fb5767 Move memory manager ownership to execution environment.
Change-Id: Ib743b04139a6572da65eeffa6cd3e13db4bd9098
2018-07-12 08:23:05 +02:00
Mrozek, Michal a126b290b8 Move ownership of command stream receiver to execution environment.
Change-Id: Ibf924347e79f0c6e61141542c7e4c97c7a27e88d
2018-07-11 17:07:22 +02:00
Mrozek, Michal a95cca71e4 Device now adds dependencies on ExecutionEnvironment
- This allows for ExecutionEnvironment to live longer then platform after
its global destruction
- Device adds references to ExecutionEnvironment after creation
- When device is destroyed it removes the dependency causing the cleanup
- Platform upon destruction no longer destroys the device, but decrements
the internal ref count.

Change-Id: I22593ea44b2b50e3416575a9e97e3ce0a1f8b5c0
2018-06-27 16:37:29 +02:00
Mrozek, Michal a0e9b96e52 Add execution environment.
- this class will encapsulate common shared state
- platform will create it
- clients will increment ref count
- platform upon destruction will decrement ref counts
- it means that execution environment will be capable of living longer then
platform in case there will be dependencies.

Change-Id: I0ea7f85ea57448c0e641673f1d15851e50b2b8b2
2018-06-22 13:15:10 +02:00