Commit graph

121 Commits

Autor SHA1 Nachricht Datum
Jay Cornwall 70e07dcdfd Enable VM fault message by default on Linux
This option was disabled by default to address issues writing to stderr
in Windows applications. The lack of an error message for memory access
faults is confusing to users, however.

Enable the error message by default on Linux only.

Change-Id: I1f44ba42362f8874abdc7c8e63ddd54a855b5394


[ROCm/ROCR-Runtime commit: acc5f15e4c]
2016-07-30 10:10:14 -04:00
Jay Cornwall 4723abd67d Separate blit compute interface from queue creation
The runtime needs a queue on which to submit cache management commands.
Device-to-device blit copy already creates a queue unconditionally.
We can share this queue for both purposes.

This change restructures the BlitKernel interface to accept, rather than
create, a queue. GpuAgent creates queues as needed for both cache
management and blit compute.

Fix queue full detection in AcquireWriteIndex (<= vs <).

Change-Id: I61d0c6b9d04f2dba74872f0676ad791435778ba4


[ROCm/ROCR-Runtime commit: f7ab361347]
2016-07-29 09:20:25 -04:00
Ramesh Errabolu b81d34bcdf Refactor Trap Handler Code
Change-Id: Iefdc2706bace3e7d907e8e59b9f554affdd0f613


[ROCm/ROCR-Runtime commit: 570301ffd0]
2016-07-27 16:11:53 -04:00
Ramesh Errabolu 4d4616c7dd Fix computation of max_wave_id property
Change-Id: I2ab145d301c92f39bbdb911e48aecccbd64ac82b


[ROCm/ROCR-Runtime commit: da52417c14]
2016-07-20 11:16:17 -04:00
Konstantin Zhuravlyov 83d9c273a5 Reorder loader extension functions to maintain backwards compatibility
Change-Id: I93f0899cdece4bab167290085da67d1a1770eb9b


[ROCm/ROCR-Runtime commit: 49a6a39724]
2016-07-20 08:58:11 -04:00
Jay Cornwall 8fe807f2a9 Replace SP3 dynamic assembly with pre-assembled binaries
This is the first part of transitioning to the LLVM-based assembler.
SP3 is deprecated and all references to the library are removed.
Pending LLVM support, relevant shaders have been precompiled.

Change-Id: I7d44cef5ded1836c4a74b77881af5bea8803d2c1


[ROCm/ROCR-Runtime commit: 712ea75377]
2016-07-16 16:38:32 -05:00
James Edwards da234099e1 Add the hsa_ven_amd_loader.h to the hsa-rocr-dev package and remove hsa_ven_amd_loaded_code_object.h
Change-Id: I6f55e7a98b1f49306d41f13e38190b20d326d5c2


[ROCm/ROCR-Runtime commit: aba3046bb6]
2016-07-15 15:20:24 -04:00
James Edwards a4ab641b90 Add libhsa-ext-image64 library to the rocr extensions packages
Change-Id: Ic3e4570918559f7bb413b8c2e37822b317d92f1f


[ROCm/ROCR-Runtime commit: 0543757148]
2016-07-15 12:55:31 -04:00
Jay Cornwall a1f109afe7 Recognize all CPU nodes in hsa_signal_create consumer list
On multi-node systems only the first CPU node was recognized in the
signal consumer list, causing fallback to non-interrupt signals.

Change-Id: I9bd0706bafbe046be9d7f210d05fa4cf1fcd16fa


[ROCm/ROCR-Runtime commit: b44417043b]
2016-07-09 18:40:39 -05:00
Konstantin Zhuravlyov a03e79c3c0 Remove loaded code object api
Change-Id: If20a6a3d15e25658b9e0aaf9ef8f3f33b2e0dd5c


[ROCm/ROCR-Runtime commit: 93ac77979c]
2016-07-07 13:09:30 -04:00
Ramesh Errabolu d260c22467 Export Amd Extension APIs including support for Version Control
Change-Id: I8c03cbd4049e8115ae00d51f193b9c31ac941f21


[ROCm/ROCR-Runtime commit: 95dc97da7b]
2016-07-06 13:50:18 -05:00
Fan Cao 0bbc303295 Query device name from KFD
Before this change, runtime hard code the device name, in this commit,
we will query the name from KFD. Will use codecvt to do UTF-16 to
UTF-8 transfer after GCC supports it.



Change-Id: I7c4dc32ef857296296c810d083888c5ba1c808b6


[ROCm/ROCR-Runtime commit: 88708b8e5a]
2016-07-06 09:49:17 -04:00
James Edwards 5faed35221 Updates to finalizer CMakeLists.txt file.
Change-Id: I30ab1969ce76a4c1060257e0ebe62763378dc65c


[ROCm/ROCR-Runtime commit: d0d13c34fc]
2016-07-05 16:23:09 -05:00
James Edwards 1cd10b316e Add the finalizer makefile to the open source directory.
Change-Id: I381f27e774573085c81d0dc4e1cbcb11768b3780


[ROCm/ROCR-Runtime commit: 029fe2403e]
2016-07-01 17:27:49 -04:00
Konstantin Zhuravlyov 068dfb7e2f Update p4 makefiles to build new load map api
Change-Id: Ic77560d050bed2a2a8e9b83feaa000da640e437a


[ROCm/ROCR-Runtime commit: 5129ae1d61]
2016-06-29 18:59:39 -04:00
Konstantin Zhuravlyov b43cdae36b Implement new load map API.
Change-Id: I5f148fe66f899b2fa6a2e75430afa988f38db58d

[ROCm/ROCR-Runtime commit: 0e4cab3001]
2016-06-28 11:32:19 -04:00
Christophe Paquot 25ff46fbb8 Handle alternate_va==0
Have amd::MemoryRegion::Lock not assert if the alternate_va
is null but use the host_ptr instead because in the case where
the src/dst memory pointer is allocated via KFD, the host_ptr
is a GPUVA already.

Change-Id: If44368cc2854d4c0c477ae56e4eeabc37e54c1a5


[ROCm/ROCR-Runtime commit: 4e93bdc99c]
2016-06-23 14:51:25 -07:00
Jay Cornwall 125816f08f Share blit queue for device-to-device and device-to-host copies
Reduces the number of blit queues from 3 to 2, when SDMA is unavailable,
improving the availability of queue slots for applications.

Change-Id: I8860d2b6c6d6527494b9fc35d164099e1313886a


[ROCm/ROCR-Runtime commit: 38fddca9fe]
2016-06-21 16:59:36 -05:00
Christophe Paquot e0df393c14 Updated blit kernel code to use device accessible memory
for the kernel args.
Most image-related HSA conformance tests pass now
Many more ocltst/oclperf image ones pass too.

Change-Id: I3f28d4ee7369f0ebc7af5128d3ffe1390957db98

[ROCm/ROCR-Runtime commit: c64f646711]
2016-06-14 17:03:49 -04:00
Besar Wicaksono 2e60df69e4 Add interrupt signal support to SDMA
Change-Id: Ie2b192f3351a0c3bf1eb36ba9704825b18e6059b


[ROCm/ROCR-Runtime commit: aee8ab6ef0]
2016-06-14 14:26:25 -04:00
Besar Wicaksono 84c47979ab Fix close source build for tools library,
Change-Id: Id0265b186ac2fbc5385ff70e3d34947055788c21


[ROCm/ROCR-Runtime commit: a2ebd9a825]
2016-06-06 21:08:21 -04:00
Besar Wicaksono 7b50eacba5 Blit SDMA support for gfx70x
Change-Id: Ie6f215890553ef41c3f36b349fc9cc39c2d38747


[ROCm/ROCR-Runtime commit: 103cd04236]
2016-06-02 06:18:36 -04:00
James Edwards f937d533f6 Modify runtime cmake files to use HSA_CLOSED_SOURCE_ROOT.
Change-Id: I416f8608cfb793eac9065c1f63a85da2d3c3a816


[ROCm/ROCR-Runtime commit: f49ddad0a1]
2016-05-31 14:08:10 -05:00
Konstantin Zhuravlyov bf46c9e840 Add support for dynamic relocations (code object v2.1)
Change-Id: Ic19be97d3ea78b53f5aa814787515b587d0be21b


[ROCm/ROCR-Runtime commit: 5a14d496ab]
2016-05-26 14:09:07 -04:00
Besar Wicaksono 76dea4613a Add profiling support to DMA copy function
Change-Id: Iadeefa2692f35d9305ac1b242284a6220d5830a7


[ROCm/ROCR-Runtime commit: a8b00680b6]
2016-05-26 11:29:29 -04:00
James Edwards 0a5966812c Correct minor issues in License text and sample code for hsa-rocr-dev package.
Change-Id: If1c4387794de3cb707a8ba8281a40a1123130c95


[ROCm/ROCR-Runtime commit: 50339c12f1]
2016-05-26 09:42:24 -04:00
Ramesh Errabolu a09c9bfb04 Refactor Scratch Memory Descriptor Initialization
Change-Id: Ib4a136c266646cc5d5f5afb98f4aaf9266d02072


[ROCm/ROCR-Runtime commit: 383ed6983f]
2016-05-25 22:17:43 -04:00
James Edwards 1c58bfd7fd Add hsa-rocr-dev packaging CMakeList.txt file.
Change-Id: I1f6a0d4ad44aa7f20f43d43942719f668b620c36


[ROCm/ROCR-Runtime commit: ec6478e693]
2016-05-25 17:04:27 -04:00
James Edwards 3d304b4f99 Add hsa-ext-rocr-dev automatic packaging.
Change-Id: Ieb0d179b4e1a398a9400bd80037a46d0513582bc


[ROCm/ROCR-Runtime commit: 72cb6dd33f]
2016-05-23 10:10:44 -04:00
Besar Wicaksono 520d33a875 Use lazy initialization to create Blit objects
Change-Id: I388865030dc2538c5c881c055e38af52a57f6d87


[ROCm/ROCR-Runtime commit: bc589048a9]
2016-05-20 14:26:06 -04:00
James Edwards e69fdb12c2 Update hsa-ext-image CMakeList.txt file to include static lib compiler options
Change-Id: I06cff984d3dc169cdb30832bf0115bc7d821eadf


[ROCm/ROCR-Runtime commit: ceab9a3eb0]
2016-05-19 15:48:42 -05:00
Jay Cornwall 02a67f61c4 Implement optimized blit/fill kernels
Replace HSAIL kernels with SP3 shaders.
Support all alignment variations efficiently.

Change-Id: Icf7f5471f3ba68389f55484d82f2805dd9bc3827


[ROCm/ROCR-Runtime commit: 90ab72cd66]
2016-05-10 21:51:57 -05:00
James Edwards 127d8c357f Add image and tools cmake files to the opensrc directory.
Change-Id: I9e95d391992fa6ad7d13b500cd28eb0fb93dda1d


[ROCm/ROCR-Runtime commit: 023b302fae]
2016-05-03 17:01:14 -05:00
bwicakso 293a073c40 hsa_amd_agent_memory_pool_get_info gives wrong results for gfx803. Root cause: missing break point when querying the num hop attribute. Other change: max the reported num hop to 1 since the runtime does not have enough information about each hop, also clarified the comment about HSA_AMD_AGENT_MEMORY_POOL_INFO_NUM_LINK_HOPS attribute in the header file
Change-Id: I5d868eb457666e1377d5308f6145e76176bbfaf7


[ROCm/ROCR-Runtime commit: 6ea42ae333]
2016-05-03 12:52:38 -04:00
James Edwards 555e9169d8 Remove whitespace from comments in CMakeLists.txt
Change-Id: I9a94a6f224a5cbd5fb1f8b57ed0c369339e23228


[ROCm/ROCR-Runtime commit: 24714cb769]
2016-04-28 11:24:02 -05:00
Shi, Aaron (en ye) (xN/A) TO 93ce815152 HSA Finalizer: Promote SC PRM -> Finalizer (HSA tree) up to CL 1258514
[git-p4: depot-paths = "//depot/stg/hsa/drivers/hsa/runtime/": change = 1259784]


[ROCm/ROCR-Runtime commit: ad21f0606e]
2016-04-19 15:31:52 -05:00
Jay Cornwall (xN/A) UK def38e14f3 Fix SDMA fill for >=4MB regions
max_single_fill_size_ overflowed the packet field size. Reduce by one dword.

[git-p4: depot-paths = "//depot/stg/hsa/drivers/hsa/runtime/": change = 1259263]


[ROCm/ROCR-Runtime commit: 1d4a257225]
2016-04-18 16:05:13 -05:00
Besar Wicaksono (xN/A) TX [TEXT] 4b44183941 Fix query HSA_AMD_AGENT_MEMORY_POOL_INFO_LINK_INFO
Querying HSA_AMD_AGENT_MEMORY_POOL_INFO_LINK_INFO between a gpu agent
and its own local memory pool returns a wrong information.
Fix: return link with 0 hop count.

[git-p4: depot-paths = "//depot/stg/hsa/drivers/hsa/runtime/": change = 1257544]


[ROCm/ROCR-Runtime commit: 5a584fa1ab]
2016-04-13 12:39:25 -05:00
Hari Thangirala 56f5e65938 ROCR Build ID support
Fix dirty-tree status. Thanks to Fan for fixing the issue.

[git-p4: depot-paths = "//depot/stg/hsa/drivers/hsa/runtime/": change = 1256716]


[ROCm/ROCR-Runtime commit: 0545761aa9]
2016-04-11 18:48:29 -05:00
Besar Wicaksono (xN/A) TX [TEXT] 02b6c65740 Sdma wraparound optimization.
Remove mutex and just make the thread spin again if the queue is wrapping.
Remove the wait for the queue to finish wrapping, and just check if there is enough space to recycle when reserving queue space.

[git-p4: depot-paths = "//depot/stg/hsa/drivers/hsa/runtime/": change = 1256713]


[ROCm/ROCR-Runtime commit: ea67bb8374]
2016-04-11 18:31:45 -05:00
James Edwards (xN/A) TX f716a9ae63 Remove ENV variables from CMakeLists.txt files.
[git-p4: depot-paths = "//depot/stg/hsa/drivers/hsa/runtime/": change = 1256687]


[ROCm/ROCR-Runtime commit: 871412adff]
2016-04-11 17:18:01 -05:00
Hari Thangirala 6a4a5f7c71 ROCR Build ID support
Build system/Package maintainer:
-    BUILDID is specified at cmake.
-    USAGE: cmake -DBUILDID=<ID> ../src

For developer builds the who typically don�t provide BUILDID, cmake will:
-    Determine the last git commit when this tree was syncd 
-    Deteremine the build date 
-    Check if tree is clean when built 

The idea of this embedded string is that later when you get a ROCR build, you can get some idea on the build origination by using: strings libhsa-runtime.so.1 | grep �ROCR BUILD ID�

For eg:
-    If it�s a Jenkins build 25, it returns: �ROCR  BUILD ID: 25�
-    If it�s a developer build sync'd @ 06f5f2a with modifications, it returns: �ROCR BUILD ID: 06f5f2a-2016-04-11-0"

[git-p4: depot-paths = "//depot/stg/hsa/drivers/hsa/runtime/": change = 1256588]


[ROCm/ROCR-Runtime commit: a148fd0b68]
2016-04-11 15:03:06 -05:00
Zhuravlyov, Konstantin (x21446) MA de9132a710 Fail gracefully if memory allocation did not succeed
Testing: precheckin (http://ocltc.amd.com:8111/viewModification.html?modId=69427&personal=true&tab=vcsModificationBuilds)

[git-p4: depot-paths = "//depot/stg/hsa/drivers/hsa/runtime/": change = 1256179]


[ROCm/ROCR-Runtime commit: 503fd728dd]
2016-04-09 16:40:24 -05:00
Besar Wicaksono (xN/A) TX [TEXT] 1063b89f2d Fix unit test build error due to CL#1256098
[git-p4: depot-paths = "//depot/stg/hsa/drivers/hsa/runtime/": change = 1256119]


[ROCm/ROCR-Runtime commit: 2ebde5d2a7]
2016-04-08 16:51:45 -05:00
Besar Wicaksono (xN/A) TX [TEXT] be9b46fdfd Fix build error from CL#1256102 due to whitespace issue.
[git-p4: depot-paths = "//depot/stg/hsa/drivers/hsa/runtime/": change = 1256108]


[ROCm/ROCR-Runtime commit: 7760839934]
2016-04-08 16:40:05 -05:00
Besar Wicaksono (xN/A) TX [TEXT] 869f361a0b Add AMD extension version
[git-p4: depot-paths = "//depot/stg/hsa/drivers/hsa/runtime/": change = 1256102]


[ROCm/ROCR-Runtime commit: a03c5148a7]
2016-04-08 16:31:00 -05:00
Besar Wicaksono (xN/A) TX [TEXT] c8f0efbee1 Add global memory clock and width info on the agent attribute list and deprecate the ones in the memory region attribute list.
[git-p4: depot-paths = "//depot/stg/hsa/drivers/hsa/runtime/": change = 1256098]


[ROCm/ROCR-Runtime commit: 4ccc695b95]
2016-04-08 16:29:10 -05:00
Nikolay Haustov [TEXT] 6b9e626507 Cherry-pick CL 1250286 from SC stg.
HSA Finalizer: Add dumping of code object, ISA and executable to loader.

This is controlled by loader options -dump-all, -dump-isa, -dump-code, -dump-exec

The options can now also be set with env variable LOADER_OPTIONS_APPEND.

Added tests to finalizer_offline

Testing: smoke, dumping on hardware

Reviewed by: Konstantin Zhuravlyov

[git-p4: depot-paths = "//depot/stg/hsa/drivers/hsa/runtime/": change = 1255351]


[ROCm/ROCR-Runtime commit: a795909bca]
2016-04-07 06:01:20 -05:00
Besar Wicaksono (xN/A) TX [TEXT] b156bd28b9 Cleanup TODO format
[git-p4: depot-paths = "//depot/stg/hsa/drivers/hsa/runtime/": change = 1255182]


[ROCm/ROCR-Runtime commit: 823c254d61]
2016-04-06 16:50:50 -05:00
Ramesh Errabolu (xN/A) TX cae56040bb Update Private Segment Size parameter of the dispatch packet
[git-p4: depot-paths = "//depot/stg/hsa/drivers/hsa/runtime/": change = 1254638]


[ROCm/ROCR-Runtime commit: b93946790d]
2016-04-05 14:03:33 -05:00