Commit Graph

95 Commits

Author SHA1 Message Date
Mateusz Jablonski
815ae851b7 Graphics Allocation: store task count per context id
Move definition of allocations list method to internal_allocation_storage.cpp

Change-Id: I4c6038df8fd1b9335e8a74edbab33b78f9293d8f
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-11-06 12:43:47 +01:00
Zdanowicz, Zbigniew
8504b37a08 Add branch prefix to unit_tests/gen_common subdirectory
Change-Id: I7661dbd8a65aaa50c21afb982b23edb9080d6f84
2018-11-01 00:15:04 +01:00
Mrozek, Michal
7ece16ee7a Graphics Allocation cleanup.
- remove one constructor
- start using mock graphics allocation in tests

Change-Id: Idb8f4a35dbc2cae8d6bf667bab5542d8e91d6e0d
2018-10-31 11:54:24 +01:00
Mateusz Jablonski
d3f71cfb04 Move allocation lists to internal allocation storage
Change-Id: I543f1551c8fb161cf99c5870de44afec390415b2
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-10-30 13:49:31 +01:00
Mateusz Jablonski
8a9d0a81df Move temporary and reusable allocation lists to command stream receiver
Change-Id: I40df6fe39b367e243e3710c5fdeaab3c85198d9d
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-10-11 15:32:12 +02:00
Pawel Wilma
5cd7ca460c Refactoring of internal options extraction
Change-Id: Ice53746e696ba6de5bb2c901e713594ee90bf99c
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2018-10-05 15:28:31 +02:00
Wilma, Pawel
7d93fedbab Fix for problems with uninitialized SPatchExecutionEnvironment
Change-Id: I46b1c5badc6505b8443e7c1eaca1fc56a03f0768
2018-10-05 14:58:36 +02:00
Zdanowicz, Zbigniew
bb62343aba Add new parameter to thread data dispatching
Change-Id: I86710b0cc764156f4c2db9d24ccd1c96b32d7660
2018-10-05 12:06:25 +02:00
Maciej Dziuban
bc4700a193 Add OsContext argument to MemoryManager::makeNonResidentEvictionAllocations
OsContext has to propagate through following calls first:
- WddmCommandStreamReceiver<GfxFamily>::processEviction
- CommandStreamReceiver::makeSurfacePackNonResident

Change-Id: I7559c7406b2860c51905c9961cec251fac231b08
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-10-05 01:28:31 +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
Maciej Dziuban
41e8d70363 Change makeSurfacePackNonResident argument to a reference
Change-Id: Ic95ad2406184e91a78c152fad3fe6f0f4ebb24ae
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-09-28 18:08:18 +02:00
Zdanowicz, Zbigniew
1346148d69 Add new field to PATCH_TOKEN_THREAD_PAYLOAD struct
Change-Id: If458d5a118113daf222975670244cb2b9e63ec27
2018-09-26 03:12:50 +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
Maciej Dziuban
fafde2ec15 Delegate all MemoryManager::getResidencyAllocations() calls through CSR
Change-Id: I9cfbfd86d39b5341598ff2bd8883e13605c58b72
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-09-13 14:56:06 +02:00
Hoppe, Mateusz
83537d55bf Add HardwareInfo argument to setupHardwareCapabilities method
Change-Id: Iaf75459402d4f1ec3048646d646b130dcc710b2f
2018-08-24 08:30:52 +02:00
Cetnerowski
8647e0c349 Improve KernelInfo handling:
Remove wrapper for KernelInfo constructor
Switch to unique pointer where possible

Change-Id: Ib3f323e34836e1d189d836fd539ab45518609610
2018-08-23 13:55:28 +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
Kamil Diedrich
459a157e17 Fix for setting correct program compiler version
Change-Id: I41db8c1640d51fabedbc2d39ff76be04c124c332
2018-08-21 18:39:11 +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
Dunajski, Bartosz
56562963ef Pick main Kernel for PrintfHandler and AubSubCapture
Change-Id: I9ff3bdaa5da82e162642deeaf4a8e0821ff00da2
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-08-20 10:06:00 +02:00
Kamil Diedrich
17de60254a ELF reader refactor
Change-Id: I326747237ba605f338d3f2c91a6b682db8b75af5
2018-08-17 13:57:41 +02:00
Maciej Dziuban
524737af39 Add executionEnvironment field to Program
Change-Id: Id624177aa3f0b5525bac86e2e0a935ebaf53480e
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-08-16 16:52:41 +02:00
Maciej Dziuban
5b37dc1c91 Add ExecutionEnvironment parameter to Program::createFromGenBinary
Change-Id: I825c29d8c885d986d54d716ea72f19e70b3b11c6
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-08-16 13:56:36 +02:00
Stefanowski, Adam
8598168355 Remove programCount from device
Change-Id: I4edfabadd73166a27db73a120fc1380de52a33a5
2018-08-13 13:45:55 +02:00
Woloszyn, Wojciech
53d99ead24 Fix sampler lifecycle
- Add refcount to sampler to avoid use after free

Change-Id: I0f03d8ed29b5b9dc5bee355ed266ac7437e92509
2018-08-13 10:13:08 +02:00
Maciej Dziuban
b7bcd2dbac Move createFromGenBinary out from header
Change-Id: I444c057d76308fcaf08c8f2e6af1590f4cced0b3
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-08-10 15:59:26 +02:00
Maciej Dziuban
6f26ced3b5 Don't store MockProgram as member of fixture
This is to prepare for adding argument to MockProgram constructor. It'll have
to be constructed after ExecutionEnvironment creation, for example after
DeviceFixture::SetUp.

Change-Id: I37b08f814679271820a07fb29cf1fb6b517c8376
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-08-10 10:13:33 +02:00
Maciej Dziuban
b9310afe76 Decrease number of classes deriving from Program 4/n
Change-Id: I73a8616162b72e2dd29e4fa7facbd9bbe1932303
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-08-09 12:19:46 +02:00
Mrozek, Michal
1599ea800e Pass execution environment to command stream receiver.
Change-Id: I598f67f8b005b5ce8249b638e080657eb6dc3547
2018-08-08 17:10:39 +02:00
Maciej Dziuban
acc0ec539f Decrease number of classes deriving from Program 3/n
Change-Id: Id5211d4acb46d770dd57b91896af81427d370e0c
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-08-08 16:20:35 +02:00
Maciej Dziuban
3edb738051 Decrease number of classes deriving from Program 2/n
Change-Id: I67a6e26f62c4bfdcdcea591ca4af3d4ce4f9980e
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-08-08 13:01:45 +02:00
Kamil Diedrich
8226269bbe Reimplementation of Elf Writer
- remove is_initialize pattern
- add RAII
- replace dynamic arrays with std::vector<char>
- use fixed width integer types
- remove c-style casting
- reducing the number of code checks
- add camelCase style

Change-Id: If24a595f03865c59c86fed29db280de0084b5663
2018-08-07 17:35:39 +02:00
Chodor, Jaroslaw
c10d0d79f5 Workgroup walk order
Change-Id: Id02db6a383e21dc17be64655e7f51a84103b2e0b
2018-08-07 13:54:10 +02:00
Maciej Dziuban
72740fc048 Cleanup program_tests.cpp
Reduce number of local classes deriving from Program

Change-Id: I713790c6ea0e034971fa90c6cb8f9c0a6bd6b6cd
2018-08-06 16:05:25 +02:00
Mrozek, Michal
6f251f5ea1 Fix TBX completion loop.
- resources are dumped in make non resident call
- in order to dump correct data we need to be sure that GPU is done processing
- waiting needs to be unconditional to handle all cases
- remove not needed parameter to makeSurfacePackNonResident

Change-Id: Ib2b065d486cd3a5d86e599c51b24f3c958c3a10b
2018-08-03 09:32:24 +02:00
Mateusz Jablonski
9ae4f390d1 Remove command queue, completion stamp and device from mem obj
Remove setCompletionStamp function from Surface

Change-Id: I25f3040a91892495e55cb4924f1538276de6264e
2018-08-01 16:17:13 +02:00
Chodor, Jaroslaw
fcfef318c1 Fixing hash calculation in MockProgram
Change-Id: I869bca0cc8c0d2c87901cde65e7cf62d81a10285
2018-07-31 13:32:11 +02:00
Maciej Dziuban
b83b9ac120 Stop creating MockContext in MockParentKernel
Change-Id: I398d7e6f159e246e4f66cd73ac1f04eb09ea04ca
2018-07-31 12:20:52 +02:00
Mateusz Jablonski
a906ddaa66 Make gmm client context non-static member
Construct platform and initialize gmm in each test

Change-Id: I4f209369e77213420308f31f911b7a569ea93283
2018-07-27 00:16:30 +02:00
Mateusz Jablonski
98061903aa Remove device helper
Change-Id: Ie66c029359a62b81c8658d804dcf8565647100f1
2018-07-26 14:10:05 +02:00
Kamil Diedrich
282f335269 elflib reimplementation - initial commit
Includes:
-add explicit definition of enum types
-replace NULL for nullptr
-add namespace for constants
-replace c-style casting
-add SH_FLAG_NONE for consistency

Change-Id: I3eb8d26cc6b549e91a940ae0d3c095a9f96785f2
2018-07-26 14:03:35 +02:00
Jobczyk, Lukasz
eebb919c18 Move SourceLevelDebugger ownership to execution environment
Change-Id: I7fc6fd1cde2e450dbd41a164f915373e80a4aaf8
2018-07-25 10:32:29 +02:00
Chodor, Jaroslaw
b490a1331b Refactoring/preparation for preferred IR from FCL
NEO will be querying FCL for preferrerd IR
(intermediate representation) instead of
using llvm bc.

Change-Id: I98316b5623557a9651da2a4c5e610ab26421c491
2018-07-18 16:49:29 +02:00
Dunajski, Bartosz
4a6be207cd New patch token for pure stateful buffer access
Change-Id: I90589a1cc3c3fa3608e7a5da438660ed85efcffa
2018-07-17 19:55:16 +02:00
Hoppe, Mateusz
55a045ebe1 Refactor graphics memory allocation scheme
- replace createGraphicsAllocationWithRequiredBitness with more general
methodallocateGraphicsMemoryInPreferredPool based on passed
 AllocationData
- proper flags for allocation selected based on AllocationType

- remove allocateGraphicsMemory(size_t size, size_t alignment)
and use allocateGraphicsMemory(size_t size) instead where default
alignment is sufficient, otherwise use full options version:
allocateGraphicsMemory(size_t size, size_t alignment,
 bool forcePin, bool uncacheable)

Change-Id: I2da891f372ee181253cb840568a61b33c0d71fc9
2018-07-11 15:48:05 +02:00
Mrozek, Michal
92266e4ad1 Disable stateless to statefull with offset optimization on BDW.
- BDW doesn't support this optimization

Change-Id: Ic88556214c8d9a14ddb093b7c25587575e616f83
2018-07-10 17:49:55 +02:00
Mateusz Jablonski
94dbdb602d Add instance of gmm helper to execution environment
Change-Id: I1b044611fbad91fbb681ba233938f41502f29056
2018-07-06 08:48:19 +02:00
Hoppe, Mateusz
64277ee849 TBX CommandStreamReceiver fix for makeCoherent
- makeCoherent should be called after TBX finished processing
 - this is when tagAddress is updated with taskCount
makeCoherent is called from makeNonResident which is invoked just
after flush and may happen before TBX server finished processing
leading to invalid data to be read back to CPU accessible memory

- this fix adds waiting for taskCount to blocking calls for TBX CSR
before calling makeNonResident on surfaces to guarantee correct data
from TBX server is ready.

Change-Id: I498a5454e0826eec2a5413a08880af40268550e1
2018-07-04 12:04:32 +02:00
Artur Harasimiuk
5897d98c61 fix invalid dereference in DataParameterTest
Some tokens may not be processed by Neo. We should check whether
token was stored in dataParameterBuffers array instead of blindly
dereference element zero.

Change-Id: Ibb3e80c3b3fc031c6b5e9c8bea404429d8a48c34
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2018-07-03 09:51:04 +02:00
Artur Harasimiuk
ef52a37edf remove redundant expect
Neo can work with more recent version of IGC. In such case some of
patch tokens my not be supported yet. Thus, expecting vector size to be
1 for every valid token is invalid assumption.

Change-Id: I987c29912590bcf15c13073fdbb463e7f9db3d1d
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2018-07-02 09:38:27 +02:00