Commit Graph

209 Commits

Author SHA1 Message Date
Mrozek, Michal
7f7daef49c Avoid default parameter to program constructor.
Change-Id: I75e9a619131f7d8721416cf18d87418568d04f25
2018-02-28 16:56: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
Artur Harasimiuk
c1683691c0 enable perf counters for events
added CL_PROFILING_COMMAND_PERFCOUNTERS_INTEL to cl_ext_private.h header
to expose this query

Change-Id: I8881456c54d391a66c2ce619a1a47ad1219c4376
2018-02-28 12:09:55 +01:00
Artur Harasimiuk
5c83a077ff refactored Event::getEventProfilingInfo
- depending on argument different parameter size may be returned. we
  shouldn't check this at the beginning of file but after checking
  parameter name.
- check retVal in profiling ULTs

Change-Id: I18a80545111d6efffd0a176340b3c3234f53af08
2018-02-28 09:43:47 +01:00
Mateusz Jablonski
679827ca21 Rename CMAKE_SOURCE_DIR to IGDRCL_SOURCE_DIR in source definitions
Change-Id: Ie889589edeee6b7eb922360339450fd01cc278af
2018-02-27 17:58:24 +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
Dunajski, Bartosz
b055265549 Missing device IDs: 10x BDW, 6x BXT, 2x CFL
Change-Id: I223006c9ca65e44cfd4042e6d933f331a156d278
2018-02-27 11:35: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
3da9df23a9 Flush DC in case shared objects are used.
- Due to use cases where one shared buffer may be mapped to multiple CL
buffers we need to flush DC between enqueues.

Change-Id: I05d7f844afe31d52a0004f5e2e5efa776f9dadbe
2018-02-26 15:51:06 +01:00
Mrozek, Michal
e8f5f5286d Remove not used code.
Change-Id: I7a1453c816f775bbaa38c2db3f31d21dff36c344
2018-02-26 12:35:02 +01:00
Artur Harasimiuk
c50054f787 enable interoperability with ocl-icd
according to spec we have to export clGetPlatformInfo API entry point
for Installable Client Driver (ICD) to work.

on Linux it requires extra flag for linker to avoid loop in dispatch
table.

Change-Id: I2f6cf7da10e3a346c363d7bc94d9eff1eeb64895
2018-02-26 10:55:06 +01:00
Artur Harasimiuk
be0150a563 WUD is default for Neo@Windows
There is no need to have this macro and execute it twice

Change-Id: I3756913d2dbba100bb173771d085c609e4509e69
2018-02-26 09:06:48 +01:00
Artur Harasimiuk
2e5e1ac0fb update method to find GmmLib
search order is:
1. check variable GMMUMD_LIB_NAME. if set target of this name should
exist
2. check for variable GMM_SOURCE_DIR. if set include such folder and
check GMMUMD_LIB_NAME for library name assumig 'gmm_umd' as default
3. check if gmmlib folder exists in workspace. if yes, then include it
and check GMMUMD_LIB_NAME for library name assuming 'gmm_umd' as default

Change-Id: I9f5f69ab97c0bb8f2c250ac91b69c3ccd048fdda
2018-02-26 09:05:52 +01:00
Mrozek, Michal
7255b17d6b Move register definition to common header file.
- It is not gen9 specific.
- Remove now obsolete header.

Change-Id: I03e7631c60e4263bcc52dca9f9df19fdba1ed702
2018-02-26 08:33:46 +01:00
Dunajski, Bartosz
3c4bc00eae Refactor Pipe Control setup before VFE command
Change-Id: Iaed34cb9cf0e5a628c54950d97df7d8c4b5bf69b
2018-02-23 19:05:29 +01:00
Milczarek, Slawomir
103b560655 User space AUBs to store GPU address in non-canonical form
This commit ensures that GPU address be stored to AUB file in decanonized form

Change-Id: I6deb98e59d8c23d47d945a84c57ce81c0c5e2ba4
2018-02-23 17:46:05 +01:00
Zdunowski, Piotr
e3268f8a9c Revert "Allow custom props settings."
This reverts commit f43a04d3b2.

Change-Id: Ib4cd854c19fe96b0ea9d5e3782d1247c265927c9
2018-02-23 16:01:31 +01:00
Mrozek, Michal
a891b23830 Fix profiling in device enqueue scenarios.
- Remove high part define as well.

Change-Id: Ie57b8e682507e4b620ad96de2b969dd0163315e0
2018-02-23 13:21:04 +01:00
Dunajski, Bartosz
dd44a87d5f Map/unmap enqueue fixes [6/n]: Support multiple map operations
- Dont make cpu/gpu writes on read-only unmap
- Read/Write on limited map range only
- Overlaps checks for non read-only maps
- Fixed cmd type on returned event

Change-Id: I98ca542e8d369d2426a87279f86cadb0bf3db299
2018-02-23 10:45:06 +01:00
Mrozek, Michal
42baecd2d4 Make HW Helper abstract class.
- removes unnecessary dummy methods.
- removes unnecessary dummy methods tests.

Change-Id: I6179484ca9a5471637cb466ebe86f258b1e05e5e
2018-02-23 10:30:52 +01:00
Mrozek, Michal
0825c009cf Fix incorrect profiling handling.
- For context specific timestamps driver needs to use only low part

Change-Id: I579a68d8b3c1c4d5a8b40bf3a526963bea84fd11
2018-02-23 10:04:31 +01:00
Mrozek, Michal
f90ebac12a Clean obsolete code.
Change-Id: I9551f7217924c7ea8f44a3322fc3096252c4d6f7
2018-02-23 08:10:12 +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
Milczarek, Slawomir
28a1eec925 AUB patch to move physical addresses to a lower region
Ensured canonical addresses not to go beyond acceptable physical addresses.

Change-Id: I4af3b7bd3d43ee86aabfdbddd0a21bc937986d43
2018-02-22 09:52:48 +01:00
Chodor, Jaroslaw
bad0ba8ac8 Fixing backup/restore of asynch handler in ULTS
Change-Id: If2cbbaa30968ecec3c1bc0361ff86aa523122f21
2018-02-21 20:35:08 +01:00
Dunajski, Bartosz
b4f79e036f Map/unmap enqueue fixes [5/n]: Unify offset calculation
Change-Id: I53eafe89532d43c5cf5139ed3fac0a87619dc7a3
2018-02-21 20:12:52 +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
Hoppe, Mateusz
1207da92a3 Change max image3d dimensions for gen8
- gen8 has lower max image 3d height and width

Change-Id: Ibe94a24cba488a5ebf582992a5f7a4d5bad801f8
2018-02-21 13:17:03 +01:00
Zdunowski, Piotr
f43a04d3b2 Allow custom props settings.
Change-Id: Idd442f429e8f413cde67781995e0c1b1c010bcee
2018-02-21 12:16:35 +01:00
Mrozek, Michal
75d883c075 Do not use virtual functions in constructor.
Change-Id: Ic720843b3b290b234577e1bc4913dfc07a75733c
2018-02-21 10:26:17 +01:00
Mrozek, Michal
60a8aa1b17 Add missing device caps.
Change-Id: I53958f185e7365872d6161b29cc5b62a0f8d8398
2018-02-21 09:00:29 +01:00
Dunajski, Bartosz
f6825252fc Map/unmap enqueue fixes [4/n]: Return slice/row pitch
When queue is blocked on non-blocking call, map operation is added to
waitlist dependencies. Returning slice/row pitch for map image was skipped

Change-Id: I46f97590315e7aee7fbbfbdb615f383cdb666307
2018-02-20 14:30:35 +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
Artur Harasimiuk
67c8d7a9ca properly link with instrumentation_umd
Linking is required for igdrcl_dll target only. Not needed for static
library. This reduces scope of targets where library is required.

Change-Id: Ie48ce1f299ef9d4e484081fe87254869c72ca042
2018-02-19 20:37:20 +01:00
Milczarek, Slawomir
c135bd4c42 CSR HW with AUB dump to accept images with no host ptr
This commit enables AUB dumps in scenarios with images with no host ptr
when resource lock is required to get CPU address and dump image contents.

Change-Id: I996efc5f520d0ac7b470870f7b4eeb9d2ef7b25b
2018-02-19 19:09:35 +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
Chodor, Jaroslaw
1e422813b8 Externally synchronized event
Adding support for externally synchronized
events inside async events handler

Change-Id: Iddc5d3ae25577b792d197aa5b5857618201a3449
2018-02-19 16:01:29 +01:00
hjnapiat
c996bad881 Fix build error
Change-Id: I609e221fbf68cca23a9fb24ca119b428a0b2cee0
2018-02-19 14:30:26 +01:00
Mrozek, Michal
9d45b5066b Change unrecoverable to debug break.
- For applications that are creating user event holding command driver adds
reference count on kernel used for this command
- If such user event is never signaled we will get unrecoverable hit at
device cleanup

Change-Id: I2d7a0254f5ff0e2d97dcfc22ee8ac0bf54a31f48
2018-02-19 13:12:56 +01:00
Milczarek, Slawomir
5c746131f1 HW CSR with AUB dump to operate on real device (HW Info)
This commit ensures AUB files to be dumped for real device
in the configuration CSR HW + CSR AUB.

Change-Id: I7b5f740440aae062d2f5ad7ad8b9c3b4f2207ddd
2018-02-19 13:11:43 +01:00
Artur Harasimiuk
a99d951c55 clGetPlatformIDs should check if platform initialization was successful
Change-Id: I3e9d78155e6a914ed0d755d81ddc13c4d3a8a291
2018-02-19 12:12:29 +01:00
hjnapiat
5909a6b3d3 Add support for GT-Pin Callbacks [3/n]
Change-Id: Iea4b49efc9a666fde310ece15a9c69686d22f627
2018-02-19 10:43:19 +01:00
Artur Harasimiuk
89627bd81e fail platform initialization when no device found
Change-Id: I76c8e12cd908be36cd8747346c6e543e3b748933
2018-02-16 16:53:37 +01:00
mplewka
e738e6aa48 Hint for map/unmap when queue is blocked
Change-Id: I8b2c79fac77325e26e2ead663177cef09b17e00b
2018-02-16 15:57:44 +01:00
Artur Harasimiuk
c9180fec65 create infrastructure for gen specific performance counters
Change-Id: I6ef471ade14ce27b6e5949726b57453a6fe69abc
2018-02-16 12:13:30 +01:00