Commit Graph

65 Commits

Author SHA1 Message Date
Dunajski, Bartosz
d9dd68a8ef Remove copy constructor for GraphicsAllocation
Change-Id: If547a004b6f9e5cadb1f6ba0a0f44c3ac0d1ff0d
2018-03-01 14:00:24 +01:00
Mrozek, Michal
0b8234117b Add support for createInternalGraphicsAllocation in DRM
Change-Id: I84090dfc4774506dee993e9c0c78c336367c43fd
2018-03-01 11:30:38 +01:00
Artur Harasimiuk
9e9876cd17 remove unused field
Change-Id: I280be1b690f826ad63f77943f3fb54d6da2bd65b
2018-03-01 09:14:07 +01:00
Mrozek, Michal
0b6acb4d7a [3/n] Internal 4GB allocator.
-Do not create allocator 32 bit with every DRM memory manager
-This is not needed for apps that do not use this.
-Add allocation of allocator to setForce32BitAddressing

Change-Id: I836b60f6b74eecf678cc9d56851797d0db176107
2018-02-28 16:54:49 +01:00
Mateusz Jablonski
cb37fb97a3 Rename DebugVariables.def to DebugVariables.inl
Append this file to project source tree

Change-Id: I1d1f8538f6d28abd053a3106f9ffe4b955530416
2018-02-28 14:18:14 +01:00
mplewka
8ace8f8256 Provide smaller surface size for tests
Change-Id: I3f08b85c17ee89f710a449dea3d71c9ecba5b44e
2018-02-28 14:04:23 +01:00
Mrozek, Michal
0e3f2bf361 [4/n] Internal 4GB allocator
-Allocate internal 4GB allocator when DRM memory manager is created.

Change-Id: I072e81de219415a6c02ab1fd1b41b6a8338ee67c
2018-02-28 12:52:31 +01:00
Mrozek, Michal
19c68a608f [1/n] Internal 4GB allocator
- Add new entry point in memory manager for internal allocations.
- Route to allocate32BitGraphicsMemory
- Add new enum to control memory region
- Change mm to memoryManager

Change-Id: I2ee069aa9baf7f69f652022e026569ec4fdb9d77
2018-02-27 16:35:12 +01:00
Mateusz Jablonski
386675480f Cmake refactor part 5
Move os_interface and dll source files definition to cmake files
in subdirectories

Change-Id: I6baa5ac0cbc64d0a4a9fe9541f0c3b730c9a2119
2018-02-27 14:31:48 +01:00
Mrozek, Michal
cd747b7b8c Change notify delay to use microseconds.
- Microseconds offer better precision.
- Some workloads require threshold less then 1 millisecond to work
efficiently.

Change-Id: I1a565049340fb6eeebe5c0a61ededae9959daca8
2018-02-27 09:10:49 +01:00
Mrozek, Michal
e8f5f5286d Remove not used code.
Change-Id: I7a1453c816f775bbaa38c2db3f31d21dff36c344
2018-02-26 12:35:02 +01:00
Mrozek, Michal
3c230f6302 Align createContext & createDevice DisableGpuTimeout flags.
- Make sure we program the same value for both calls.

Change-Id: I11b26fb56e60fff8f379827f6f6424a387b005d3
2018-02-22 15:55:30 +01:00
Artur Harasimiuk
63732513bb enable instrumentation when available
use of instrumentation will be enabled:
- runtime capability set to True
- static library available during compilation
- device reports capability

Change-Id: I43286ebf1135f3a2ec6af924e27ece03042ac0ca
2018-02-21 17:48:08 +01:00
Mrozek, Michal
75d883c075 Do not use virtual functions in constructor.
Change-Id: Ic720843b3b290b234577e1bc4913dfc07a75733c
2018-02-21 10:26:17 +01:00
Artur Harasimiuk
f805bd9741 perfCounters: querySize now depends on gfx core
Change-Id: I7ad493f87debd1c2c642f695f0e836f010c2aa0c
2018-02-20 13:04:54 +01:00
Dunajski, Bartosz
1292c3d533 Improve thread arbitration policy programming
Change-Id: Ibd764352e14d1a5112034b1c5a1fc6d6d67ebac0
2018-02-20 11:05:54 +01:00
Mrozek, Michal
ca33e029b7 Fix profiling calculation for CPU profiling path.
-There was a precision problem with timestamp calculation, all math was using
integers which are not very precise in overflow scenarios
-Change the logic to use doubles and cast back to uint64_t at the end.

Change-Id: Ia08d504a90a43df7330f398af966535ed944650d
2018-02-19 19:08:23 +01:00
Artur Harasimiuk
c9180fec65 create infrastructure for gen specific performance counters
Change-Id: I6ef471ade14ce27b6e5949726b57453a6fe69abc
2018-02-16 12:13:30 +01:00
Mrozek, Michal
f9254c8de6 Add new performance flag to steer NoRingFlushes CreateContext flag.
Change-Id: I51426c1c51a1e4133f9bcc3127ecdc5af51048cd
2018-02-16 10:47:24 +01:00
Dunajski, Bartosz
87ed3d4fff Improve page table manager initialization
Change-Id: Ifdd74bf93a93fcdecaae5b1276c0fa83a9664987
2018-02-15 13:31:50 +01:00
Zdanowicz, Zbigniew
8a5b0ee518 Debug variable must override HardwareInfo capability at DeviceFactory
RT must override engineType at DeviceFactory, since Wddm CSR uses HardwareInfo
at its ctor.
AUB tests must override engineType at Device ctor since they bypass
DeviceFactory.

Change-Id: I73e4066e9b16aed0410fe39a82726d3baea2e67f
2018-02-14 17:29:30 +01:00
Zdanowicz, Zbigniew
45dedb37f3 For HostPtr surfaces of enqueue calls use GPU address
Change-Id: I67bf5076d23d43438f5e82c5cb6cbd3b9ed2f152
2018-02-14 15:44:27 +01:00
Zdanowicz, Zbigniew
d6b5433f14 Lower Windows minimal address to 16kB
Change-Id: I138438943d438ace0b5d76e04f3af8d9541d532a
2018-02-12 18:04:56 +01:00
Zdanowicz, Zbigniew
5a175cf1cf Override engine type used by device in Device ctor
AUB tests do not use DeviceFactory class to create Device objects but still
need to have a functionality to override default engine type

Change-Id: I6841cb0a9c5726ac4308c742c78cf7a61829f168
2018-02-12 16:50:35 +01:00
Hoppe, Mateusz
012b8bd73c Adding initial PreemptionMode::Initial
- account for initial setting (when set mode was equal to initial(Disabled))
estimate size in cmdStreamCS, program MMIO

Change-Id: Ice218ae986583c8f3bab4f4f6979e38f03e30d7e
2018-02-08 16:21:52 +01:00
Zdanowicz, Zbigniew
a1db4ddd7a Retry Wddm mapGPUVA after failure when deferred deleter is set
mapGPUVA will fail when allocation is still in deferred deleter and using
the same base pointer to map, while there is no reserveGPUVA for SVM range.
In that case driver should drain deleter and retry mapGPUVA call

Change-Id: I4ded7d79e0cd935ec62d7fae785d66570c847535
2018-02-08 10:28:40 +01:00
Mateusz Jablonski
ea021f8d69 Cmake refactor part 1: fix dependencies with including os_inc.h
Remove some not needed includes

Change-Id: I158ad663ccfcec4822e3768df9d05090c5e096f9
2018-02-08 09:40:40 +01:00
Milczarek, Slawomir
12b437ddc8 Add DAF headers to manifest.yml and redefined headers search path in cmake
Change-Id: I8d399aa717d8274da3892c3229e6502ef601864b
2018-02-07 17:12:17 +01:00
Mrozek, Michal
006d248de6 Always set DisableGpuTimeout.
Reg key for preemption may not be available, this doesn't mean that
preemption is off.

Change-Id: If7c8a8228fbfa9f01f95d61d4134bd398e4079f6
2018-02-06 19:21:06 +01:00
Zdunowski, Piotr
1cfe5344fc Enable throttle hints extension.
Change-Id: I996fce8dbc792d77dc85df143ba5c0aa1cad83e5
2018-02-06 17:01:37 +01:00
Dunajski, Bartosz
bdee42ca16 devices.m separation for Linux
Change-Id: Ia8e430db4dfcefc1b19e23e9cd7113bf87f0a7af
2018-02-06 15:24:20 +01:00
Milczarek, Slawomir
89be67b570 Add support for DAF injection
This commit adds support for Debug Assistance Functionality (DAF)
aka "Driver Aubcapture" to debug builds on Windows.

Change-Id: I7e859d32af17a6fcee23868392df6cd1390e4afd
2018-02-05 16:08:52 +01:00
Zdanowicz, Zbigniew
292f8fae90 Use alignedSize for map range and to calculate trim budget
Change-Id: Iceaf5c1d7fd1abfa6bdb08c97a439dba3bbccdf4
2018-02-01 19:20:27 +01:00
Brandon Fliflet
e719ec4c47 disable dumping of buffers or images by regkey in AUBs
Change-Id: I0dc6cf5a9c4df3e2f2057870045a2f10a4a80720
2018-02-01 09:51:48 +01:00
Zdanowicz, Zbigniew
bf270c4643 Use reserved memory to map GPU VA when cpu memory doesnt meet restrictions
Change-Id: I9f255a3f2ce6b1c22110e7da6e90c013f1f598e6
2018-01-31 18:05:11 +01:00
Milczarek, Slawomir
7c038eb7a4 Add AUB generation in parallel to execution on GPU
This commit adds basic for parallel AUB generation and execution on GPU.

Change-Id: I3c77557a9578db05c87be6db7a5e3006f7c4b053
2018-01-29 17:24:26 +01:00
Zdanowicz, Zbigniew
e42d43953d Restrict system memory allocations to certain address range
Change-Id: Ibe8c1183368ce48f2c820d0f1a71f0b15703ffcd
2018-01-26 15:16:41 +01:00
Dunajski, Bartosz
3532c6373f D3D sharable 2D texture: Map Aux GpuVa and set renderCompressed if possible
Change-Id: I508965d07f456af74ecef6e980337f42f5967b43
2018-01-26 08:38:59 +01:00
Zdanowicz, Zbigniew
4ad96b75f5 Make base class for gmm_memory
Change-Id: I307f616be27d5fed126f0e36bff0d182ab7a8b53
2018-01-26 08:35:41 +01:00
Zdunowski, Piotr
0b6b12ea57 Globally enable priority hints extension.
Change-Id: I9f3b8d3cf1bedb41d9e0622ff514bf76b4518d8c
2018-01-24 20:07:31 +01:00
Mateusz Jablonski
8d68788807 Remove not used files
Change-Id: I3c232d09023b7a327a5857c46fb9dfdbe63cdb6e
2018-01-23 12:47:20 +01:00
Dunajski, Bartosz
3b626a0290 Force Disable ftrCompression on Linux
Change-Id: Ia5dc4b323571442ee52551d93869163fc3f45834
2018-01-18 09:16:28 +01:00
Zdanowicz, Zbigniew
75a902bf2c Wddm freeGraphicsMemory should handle null GraphicsAllocation same as Drm
Change-Id: Idafdaf654f630d41b890f87c6e8c14833b18f714
2018-01-18 08:24:07 +01:00
Mrozek, Michal
e923c2211b Add Unrecoverable if GraphicsAllocation in use is being destroyed.
Change-Id: I74a54ef023c62e12d711db07d79942166e002188
2018-01-17 18:36:33 +01:00
Zdanowicz, Zbigniew
602474f868 Command streamers should use device default engine type
Change-Id: I7286f15ba78001729ea489a43576d96f109d44f0
2018-01-16 22:37:44 +01:00
Artur Harasimiuk
3883f790cc Instrumentation refactoring
Use bool instead of int where it should be.
Tweak naming.
Removed unused members

Change-Id: I468be28d78e9da7c7fa1632e362ed077929fb91a
2018-01-16 16:15:44 +01:00
Mrozek, Michal
8ee2c54a50 Disable squared algorithm.
Change-Id: Ibecbd75b97596e56efc92445f46a4f2a4768a351
2018-01-16 11:20:26 +01:00
Mrozek, Michal
42798fcae0 Revert "Add Unrecoverable if GraphicsAllocation in use is being destroyed."
This reverts commit 920d952a4a.

Change-Id: Ib14743e37545776ebf1b6e782daceb436d280f9b
2018-01-15 14:43:11 +01:00
Mrozek, Michal
920d952a4a Add Unrecoverable if GraphicsAllocation in use is being destroyed.
Change-Id: Ie224ac4d098678a99da0a8c084f02740f323c475
2018-01-12 15:22:15 +01:00
Mateusz Jablonski
502e9c2d15 Async deleter: move releasing cpu/gpu pointers to main thread
Change-Id: I3c3c9fb6200c38ecf1fc8910380531d6a5f1e875
2018-01-12 13:16:59 +01:00