Commit Graph

268 Commits

Author SHA1 Message Date
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
Artur Harasimiuk 3706e6285d detect WDK prior to subcomponent inclusion
some of our dependencies require WDK to work. by setting WDK_DIR and
WDK_VERSION variables we advertise this to them

Change-Id: I2a46d9e30ca3ca60acd2bc76f75c4dac34a143f8
2018-02-28 22:41:37 +01:00
Artur Harasimiuk ccb1c1f5ba dependencies update
Change-Id: I04512b21d5d5a148c5c12eb9640fe5cb7dab41df
2018-02-28 18:38:35 +01:00
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
Mrozek, Michal 52cdb7e57d [2/n] Internal 4GB allocator
- Add test for new parameter to mapGpuVirtualAddress

Change-Id: Ie374981fb58892e974efb80ba944419564422d98
2018-02-28 10:04:53 +01:00
Artur Harasimiuk cc7a42a421 remove obsolete header
Change-Id: Ie5ff69ff6b8a5e3c4a47ffb45f49e05bdc8b0544
2018-02-28 09:44:44 +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
Dunajski, Bartosz ace8fb78d7 Improve CFL device ID ULTs
Change-Id: Iae13c3e7e9b3bd106cda1b22508acb8871468ec6
2018-02-27 17:57:18 +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
Artur Harasimiuk 8744ddcfd3 use shlibdeps to generate dependecy list for DEB package
CPackDeb has support for CPACK_DEBIAN_PACKAGE_SHLIBDEPS options. it
allows to improve dependency generation.

Change-Id: I4b87611409476e98ffb5fc66ab7083c63e2739ea
2018-02-27 11:34:47 +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
Artur Harasimiuk 0c92f8fdfa update LIMITATIONS.md
We no longer hard-require to have Khronos ICD. Neo can work with ocl-icd.
Removing warning about above reported by cmake.

Change-Id: Icf24a04b531092751de10229d0e452eebe729c98
2018-02-26 15:50:03 +01:00
Artur Harasimiuk 4636367d55 update method to find Intel Graphics Compiler
search order is:
1. check variable IGC__IGC_TARGETS. if set it provides a list of targets
required to get compiler stack
2. check for variable IGC_DIR. if set include such folder
3. check if gmmlib folder exists in workspace. if yes, then include this
folder

When including folder (2 & 3), it is expected that IGC__IGC_TARGETS
variable will be exposed

Change-Id: I853606971a6b8d094ae13f7681857fe7717b9cd3
2018-02-26 13:59:19 +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
Mrozek, Michal 2dedaf1521 ULT execution time improvements.
- Do not open file twice, loadDataFromFile checks if file is successfully
opened and returns 0 if not.

Change-Id: I8ca73b281ea13033746f8203f482d9af7a2739b7
2018-02-26 08:32:48 +01:00
Mrozek, Michal 52044281d1 Optimize binary caching ULT.
- after the change test if faster 5 times

Change-Id: Ib6fdc6853e8b431d152ab943052112c3425031d4
2018-02-26 07:02:44 +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
Kowalczuk, Jakub df1d4a76f1 Infrastructure update
Change-Id: I56c0b9b31a6dcc9c72d31c0d0537245735593ef6
2018-02-22 19:49:57 +01:00
Artur Harasimiuk e7a43c55f2 ult: don't use mocks sources in projects
we should use library igdrcl_mocks to obtain any required mock

Change-Id: I2f813f0dc6a2a79e4cdd4eee0e24e1fef83610da
2018-02-22 18:08: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 feb7d00e22 use mocks from igdrcl_mocks only
igdrcl_mocks should be single source for any Neo mock. Because this is
static library, only required compilation uint will be included in
resulting binary

Change-Id: I53019bf8cd86072ccb2be40e82c5136bd50ee15f
2018-02-22 14:32:59 +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
Artur Harasimiuk 006e86d7a6 move mocks to igdrcl_mocks target
Change-Id: I6d9f87fc415ff70261344105e8808c6e91a960bd
2018-02-21 23:36:31 +01:00
Chodor, Jaroslaw bad0ba8ac8 Fixing backup/restore of asynch handler in ULTS
Change-Id: If2cbbaa30968ecec3c1bc0361ff86aa523122f21
2018-02-21 20:35:08 +01:00
Zdunowski, Piotr 46f3efd79c Allow cloc tests to be run from default location.
Change-Id: Ic5f8e34ff261b45100c98a6065b1aeaab3c4d665
2018-02-21 20:13:52 +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
Zdanowicz, Zbigniew ed5e2c2da8 Use new version of generator for MSVS solution
Change-Id: Ifbb4c5823d7eae9c9c99ea962166abc2eaaf4ac7
2018-02-21 16:00:31 +01:00
Artur Harasimiuk c457088faf small cleanup in performance counters
- don't cast when not needed
- make sure initial state is always the same

Change-Id: Ib5b9a37884a928248a5400aff547615fd2fc819b
2018-02-21 15:59:31 +01:00