Commit Graph

13402 Commits

Author SHA1 Message Date
Tony Tye 9cd02c640e Delete roc::Program::hsaDevice
Delete roc::Program::hsaDevice and access directly from device
associated with program. This allows to be clear if the device is a
NullDevice which has no meaningful HSA agent backend device.

Change-Id: I81f96aff47bf9b8166d0ff6a5efc7c01f0fb6de3


[ROCm/clr commit: 783fe2e01b]
2021-01-13 08:24:28 +00:00
Tony Tye 44f9840f0e Make roc::Device constructor and create() method private
Make roc::Device constructor and create() method private as creating
devices is performed by the factory static methods.

Change-Id: Ifa2edb8ec645b4ce6070c4aef355b9ef88294cf1


[ROCm/clr commit: c1ea70b539]
2021-01-13 08:24:28 +00:00
Tony Tye f8e3f167a0 Check error return from aqlCreateHWInfo
Change-Id: If57c30d0605dc628d93a0d8131836ecde9834261


[ROCm/clr commit: 30729a716f]
2021-01-13 08:24:28 +00:00
Tony Tye 29ca46821b Add stronger checking
- Add assertions to enforce that objects are of the correct kind and
  have been allocated.

- Make destructors check if objects have been allocated before
  deleting.

- Operations that require a non-NullDevice return failure if given a
  NullDevice.

- Use static_cast rather than reinterpret_cast when cohersing from a
  base class to a derived class.

Change-Id: I02ee0ea9d7982fd7ca29d49c9b02cfae111b7127


[ROCm/clr commit: e5431676d4]
2021-01-13 08:24:28 +00:00
Tony Tye 2cb73c8b82 Rename device access functions
Rename functions that access devices to reflect the derived device
they return. This includes the base device::Device and the derived
gpu/pal/roc device classes in both NullDevice and Device forms. Change
to use the least derived versions to clarify what operations will be
available.

Change-Id: I1abb6bfed7efa24852bc8d0d49acaea357d8b5d0


[ROCm/clr commit: 001fd66cac]
2021-01-13 08:24:28 +00:00
Tony Tye 7da6d1778b Move declaration of kMaxAsyncQueues in rocdefs.h
Move declaration of kMaxAsyncQueues in rocdefs.h into the roc
namespace and adjacent to the other definitions.

Change-Id: Ibd319e3cc191945bacb9c06e1b31967717c1c87c


[ROCm/clr commit: f679b05df7]
2021-01-13 08:24:28 +00:00
Tony Tye 303b379d62 [NFC] Reorder some system includes alphebetically
Change-Id: I5245eb8482b447f6ce95e1c0b686d09ca7d20deb


[ROCm/clr commit: 8992f9e18d]
2021-01-13 08:24:28 +00:00
Tony Tye 1215c2d51e Add virtual destructor to device::Settings
Add virtual destructor to device::Settings since derived classes are
allocated, but are deleted using the base class. This ensures the
descructors of the derived clsses will be executed if present.

Change-Id: I1f974b986193c60128009a768ec6b01b9deeacd5


[ROCm/clr commit: 77268b2e60]
2021-01-13 08:24:28 +00:00
Tony Tye efd1f5add1 [NFC] Move device::Info::targetId_ declaration
Move declaration of device::Info::targetId_ to be adjacent to the
other char* name fields.

Change-Id: Iefb249e801765a87b243a2a5e6997e78e817be2b


[ROCm/clr commit: a8d7e59dff]
2021-01-13 08:24:28 +00:00
Tony Tye 3b6c42f78d [NFC] Correct comments and line spacing
- Correct spelling mistakes or working in comments.
- Adding missing line separators.
- Add missing comments for namespace closing brace.

Change-Id: If09cdd38aa088b0f68f750dfdef81351eb8c4935


[ROCm/clr commit: eb16dc5ef3]
2021-01-13 08:24:28 +00:00
Tony Tye a34ae9cfcf Ensure dump file names do not contain special characters
When TargetID is supported, the isa name will contain ':' characters
that are not legal in Windows file names. So replace all
non-aphanumeric or '+'/'-' characters with '_' to ensure the file name
will be legal on any file system.

Change-Id: I0b73a6188c186f75f1d2e8af19ade87667cbfe0b


[ROCm/clr commit: ed6d54b416]
2021-01-13 08:24:28 +00:00
Chauncey Hui bdb6b6fb71 SWDEV-2 - Change OpenCL version number from 3241 to 3242
[ROCm/clr commit: dba4c06461]
2021-01-13 03:00:06 -05:00
German Andryeyev 27e6704673 Explicit page table update on all devices
HMM with xnack enabled should automatically update page tables,
but currently it doesn't perform that. For now, runtime will
force page table update on all devices unconditionally.

Change-Id: Idfa6e1c145e6c114856214dce042b8a8349e5c58


[ROCm/clr commit: 7d3aaa7a39]
2021-01-12 23:16:46 -05:00
Rahul Garg be82aa43fb Update dispatch latency with wall time measurements
Change-Id: I73bfed129171d6909b4638f714b694111b31ef56


[ROCm/clr commit: 66776ae8de]
2021-01-12 22:52:33 +00:00
Todd tiantuo Li 505f246c74 SWDEV-267762 - add RMB(gfx1035) to deviceQuery
Change-Id: I5388d9083a1b45751f024474ec4e0ae38e1e9107


[ROCm/clr commit: e1c4b22a32]
2021-01-12 09:13:40 -08:00
Tao Sang ef480eb242 Workarround for rocThrust building failure
Define the following for workarround of rocThrust building failure,
HIP_INCLUDE_HIP_HCC_DETAIL_DRIVER_TYPES_H
HIP_INCLUDE_HIP_HCC_DETAIL_HOST_DEFINES_H

Change-Id: I1ae48677eafd749d6c25bca204c1724b026be22f


[ROCm/clr commit: 149254f7f8]
2021-01-12 11:31:06 -05:00
Jason Tang ae7ec74669 Fix Windows 32bit build
Change-Id: Iab4a9a3f15c47d2c13d09ad098c52b21e078fd0a


[ROCm/clr commit: 318eecfc87]
2021-01-12 09:23:00 -05:00
Jason Tang 4098e012ed Remove incorrect assert
Change-Id: I7697c688c5c50a38d9d339971d4a03e9b57fcae4


[ROCm/clr commit: 020da898b2]
2021-01-11 20:59:36 -05:00
Chauncey Hui 0e71b90984 SWDEV-2 - Change OpenCL version number from 3240 to 3241
[ROCm/clr commit: e5b21c173c]
2021-01-11 16:57:11 -05:00
Tao Sang c42df761a3 Fix failure for g++/hipMalloc test
Fix hardcoded /opt/rocm

Change-Id: I1ae48567eafd749d6c25bca204c1724b026be21f


[ROCm/clr commit: 12c976ef63]
2021-01-11 11:46:17 -05:00
Michael LIAO 9211198dcd Remove checking on double.
- All conversions among floating point types should be allowed.

Change-Id: I6223bece51f5b2a535ab3369c5c4380f18acc74d


[ROCm/clr commit: 6b9c1744e9]
2021-01-11 11:33:33 -05:00
Tao Sang e9ad9ca200 Remove deprecated __HIP_ROCclr__
Change-Id: I19464fef82d5d24af7d4c46a80318a2922895bb8


[ROCm/clr commit: 4937fd7f0e]
2021-01-11 09:26:01 -05:00
Sameer Sahasrabuddhe 2df32ebc65 Identifiers with a double underscore "anywhere" are reserved
This particular cleanup is limited to just two functions defined in
the HIP headers.

Change-Id: Ib529685265f2fda90e009b24e7e756e0cf363012


[ROCm/clr commit: 3558643c64]
2021-01-11 15:09:53 +05:30
Sameer Sahasrabuddhe 1c90f9fc26 SWDEV-234709: redirect printf to stderr if specified by device code
The first qword in the printf messages is called the control
qword. If the LSB is set, then the output of the printf is now
redirected to stderr instead of stdout.

Change-Id: I391e04e6e8e0f231fda56f3a6e02703bf50e1924


[ROCm/clr commit: e0ac6b4fc5]
2021-01-11 01:36:00 -05:00
Icarus Sparry e20326e563 Allow for /usr/bin/hipcc to be a symlink
SWDEV-267206

If /usr/bin/hipcc is a symlink then resolve it first, and then find
the resulting directory rather than resolving /usr/bin.

Change-Id: I380728ffa05ed813cc793a1d6488aaae81ddbda8


[ROCm/clr commit: 468929e539]
2021-01-11 00:50:20 -05:00
Saleel Kudchadker bced4a5b76 Update documentation for hipEventCreateWithFlags
Change-Id: I2658bd95df0d3a802cce4ffcb8dfd40e7055b0f7


[ROCm/clr commit: dab9ae32b2]
2021-01-08 16:32:57 -05:00
Rahul Garg f169546403 Add IPC Events support
Change-Id: Iac2bf3d5e1d9a993bebbb066c20d300d6f05558b


[ROCm/clr commit: 3829645039]
2021-01-08 20:09:26 +00:00
German Andryeyev 30cf81fc93 Add HSA signal global tracking logic.
Implement the global class for signals tracking per device queue.
Switch to the new tracking mechanism.

Change-Id: I3c4dda04b34e6d18d6a95510d84102909633b415


[ROCm/clr commit: 8698aeef0d]
2021-01-08 12:57:33 -05:00
Tao Sang eeb275d643 Remove hip-hcc codes: Part four
Remove __HCC__, __HCC_ONLY__, __HCC_CPP__, __HCC_C__,
__HCC_OR_HIP_CLANG__, __HIP_ROCclr__ and their guarded codes.

Remove Hcc codes from directed_tests and samples.

Remove __HIP_PLATFORM_HCC__ and __HIP_PLATFORM_NVCC__ from
some files where they are not necessary.

Add deprecation notice.

Change-Id: I1ae467eafd749d6c25bca204c1724b026be21fce


[ROCm/clr commit: d504a761ad]
2021-01-08 10:53:34 -05:00
Satyanvesh Dittakavi a962e2d0b3 SWDEV-264244 Fix StreamSync
Change-Id: I3a46a607a77aaf46dcd1fcf08db7e926613fe8d1


[ROCm/clr commit: a148a71075]
2021-01-08 02:06:31 -05:00
DURGESH KROTTAPALLI da309a2db5 [dtest] Tests for hipExtLaunchKernelGGL APIs
Added test scenarios for hipExtLaunchKernelGGL
1. verify kernel execution time using events
   passed through argument
2. Verify the API by disabling time flag in
   event creation.

SWDEV-238517 for enhancing hip unit tests

Change-Id: I755adc34a25c58b68041fc927bbffd2a9e6eafde


[ROCm/clr commit: ec794ae051]
2021-01-08 00:16:54 -05:00
DURGESH KROTTAPALLI 04e34656af [dtest] Tests for hipExtModuleLaunchKernel APIs
Added test scenarios for hipExtModuleLaunchKernel/hipModuleLaunchKernel APIs

 1. Negative Test Scenarios for hipExtModuleLaunchKernel API
 2. Negative Test Scenarios for hipModuleLaunchKernel API
 3. hipExtModuleLaunchKernel API Concurrency Verification
    using global variable
 4. hipExtModuleLaunchKernel API Concurrency Verification
    using total time taken by kernels.
 5. hipExtModuleLaunchKernel API verifying the kernel execution time
    of a particular kernel
 6. hipExtModuleLaunchKernel API verifying by disabling the
    time flag during event creation

SWDEV-238517 for enhancing hip unit tests

Change-Id: I33bbab152d47beba62065c461a07cbcacdc01d97


[ROCm/clr commit: a57968fba9]
2021-01-08 00:05:57 -05:00
Rupam Chetia 5ed7280a01 [dtest] Enabling all negative tests for hipModule* APIs
Enabling all negative test cases for amd as they are functional now
SWDEV-238517 for enhancing hip unit tests

Change-Id: I0bdbf8c192ef94588403c8f027c0399dd5480a00


[ROCm/clr commit: 5ba7259ffc]
2021-01-07 23:50:56 -05:00
Rupam Chetia 92ab949465 [dtest] Additional tests for hipDevice APIs
APIs: hipDeviceGetAttribute(), hipGetDeviceProperties(),
      hipDeviceGetByPCIBusId() and hipDeviceGetPCIBusId()
1. New negative test cases for each API.
2. Additional attributes for testing with hipDeviceGetAttribute()

SWDEV-238517  Enhancing hip unit tests

Change-Id: I3c24462426ffaf3a9317b7de9cd33f7c65791a4b


[ROCm/clr commit: 328f8ab0ff]
2021-01-07 23:29:14 -05:00
DURGESH KROTTAPALLI fcdded139b [dtest] Enhanced tests for hipGetDeviceCount hipSetDevice and hipGetDevice
Added following functional and negative scenario tests for
HIP_VISIBLE_DEVICES (HVD), ROCR_VISIBLE_DEVICES (RVD)
CUDA_VISIBLE_DEVICES(CVD)
1. Verifying HVD and RVD - invalid number in sequence
2. Verifying HVD and RVD - dupliates in the beginning of sequence
3. Verifying HVD and RVD - all the duplicates
4. Device count with RVD(max devices and HVD(min devices)
5. Device count with RVD(min devices and HVD(max devices)
6. Device count - RVD(set), HVD(unset), CVD(set)

SWDEV-238517 for enhancing hip unit tests

Change-Id: Ia83e9e9068cbf8cc61cff17311cda1d1f8a38fee


[ROCm/clr commit: b2a93adb82]
2021-01-07 23:23:51 -05:00
Rupam Chetia 708d7cb205 [dtest] Tests added for V3 and V4 Code Objects with Static Lds
- Added test for V3 Static Lds code object with sramecc/xnack settings.
- Added test for V4 Static Lds code object.

SWDEV-238517 for enhancing hip unit tests

Change-Id: Ibc4f7e12033dec231d6834ccdd983e3b9e001d60


[ROCm/clr commit: 656a2cb556]
2021-01-07 23:19:02 -05:00
Jatin Chaudhary e91e6ccbfc Populate HIP_CLANG_PATH if its not declared
Change-Id: Ibc1f2e9b3389b6cc7a58579cfb293999ad6e9398


[ROCm/clr commit: 9e35810188]
2021-01-07 04:15:42 -05:00
Payam cef8f01c51 Cleaning lintian warning SWDEV-247996 Part3
Change-Id: I62e5bfc5f17eee12a7a0cfe8ed6fbc35c43ff8c3


[ROCm/clr commit: 1f9fd14a57]
2021-01-06 11:56:11 -05:00
Sarbojit Sarkar 6552e3c9b2 SWDEV-264116: Optimize signal pool size
Change-Id: I4b9cef04d18fbbe453db924bcd88837c0e5924de


[ROCm/clr commit: 7648b2a61b]
2021-01-06 02:14:23 -05:00
agodavar efe86a0f88 SWDEV-245381: Updated guarantee error messages to print based on BUILD_TYPE
Change-Id: Ifafbc075d6b9860da040c72859127c4e638a786f


[ROCm/clr commit: 6838df46eb]
2021-01-05 23:29:50 -05:00
DURGESH KROTTAPALLI e372b28787 [dtest] Tests for hipMemcpy2D and hipMemcpy2DAsync APIs
Added following functional and negative scenario tests
for hipMemcpy2D and hipMemcpy2DAsync APIs
 1. Verifying D2H and H2D functionality
 2. Verifying D2D on same device and peer device
 3. Verifying using pinned host memory on same and peer GPU
 4. Negative test scenarios
 5. Verifying hipMemcpy2DAsync API along with kernel launch

SWDEV-238517  Enhancing hip unit tests

Change-Id: I8f447bc7f6bf13cb895f1809f5a2b501baa8782c


[ROCm/clr commit: 7e6d748f26]
2021-01-05 23:23:09 -05:00
Tao Sang 2c1c9f78d6 Remove hip-hcc codes: Part three
1.Rename include/hip/hcc_detail/ as include/hip/amd_detail/

2.Rename include/hip/nvcc_detail/ as include/hip/nvidia_detail/

3.Create __HIP_PLATFORM_AMD__ to replace __HIP_PLATFORM_HCC__

4.Create __HIP_PLATFORM_NVIDIA__ to replace __HIP_PLATFORM_NVCC__

After hcc_detail, nvcc_detail, __HIP_PLATFORM_HCC__ and __HIP_PLATFORM_NVCC__
have been removed from upstream, they will be removed from hip runtime.

Change-Id: I1ae457effd739d6c25bca203c1724b026be21fce


[ROCm/clr commit: 8a2b0b7424]
2021-01-05 10:39:31 -05:00
sumanthtg 040db1c405 [dtest] Tests for hipMemset3D/hipMemset3DAsync APIs
Negative, Functional and Regression scenarios for
 - hipMemset3D
 - hipMemset3DAsync

SWDEV-238517 for enhancing hip unit tests

Change-Id: Idc5604f728ca1a96ec13876e006120f7a3d69acf


[ROCm/clr commit: 2624a5654c]
2021-01-05 07:00:48 -05:00
agodavar b1eb35e730 SWDEV-245381 : Updated guarantee error messages to print based on BUILD_TYPE
Change-Id: Ia21039326b440f6d807a6495a9a05dd52b384c76


[ROCm/clr commit: 69a786e8d1]
2021-01-05 05:49:09 -05:00
Satyanvesh Dittakavi 7fec171e78 SWDEV-263678 - fix rocHPCG mgpu perf drop
Change-Id: I33269fe4f6165d1ed172b19033ab9fcb92f338c3


[ROCm/clr commit: 15baf7ef6d]
2021-01-05 00:22:12 -05:00
cjatin 5f4a45164a Removing ELF flags and moving them to HIP
Change-Id: I18464fef82d5d14af7d4c46a80318a2922895bb7


[ROCm/clr commit: 7bcd555602]
2021-01-04 13:43:33 -05:00
cjatin 42dfa8e5c4 Add ELF Flags moved from rocclr
Change-Id: I5febe7bdca80517e9f9492d7930def72db83c14e


[ROCm/clr commit: 6faffdffd2]
2021-01-04 13:43:16 -05:00
Jatin Chaudhary f6f9989b82 Adding file command as dependency
Change-Id: Ic719c5ce8ad0d99f6a341b5b46927587080fcf2e


[ROCm/clr commit: e14dbaeb6e]
2021-01-04 00:03:53 -05:00
Sarbojit Sarkar fae1bcd07c Revert "Fix hipmemset to match CUDA behavior"
This reverts commit 76a2999f22.

Change-Id: I53052b25bac4956f3efd124eadc936197f2e466a


[ROCm/clr commit: f64af513a2]
2021-01-01 00:11:58 -05:00
agodavar 1da132c4b4 SWDEV-239065 Refactor hipcc, added new perl module hipvars
Change-Id: I2b71ceb2563501c7b2861cd0f2e23d01207b1bc2


[ROCm/clr commit: f3e350cd12]
2020-12-31 05:41:36 -05:00