Commit Graph

292 Commits

Author SHA1 Message Date
Mrozek, Michal cfe1f72dcb Remove unnecessary code.
- There is not need to capture stream anymore.
- This may hide potential problems.

Change-Id: I0fdb3752ef7684a95aaf8e29b2c4394722ff0aa3
2018-03-05 21:52:16 +01:00
Artur Harasimiuk a93154db1b remove ARTIFACTS_DIR support
not used anymore

Change-Id: I05adf3d0ac60ac425758df1480709d2e85076669
2018-03-05 21:49:00 +01:00
Mrozek, Michal 8f96c54945 [8/n] Internal 4GB allocator
- Add getGpuBase function to linear stream

Change-Id: I566ba929927a95399002e0f234e6e1919775ffba
2018-03-05 14:58:32 +01:00
Dunajski, Bartosz f6a8cb3279 Improve GraphicsAllocation reuse management
Change-Id: Iee14b4641712231c801676b758546be76deef636
2018-03-05 10:56:34 +01:00
Dunajski, Bartosz 1fce275542 Remove forced DC flush and disabled out of order execution for shared objects
Change-Id: I0de86c3d5af488a347e83858f5dddbac2ef53c17
2018-03-05 09:45:18 +01:00
Zdanowicz, Zbigniew 533afe472a Program preemption mode in Interface Descriptor Data
Change-Id: I7fce731d71dd0b6dc8505ebfe45d24c65898a08b
2018-03-05 09:36:53 +01:00
Mrozek, Michal bee295415f Add debug flag to print driver diagnostics to cout.
- New registry flags can be used for applications that wants to dump driver
diagnostics without using any additional tools
- When flag is on , context is being created with driver diagnostics and
hint level is being set to debug variable
- If application is already using driver diagnostics the hint level is
overwritten

Change-Id: I9912c0a7e8f23adb8372997144e5b75f9cc05b1d
2018-03-05 09:18:10 +01:00
Dunajski, Bartosz e579578bc8 Reuse GraphicsAllocation mechanism for shared resources
Change-Id: I4bfd2d3387ae0fc10d461ebc1ada94614ab7f6b5
2018-03-02 16:51:28 +01:00
Rozenfeld, Piotr 7b30a7c2b8 Additional documentation
Change-Id: I14edea5e1fc745344151bcc63a95279286bce886
2018-03-02 14:19:30 +01:00
Artur Harasimiuk d510f8c865 Khronos headers have absolute priority over other
In some cases we may hit issue because of different version of Khronos
headers available to include. The version from Khronos public github
repository has absolute priority.

Change-Id: I3d336943a3779d75d1a0f4bf4990a61ae6c0e2f2
2018-03-02 09:49:46 +01:00
Artur Harasimiuk f1f9fba509 use ADAPTER_INFO in Wddm only
do all transform and conversion in enumAdapters and return HardwareInfo.
the ADAPTER_INFO structure may vary and SkuInfoTransfer is responsible
to copy/deduce required flags, it can be done as a part of enumAdapter.

Change-Id: Iad6fd5f7094f591a0175025c9ec33a96e55ebdc9
2018-03-02 09:45:03 +01:00
Artur Harasimiuk e6a956d7c9 update method to find Instrumentation library
search order is:
1. check if variable INSTRUMENTATION_LIB_NAME is set. if yes it will
provide lib name and target have to be present
2. check if source location was given. use it if yes
3. check if folder in workspace exists

When library is found then dependency is added to ensure build order
When none of above found support in Neo will be disabled (stub is used)

Change-Id: I9151f4002997ab5cfd1a397794f11cc18dfe44fa
2018-03-02 08:12:02 +01:00
ocldev 64e37fdf72 dependencies update
Change-Id: I7b649b963ba3107cbe45db9a3bacbb2bf60cbdbd
2018-03-02 00:40:39 +01:00
Mateusz Jablonski d1aa5f978d Cmake refactor part 6
Add macro to add all subdirectories
Add macro to create project source tree based on target sources
Small cleanup runtime/CMakeLists.txt

Change-Id: I9b99145c544f648c4c3fe7421752d0c5d9504edf
2018-03-02 00:39:41 +01:00
Milczarek, Slawomir bb58c9fc2f AUB CSR flush to process residency in standalone mode only
This commit eliminates redundancy in calling processResidency() for AUB CSR
twice in the HW CSR with AUB dump configuration.

Change-Id: Ib49c80fa9d81a495dfb7261ff76e0b9b1422e42d
2018-03-01 21:51:18 +01:00
Mrozek, Michal b2f964dcf2 [6/n] Internal 4GB allocator
-Use GPU address to program command buffer in WDMM.

Change-Id: Iea6e423ccb18a09b4969a10cf2bd44d7a6af6629
2018-03-01 21:50:14 +01:00
Woloszyn, Wojciech 5c8cd51fc8 Use allocateGraphicsMemoryForImage for mipmaps
Change-Id: I0cd740ca4c8286fb73f766b74abc50ed53cfc9d0
2018-03-01 20:39:15 +01:00
Mrozek, Michal 3e3c6c28c7 Change default value of UseNoRingFlushesKmdMode to true.
Change-Id: I7c7246aeebb2815262cb2cd4731aabb2d74a3002
2018-03-01 17:25:38 +01:00
Stefanowski, Adam 95bd4a3d3a fix parsing in debug file reader
Change-Id: I6812a2ea0336152a9f5d1bc9d95f30a91392cf79
2018-03-01 17:24:32 +01:00
Slawomir Milczarek f217c9198c Add support for resource lock / unlock on Linux OS
This commit fixes the issue with image contents writes
in the configuration of CSR HW with AUB dump.

Change-Id: Id0c4f36d4f9eee5175267384d42cb75bf41062f3
2018-03-01 15:01:49 +01:00
Mateusz Jablonski bf5170dbeb Rename TestDebugVariables.def to TestDebugVariables.inl
Change-Id: I0997b99955e360d7ed54ecfaa91fc11e4a48bf77
2018-03-01 14:28:04 +01:00
Dunajski, Bartosz d9dd68a8ef Remove copy constructor for GraphicsAllocation
Change-Id: If547a004b6f9e5cadb1f6ba0a0f44c3ac0d1ff0d
2018-03-01 14:00:24 +01:00
Mrozek, Michal eea76094a1 [5/n] Internal 4GB allocator.
- Refactor drm memory manager tests.
- use dbg state restore
- use unique_ptr

Change-Id: Idaf831334f01ce2a20f2fec23ef146b6070c2172
2018-03-01 13:56:22 +01:00
Mateusz Jablonski f407cdeada Add cmake flag to force using response file in ninja
Change-Id: I13179ba6df2f5d8351e878c7a6ef59100deafffe
2018-03-01 11:53:22 +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
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