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

13197 Коммитов

Автор SHA1 Сообщение Дата
Matt Arsenault cba7a4d20e Avoid intermediate object library
Object libraries are weird, and producing a library by using the
target objects from them doesn't automatically import the interface
properties of the linked targets. These object libraries only have
single uses, so just directly create the final library from the
sources.

Leaves libelf as an object library, since there seems to be some cmake
oddity when trying to link an unexported target to an exported one.

Change-Id: Ic379612c89340c40085c9862cfe111fa4bbff425
2020-04-28 16:41:34 -04:00
Vlad Sytchenko 2963d0d454 Add entry for another unannounced asic
Change-Id: I63c6ce6221e812a33e9427841be49840a8f48154
2020-04-28 14:23:57 -04:00
Vlad Sytchenko 63b90a32c4 Add entry for new device id
This is accomodate upcoming Pal::AsicRevision changes.

Change-Id: Ic108b647f3548d34b7aa83d6077fb88452768998
2020-04-28 14:23:49 -04:00
Payam bff03ec833 updating package name to hip-rocclr instead of hip-vdi
Change-Id: Ife8810d4dd224ce29c2e2a827b221a618c9f1b3d
2020-04-28 13:36:33 -04:00
Vlad Sytchenko 518be44661 Handle copy cases where the uses pases a bad ptr
Change-Id: I4490b8519e4d0dde25b845f9ca7e81c1d80d4f28
2020-04-28 11:04:29 -04:00
Payam Ghafari 10de80eb17 Merge "adding cltrace" into amd-master-next 2020-04-28 09:48:35 -04:00
agodavar f149fe0803 P2PStating buffer allocation when P2P is not enabled between all GPUs
SWDEV-232580 & SWDEV-232580
Allocate p2p statging buffer when full P2P access is not available between all devices.
p2p staging buffer will eventually be used when required.

Change-Id: If8490ba7b1c52c432c1e942ae95421b9d2ec7097
2020-04-28 07:10:57 -04:00
Payam 50563e4544 adding cltrace
Change-Id: I19b06f9a5954f317bbd00b5c2447ed5b6e9f30ae
2020-04-28 05:49:30 -04:00
Chauncey Hui 27bfd2a3ee SWDEV-2 - Change OpenCL version number from 3131 to 3132 2020-04-28 03:00:02 -04:00
Freddy Paul 2a271dc418 hip-on-vdi: Enable RUNPATH and versioning
1. Enable versioning for HIP libraries
2. Enable RUNPATH on HIP libraries to find ROCm dependencies
3. Control HIP package install using CPACK_INSTALL_PREFIX

Change-Id: I9096da56592e9c78cdba329011f6e1bae99adaa2
2020-04-27 19:48:44 -04:00
Alex Xie 009d0b5f55 SWDEV-232894 Port hipMemcpy optimizations from HCC to VDI
Change-Id: I6bebe9ac503a9f80d067aeea8a848409ad210338
2020-04-27 14:53:58 -04:00
Aaron Enye Shi 2df5d92240 Update hipconfig to support HIP-Clang
Add support for hipconfig to display details on HIP-Clang compiler and update HIP_COMPILER and HIP_RUNTIME to include clang and rocclr. Also, add hipcc flags --cxxflags and --ldflags to support HCC users who used hccconfig flags.

Change-Id: Ib12d81a4ff59d34fb000626836b1adb10be3ac61
2020-04-27 11:44:53 -04:00
Yaxun (Sam) Liu 4e7b1cdbd2 Let hipcc treats .cpp files as C++ files for HIP-Clang
This change is required by rocBLAS and rocFFT for OpenMP issue
since cmake needs to treat .cpp file as C++ program to detect
OpenMP support.

This is to match nvcc behavior, speed up compilation of C++
programs, and fix some compilation issue where C++ programs
are compiled as HIP programs.

Currently it is controlled by an environment variable
HIP_COMPILE_CXX_AS_HIP. By default it is 1, where
hipcc treats .cpp files as HIP programs. If it is
set to 0, hipcc will treat .cpp files as C++ programs.
This is because some math libraries are still not
ready for the change, however rocBLAS and rocFFT
require this feature for OpenMP, therefore put it
under an environment variable so that rocBLAS
and rocFFT can use it.

Change-Id: I56a51e27079df850ee39d4217fb647c22d79f612
2020-04-27 11:43:05 -04:00
kjayapra-amd 19c654e794 SWDEV-232008 - Handle cases where Memcpy size is less than Symbol Size.
Change-Id: I046bc70445dfd4f6fdfd06415f53d1fc06f425b4
2020-04-27 10:47:28 -04:00
German Andryeyev 082cbfa1f5 Don't attempt to reuse the cooperative queue
Change-Id: I0e98e292a562715a7b395118f899af859f3e42bb
2020-04-27 09:18:05 -04:00
root b5031f39b1 Merge master into amd-master-next
Change-Id: I3fc1dc0c860d627053537581e75561e8a7efe327
2020-04-26 22:19:37 +00:00
Chauncey Hui d2091cc266 SWDEV-2 - Change OpenCL version number from 3130 to 3131 2020-04-25 03:00:03 -04:00
Michael LIAO f8062c6fbd [vdi] Revise the symbol management.
- As different modules may have symbols with the same name, each symbol
  needs identifying with a pair of the module handle and the symbol
  name.

Change-Id: I85650a787d9a424545154cc40ebd59e706fa358f
2020-04-24 22:28:31 -04:00
Matt Arsenault 5943e4d93e Don't use intermediate object library
This added an unnecessary level of indirection, and also didn't
automatically pull in interface dependencies from the linked targets.

Change-Id: I7371ab3c184f6045947a96c8a393f2e3452fc5c1
2020-04-24 15:31:35 -04:00
Yaxun (Sam) Liu 29549ce4dc Enable template max and min for HIP-Clang (#2028)
It was for HCC only. HIP-Clang also needs it for __fp16 since AMDMIGraphX uses it.

Change-Id: Id49322b7b89ef799accdf6b47627a6fce51d1ab5
2020-04-24 12:30:28 -07:00
German Andryeyev 5a7c094729 SWDEV-232918
hipEventRecord is much slower in hipclang/vdi

- Make sure default streams don't sync each other.
- Add null stream into the list of default streams.
- Code clean-up to simplify queue look-up.

Change-Id: I36e1fc8d86a600e3dce806694d95d146ed8afd03
2020-04-24 14:40:43 -04:00
Matt Arsenault e7d6a5e5a6 Prune some unused compile definitions
There's a lot of unnecessary system configuration junk here which
isn't used, and is already available through compiler predefines. This
is also blindly placed without really checking the host architecture.

-DLINUX is unused.

-D__AMD64__ is predefined by the compiler, and is also redundant with
 __x86_64__ and ATI_BITS_64.

__x86_64__ should also be removed. It's used in libelf, but I'm not
sure if msvc predefines this or not.

-DqLittleEndian is unused, and also doesn't follow macro naming
 conventions (plus compilers have their own predefines for checking
 this).

Change-Id: I89f6fc4c88e861623be7f32df41aecbb4e9009ab
2020-04-24 12:38:42 -04:00
Matt Arsenault c60d7d860d Add comgr macros to public definition export
This should allow the cmake build for the opencl runtime to work
without manually adding these definitions. The PAL build also adds
these as private defines in its build, so change rocm to match. This
should probably be including these a config header to benefit other
builds, but this will at least avoid some clutter in the opencl build
for now.

Change-Id: I1044984b87ba3fc72e280e255ceea2dd9e3337ff
2020-04-24 12:12:54 -04:00
Christophe Paquot cf6df62b3a Merge "cherrypick from master branch" into amd-master-next 2020-04-24 11:48:18 -04:00
Yaxun Liu 040ca11925 Merge "Enable template max and min for HIP-Clang" into amd-master-next 2020-04-24 11:44:49 -04:00
Tao Sang cf6345d7c7 Merge "Add Performance/memory/hipPerfMemMallocCpyFree" into amd-master-next 2020-04-24 11:32:47 -04:00
Matt Arsenault 350d54e198 Don't use include_directories for ROCR includes
Use the modern cmake, target specified method.

Change-Id: Icd7196bfccb85f255bbc01bc87c6667d961bb236
2020-04-24 11:05:40 -04:00
Matt Arsenault ff12016c7b Use target_compile_definitions for HSA vs. PAL device macros
Change-Id: I7e1240cb4d32ce86948814d727a516025ee976fa
2020-04-24 11:05:16 -04:00
Matt Arsenault 815198bec9 Cleanup libelf build
Use target specific forms for define/include. Don't set
CMAKE_CXX_FLAGS for the standard, which is already implied from the
parent build.

Change-Id: I4000893376d6685e9889b66ad8451fc493020272
2020-04-24 11:04:52 -04:00
Matt Arsenault ec62f9b8de Unscreamake some cmake functions
This was already using the new lowercase style in most places.

Change-Id: I7ed04a3652c932581a2897f2fee79d79aa732f8e
2020-04-24 11:04:21 -04:00
Matt Arsenault 3c2e0f6155 Remove leftover cmake debug printing
Change-Id: I886b21717eadab6b4365ddaff063fbcd37300aa8
2020-04-24 11:03:37 -04:00
Matt Arsenault 83455f36c5 Modernize cmake usage for finding amd_comgr
Don't use find_path on the header, it's redundant with the interface
include directories on the imported target. Use the target specific
forms for including and linking it.

Change-Id: I3923143c992888ee7d5ee1130084ac2e5eaa0f3a
2020-04-24 11:03:27 -04:00
Matt Arsenault a36f19df51 Don't use CMAKE_SOURCE_DIR
This is almost never the correct thing to use since it breaks adding
this as a subproject build in a larger build. Switch to refer to
CMAKE_CURRENT_SOURCE_DIR, which is equivalent in a standalone build.

Change-Id: Ib8dbbc0668491f4227389b9a5b27da770b3bc5ce
2020-04-24 11:02:52 -04:00
Michael Hong Bin Liao 17e9c63708 Merge "[vdi] Fix texture reference sample." into amd-master-next 2020-04-24 10:30:38 -04:00
Michael Hong Bin Liao 2e61683b33 Merge "[vdi] Fix hang due to recursive locking." into amd-master-next 2020-04-24 10:30:26 -04:00
Yaxun (Sam) Liu 1013e4eca8 Enable template max and min for HIP-Clang
This change is required by AMDMIGraphX.

It was for HCC only. HIP-Clang also needs it for __fp16 since AMDMIGraphX uses it.

Change-Id: Id49322b7b89ef799accdf6b47627a6fce51d1ab5
2020-04-24 09:51:17 -04:00
Paul Fultz II 9227b08458 cherrypick from master branch
75a5088446
727c9f77d8

These are needed by MIOpen and rocBLAS.

Add __HIP_PLATFORM_HCC__ to hip::host target (#2029)

Fix hip-config.cmake for CMAKE_CXX_COMPILER=g++ (#2035)

* Fix hip-config.cmake for CMAKE_CXX_COMPILER=g++

* Add inlineall option to hip::device in hip-config.cmake

Change-Id: Ib51f82d0b9e38d2137df65c940592413e22ba07a
2020-04-24 09:32:02 -04:00
Chauncey Hui bb348a463d SWDEV-2 - Change OpenCL version number from 3129 to 3130 2020-04-24 03:00:03 -04:00
Tao Sang 33d7005b10 Add Performance/memory/hipPerfMemMallocCpyFree
Change-Id: Id1ac415f85028da3e9517c2226764bcb4acec1b1
2020-04-23 23:49:56 -04:00
Michael LIAO b469e5c573 [vdi] Fix texture reference sample.
- The driver code should not re-define `tex` again as it's already
  defined in the kernel code. Eventually, the driver code should be as
  regular C++ code instad of HIP code.

Change-Id: I8c7cab204b98990619d6e7109b990d7089ea9261
2020-04-23 23:41:56 -04:00
Michael LIAO c56a3ca63e [vdi] Fix hang due to recursive locking.
- Declare recursive lock for global function map.

Change-Id: I3e792e21688c980343c4fd1c61dcad97f7a890cd
2020-04-23 23:32:56 -04:00
kjayapra-amd 92c63384cb SWDEV - 231874 - Do Dword aligned memset if the total size aligns.
Change-Id: Id05db4cfd9c43b2cffa3cec8b02f1cd07f340dd6
2020-04-23 21:08:50 -04:00
Vlad Sytchenko bfa363d00c Make sure to zero out all the unset texture fields
These might contain garbage causing the runtime to incorrectly parse the state of the texture references.

Change-Id: I93c726fa30b580b3e14c50ac939f3c71b0d1c8d9
2020-04-23 16:38:52 -04:00
German Andryeyev 89133a7301 SWDEV-232807
[ROCm][TCT][HIP] cooperative stream test case is failing.

Make sure lockXfer() in the blit manager returns a valid value.
Port the latest PAL backend logic into the ROCr backend.
This change doesn't fix the issue, reported in the ticket.

Change-Id: I54101a824f49a2dcfbbf5414cb5b3af41745306d
2020-04-23 15:01:02 -04:00
Michael Hong Bin Liao b70dac2557 Merge "[hip] Fix typos." into amd-master-next 2020-04-23 13:32:09 -04:00
eshcherb 6cb57ee64a fix pointers format (#2037)
* fix pointers format

* fix pointers format - cleanup

* fix pointers format - fix
2020-04-23 21:54:51 +05:30
Yaxun (Sam) Liu 5abcda3ab7 Fix hip-config.cmake for CMAKE_CXX_COMPILER=g++ (#2035)
* Fix hip-config.cmake for CMAKE_CXX_COMPILER=g++

Change-Id: I84ae83a5d223853706dd36834b7962ffe9573c1f

* Fix HIP_CXX_COMPILER

Change-Id: I4e2523b560113420af1ab877a0bc48ca2e9e957a

* Fix hip-config.cmake

Change-Id: Ida4ef8f40fed83d5f659a9a9835b1f521cb6a374

* Add inlineall option to hip::device in hip-config.cmake

Change-Id: Ib51f82d0b9e38d2137df65c940592413e22ba07a
2020-04-23 21:51:54 +05:30
Aaron Enye Shi 17e439e572 extractkernel obj dump args to use double dashes (#2034)
More recent llvm-objdump has changed disassemble and mcpu arguments to require double dashes.
2020-04-23 21:51:33 +05:30
Paul Fultz II 445953aa94 Add __HIP_PLATFORM_HCC__ to hip::host target (#2029) 2020-04-23 21:51:02 +05:30
Maneesh Gupta f2e1118d7a Merge in the rocclr based hip runtime (#2032)
* Merge master-next changes in master (include vdi development in master branch)
2020-04-23 09:12:06 -07:00