Граф коммитов

63 Коммитов

Автор SHA1 Сообщение Дата
Alex Voicu e35ce82eff This introduces correct support for agent global variables, and implements hipModuleGetGlobal as an actual equivalent for cuModuleGetGlobal.
[ROCm/clr commit: d12cf0da7d]
2017-11-03 01:44:48 +00:00
Ben Sander 19935275ea Merge pull request #245 from scchan/centos_fixes
various fixes for centos/rhel

[ROCm/clr commit: 5a80c4108e]
2017-11-01 18:10:29 +01:00
Siu Chi Chan 2094b92a3e Centos/RHEL - remove usage of constexpr since libc++ doesn't enable ctor for constexpr pair in C++11
[ROCm/clr commit: c1a4ff7b20]
2017-10-31 18:16:12 +00:00
Ben Sander 4df6b371ab Add ns-level timer for HIP API routines
Refactor some miuses of ihipLogStatus, these should only be in top-level
HIP APIs and should be paired with HIP_API_INIT calls.


[ROCm/clr commit: dc7d993a02]
2017-10-30 20:20:51 +00:00
Maneesh Gupta 941682c701 Make elfio headers private
Change-Id: I3ba174bb46e84a75380207d93a0da6fe3703689e


[ROCm/clr commit: 281c543bc3]
2017-10-23 10:24:36 +05:30
Alex Voicu 1c8db33de9 This fixes incorrect usage of the reader object, which created arcane
mismatches when one reader accessed another's section.


[ROCm/clr commit: b222448efd]
2017-10-09 15:46:38 +01:00
Alex Voicu d9075301c3 This adds cursory support for globals to the HIP module loading API. The
style is purposefully alien so as to signal that HIP experts should turn
it into HIP worthy code as soon as possible.


[ROCm/clr commit: 582779c6c6]
2017-10-09 13:27:11 +01:00
Maneesh Gupta 51c48e4cef Bump min hcc_workweek required for named kernel dispatch to 17312
Change-Id: I8c7b58306b279ed113d03260e4bc6086bb8b4e68


[ROCm/clr commit: dabd6d2bc6]
2017-08-08 11:08:55 +05:30
Ben Sander 004080bff8 Add workweek check to make sure we have a new enough compiler
[ROCm/clr commit: 2781293e89]
2017-07-27 23:00:58 -05:00
Ben Sander c8b72cb926 Pass kernel name to HCC dispatch_hsa_kernel, for debug/profile
[ROCm/clr commit: a282351763]
2017-07-27 22:00:15 -05:00
Ben Sander ccc085e4db Add option to pass names to HCC dispatch API (for debug)
[ROCm/clr commit: c7382f7da6]
2017-06-23 18:05:30 -05:00
Ben Sander 81354999e8 Set event->_stream on hipHccModuleLaunchKernel path if start/stop used
Ensure _stream is always non-null in recorded events.
Fixes isDefaultStream fault.


[ROCm/clr commit: 6cc5dc0326]
2017-05-30 21:55:46 -05:00
Evgeny Mankov 052f630bd3 [HIP] [HIPIFY] [FIX] cuModuleLoadDataEx -> hipModuleLoadDataEx
https://github.com/GPUOpen-ProfessionalCompute-Tools/HIP/issues/81

1.	Do not use JIT options on HCC path, call hipModuleLoadData instead.
2.	NVCC path is unchanged, to call cuModuleLoadDataEx with all options.
3.	Get rid of manual hipification, based on #ifdef #else for NVCC/HIP.
4.	Update documentation accordingly.


[ROCm/clr commit: ae9f14ef9c]
2017-05-19 17:22:14 +03:00
Ben Sander 4ac6ac9d1d Add initial HIP_SYNC_NULL_STREAM=0 mode.
This eliminates host-synchronization for null stream.  Instead, the
null-stream uses GPU-side events to wait for other streams.
Default is OFF pending additional testing.

Add enhanced null-stream test.

Also refine HIP_TRACE_API.


[ROCm/clr commit: 8bc6ee5932]
2017-05-16 19:04:25 -05:00
Ben Sander dc9e957a36 Finish adding start/stop event support to hipHccModuleLaunchKernel.
Change interface to use hipEvent_t rather than hipEvent_t*

Change-Id: I259062dc087a13d51dc27f84e1e8861f332a104d


[ROCm/clr commit: e9eaadd135]
2017-04-06 21:02:50 -05:00
sunway513 1897ca4a20 Refactor events and add initial event option for hipHccModuleLaunchKernel
- Change hipEvent_t to a class.
- Move event logic inside the class.
- Add _type to support Independent, StartCommand, StopCommand events.
  StartCommand returns start timestamp from events.

Change-Id: I4ddd694f2645a3ff7170c9111dc1d3e39931ca21


[ROCm/clr commit: f442e975c6]
2017-04-06 21:02:50 -05:00
Aditya Atluri 28c8d15412 added debug support for HIP sample
Change-Id: Ia7265234082039b68114f7421f4dbcb7149d4d2b


[ROCm/clr commit: 81d3725a16]
2017-03-31 14:13:46 -05:00
Aditya Atluri 3651cb672a added new api hipHccModuleLaunchKernel
1. hipHccModuleLaunchKernel is same as hipModuleLaunchKernel with OpenCL workitem model
2. Added copy right
3. Fixed header naming

Change-Id: I6a7c35a3566e2f8d3f5056613e34193775d4b236


[ROCm/clr commit: 1cead6a4cd]
2017-03-31 12:11:34 -05:00
Aditya Atluri bdaf6a3aaa disabled metadata apis
Change-Id: Ifb8839c581644cccc2afcd18c38a866f649a4144


[ROCm/clr commit: 4e5861df7a]
2017-03-28 10:46:31 -05:00
Aditya Atluri c3f1a37c28 Re-enabled metadata parsing in HIP
Change-Id: If8caa844571cb8581450df9ffdb76e2445c75f13


[ROCm/clr commit: abf369049b]
2017-03-27 11:00:39 -05:00
Aditya Atluri 478eb4e350 removed llvm dependency and metadata functionality
Change-Id: Ib9783b75d326559ed29c5aa2218aed40d20ad0fb


[ROCm/clr commit: 5a0685c137]
2017-03-23 10:16:37 -05:00
Aditya Atluri b4b87b8786 Added default module launch api functionality
1. As in hipModuleLaunchKernel(..., kernelParams, nullptr); works with this commit
    2. Added headers AMDGPUPTNote.h, AMDGPURuntimeMetadata.h to do code object meta data parsing
    3. Changed CMake to look at llvm link libraries
    4. HIP developer should set env variable LLVM_HOME to remove link errors
    5. HIP depends on installed LLVM (not source, not build)
    6. Added sample to test out the feature
    7. Right now HCC does not support embedding metadata in code object. Use clang opencl
    8. Changed HIPCC to read LLVM_HOME env var
    9. New argument to CMake should be given -DLLVM_HOME=<where llvm 5.0 is installed>

Change-Id: Iba38194aa872d97cc2c90a8e5ff746c48055c868


[ROCm/clr commit: 9645b0e0dc]
2017-03-17 13:11:34 -05:00
Ben Sander 0710dbde55 Fix bug in hipModuleGetFunction.
Modules with > 1 function didn't return the function correctly.
Also fix coding convention issues


[ROCm/clr commit: 09df0977c0]
2017-03-08 13:52:38 -06:00
Aditya Atluri 25210492b0 v3: added free for ihipModuleSymbol_t structures inside tracker
Change-Id: Ib8041a05312c08cbdf2d4fee5e7cbae17df6efff


[ROCm/clr commit: 1cffe49775]
2017-02-10 13:42:10 -06:00
Aditya Atluri 3577c19d66 v2: Fixed hipModule memory management
1. Changed test to assert for same hipFunction values
2. Added better memory management for hipModule

Change-Id: I10d7aef13c215a2211e262f3c79017f26a17d9a7


[ROCm/clr commit: 554fe191e1]
2017-02-10 13:32:13 -06:00
Aditya Atluri 6c76483ac8 fixed hipFunction memory management
Change-Id: I7ebb323419bcd220ebd6466a8eb38e7bfdb1520a


[ROCm/clr commit: 6110fcdfb6]
2017-02-09 17:22:55 -06:00
Ben Sander ad2ba66ce6 Read HCC_OPT_FLUSH and optimize dispatch accordingly.
If HCC is in this mode, we can use less aggressive flushes in some
cases.


[ROCm/clr commit: 2f7a8ec39c]
2017-01-25 21:50:52 -06:00
Ben Sander 2ea139e30f Show dynamic shared mem usage not static.
[ROCm/clr commit: 27447f10c2]
2017-01-23 22:34:41 -06:00
Ben Sander 3bc2e3ba02 Fix debug display for Module launch kernels
[ROCm/clr commit: 2ffc9f4e22]
2017-01-19 12:40:45 -06:00
Aditya Atluri a86633f210 changed copyright year from 2016 to 2017 in src directory
Change-Id: Idb97db509b2b4b1656b2df7a14a62ade38c9d574


[ROCm/clr commit: e9ff23e5f9]
2017-01-11 18:05:41 -06:00
Ben Sander 8ab567e331 Add name for function
[ROCm/clr commit: 5d815937de]
2016-12-17 08:54:09 -06:00
Ben Sander c59c82916a Remove HSA dependency from hipFunction_t
Place _groupSegmentSize and _privateSegmentSize inside Function,
remove hsa_executable_symbol_t.


[ROCm/clr commit: 2bd70ff345]
2016-12-17 07:22:56 -06:00
Ben Sander a3064807b5 Remove USE_DISPATCH_HSA_KERNEL=0 path.
[ROCm/clr commit: 06d382bc6d]
2016-12-17 07:22:56 -06:00
Ben Sander 68d861e8c5 Refactor Module and Function APIs.
- hipFunction_t is now returned by value.  This eliminates dynamic
      allocation / memory management complexity in the module.  Removed
the kernel
      name so the structure is just 16 bytes now.

    - Moved the hsa_executable_load_module and hsa_executable_freeze
      calls to the hipModuleLoad and hipModuleLoadData calls.

    - Apply sharedMemBytes in hipModuleLaunchKernel to group segment
      size (not private).


[ROCm/clr commit: 3f9404d0e1]
2016-12-17 07:22:33 -06:00
Ben Sander 448c6b3119 Enabled USE_DISPATCH_HSA_KERNEL, with serialization in hipModuleUnload.
[ROCm/clr commit: 3f810a203b]
2016-12-06 10:14:01 -06:00
pensun 70f0a2f43b HIP resource leaks fix from Jack
Change-Id: I93f3ad7cb94ff1cba1577bd8acc90e826693d12e


[ROCm/clr commit: 4cb1579d4a]
2016-12-05 20:21:33 -06:00
Maneesh Gupta 136d220c10 Revert "Enable USE_DISPATCH_HSA_KERNEL."
This reverts commit bbd9d98af7.


[ROCm/clr commit: ac93376c26]
2016-12-05 16:55:26 +05:30
Ben Sander bbd9d98af7 Enable USE_DISPATCH_HSA_KERNEL.
Optimize hipLaunchModule dispatch latency.


[ROCm/clr commit: f8bcbe8680]
2016-12-04 00:13:19 -06:00
Ben Sander bccb897f84 Add additional controls for forcing serialization and blocking.
Move HIP_COHERENT_HOST_ALLOC so it is read once at init time.
Add HIP_LAUNCH_BLOCKING_KERNELS, HIP_API_BLOCKING.
Update docs on debug and chicken bits.

Conflicts:
	src/hip_hcc.cpp


[ROCm/clr commit: 783ac156ce]
2016-12-02 18:03:59 -06:00
Ben Sander d6ffcdb9b0 Move some internal headers from "include/hip/" to src.
Change-Id: I7041bd5c803d9318979f4a7c1d658445c614691e


[ROCm/clr commit: 403cdf93c3]
2016-10-18 22:27:16 -05:00
Maneesh Gupta 2655c96ab9 src/*: Update copyright header
Change-Id: I455f5d0d12fe9cb39a3ba873bd22b4c25ed07cbf


[ROCm/clr commit: 88d6cad3fb]
2016-10-15 22:55:22 +05:30
Ben Sander 57adbf2a17 Add code to use new HCC API accelerator_view::dispatch_hsa_kernel.
Disabed by default, can enable with USE_DISPATCH_HSA_KERNEL=1

Change-Id: I7a6ba76f2bada34952ed47f5335ce695fa2faea5


[ROCm/clr commit: dcadaadb24]
2016-10-14 23:46:29 -05:00
Ben Sander eea909d96f fix file-not-found detection
Change-Id: Ida84923ed18b3ebf8ffcfd6ee84d8a72f611ecd3


[ROCm/clr commit: 1de3c1e450]
2016-10-13 11:43:49 -05:00
Maneesh Gupta 46feb7dcf2 Move include/* to include/hip/*
Change-Id: I7a7b2839b4df59c7a4c503550f99fdc9e45c0f54


[ROCm/clr commit: bbfc08f419]
2016-10-04 22:17:18 +05:30
Ben Sander 70a3ad883c Adapt to _kernelSymbol
Change-Id: Idebb7d7e895286ce5423afdcf391e00fa8b2b94f


[ROCm/clr commit: 8022671a5e]
2016-09-07 15:48:40 -05:00
Ben Sander c5f7fd723a refactor ihipPreLaunchKernel phase#1
- Fix calls to HIP_INIT_API to pass all function arguments.
- Change ihipFunction to follow coding convention:
    - leading underscore for member fields,
    - camelCase for member fields.
- move kernel print function inside ihipPreLaunchKernel.
- add HIP_TRACE_API_COLOR, control color of messages.
- add ihipLogStatus wrapper to hipDeviceSynchronize()

Change-Id: I20bbb644da213f821404648945197254e3648fc9


[ROCm/clr commit: 745310399d]
2016-09-07 15:18:34 -05:00
Aditya Atluri a4934a7c66 Fixed group and private memory size to AQL
Change-Id: I6e721f63fe5697b7b90a7d25add9aa024d9dc429


[ROCm/clr commit: 26215c515d]
2016-09-07 12:57:18 -05:00
Ben Sander f3da27cd5a Fix double-lock of stream on hipModuleLaunchKernel
Change-Id: I4ca164971c25f4eb8fbcca11d6258367bb3d2ab4


[ROCm/clr commit: 0fdb5bf517]
2016-09-02 12:47:49 -05:00
Aditya Atluri 1e6aa52868 added logger for return status
Change-Id: Ib93012a15b1cfa90714a6ebd5153cc40e28e6566


[ROCm/clr commit: 3fbe062008]
2016-09-02 09:44:00 -05:00
Aditya Atluri 40d824337e fixed code according to convention
Change-Id: Ib90c84a30ea6da3531e8b7c3e281dd4b31915198


[ROCm/clr commit: af86d28187]
2016-09-02 09:31:37 -05:00