Commit Graph

691 Commits

Author SHA1 Message Date
Aditya Atluri fe2d13c861 Added proper device data types
Change-Id: I42029635ff68c3c13a764a3eda6447e6c77878c6


[ROCm/clr commit: 4e57822d95]
2017-01-11 15:06:25 -06:00
Ben Sander 13bf4c39cc Add HIP_MAX_QUEUES feature.
Includes some tricky manipulation of the locks for contexts and streams.
issue is that stealing a stream requires we lock the context to
walk the streams to find a victim.  To avoid deadlock, we can't
have a stream locked when we lock the context.  This implementation
releases the stream lock, then acquires the context and selects the
victim.
A more stable implemenation might be to copy the stream list
from a context so that a lock is not required to walk all streams.
Smart shared_ptr could be used to prevent the streams from being
deallocated during the walk.


[ROCm/clr commit: b29fbf736d]
2017-01-09 21:02:56 -06:00
Ben Sander 82cf0397c5 First pass at virtualized queue support.
Also updated stream debug messages to consistently use trace_helper.


[ROCm/clr commit: c9f5fe34e6]
2017-01-09 21:02:53 -06:00
Ben Sander 9d22c4f727 tolerate spaces in hip args
[ROCm/clr commit: 49d1477b9d]
2017-01-09 20:57:13 -06:00
Rahul Garg 0aabd435a9 Added state for hipDevice.
Change-Id: Idbc3c04cd054a01b634856a1e0a23ff172e991aa


[ROCm/clr commit: 090eadd0bd]
2017-01-09 23:54:01 +05:30
Ben Sander 4ad8744139 Support size_t in memset kernel.
Add disable for HSA_AMD_AGENT_INFO_MAX_WAVES_PER_CU
Remove one copy of completion_future in memset.


[ROCm/clr commit: fd5b0c68b1]
2016-12-22 12:25:09 -06:00
Ben Sander 693bfc85bc Increment API sequence number.
Change name to tls_tidInfo


[ROCm/clr commit: cf338d716b]
2016-12-21 15:30:36 -06:00
Rahul Garg 7121e56949 Fix for HCSWAP-67
Change-Id: I0b2ce5ab933237947fb41d89769db3da16e5be6a

Conflicts:
	src/hip_hcc.cpp


[ROCm/clr commit: 4988975b59]
2016-12-19 16:19:51 +05:30
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
Rahul Garg 8acb6a623d Mapped hipDevice_t to int
Change-Id: I6cfa56c42b7cd04aa0e0bce510c0d72d34ea211a


[ROCm/clr commit: bddaa0e81c]
2016-12-17 16:53:03 +05:30
Aditya Atluri 3e3db78eb0 disabled half native support as inline asm is not working
Change-Id: I3073d8ae39eed321987f0f2f0e689eec4cdbb48c


[ROCm/clr commit: c673aec971]
2016-12-16 09:24:59 -06:00
Ben Sander 8288cbdae4 fix copyright
[ROCm/clr commit: b53ba931e8]
2016-12-15 14:42:52 -06:00
Aditya Atluri 1844a95003 fixed compilation issues
Change-Id: I96692538736e2e4f2da9dba9c8c29a164aec4c0d


[ROCm/clr commit: a1d1fcfdac]
2016-12-14 16:50:16 -06:00
Aditya Atluri 657739b19f added half2 support
Change-Id: I0f3b9b7037fed97e80ec99f5369c75a63f001aae


[ROCm/clr commit: c20a86d866]
2016-12-14 14:18:48 -06:00
Aditya Atluri a86ef4e577 added simple half math ops
Change-Id: I10b1d1023a9e5f2ba63f28c4a2bbe60ee49a8aee


[ROCm/clr commit: 01ed8e91e9]
2016-12-13 20:20:58 -06:00
Aditya Atluri b26857a631 disabled compiler flag hcc 4.0 for half support
Change-Id: I32175113f4c05d43310b3a05c2a14e12f6d48b09


[ROCm/clr commit: 26934a920c]
2016-12-13 20:06:56 -06:00
Ben Sander 1f638c1da6 Add USE_IPC to disable use of IPC APIs. Set to 0.
[ROCm/clr commit: 5eed20be12]
2016-12-13 15:07:04 -06:00
Aditya Atluri 9691299b0d added few type reinterpret cast device functions
1. __int_as_float
2. __hiloint2double

Change-Id: Id247c196887b24a12090f0521bf91e13afeec733


[ROCm/clr commit: 7a712aa76b]
2016-12-13 14:41:36 -06:00
Aditya Atluri c865d93792 added half math addition ISA support
Change-Id: I293b771f695b499b795d7e53f600c9e4fe2a2071


[ROCm/clr commit: 02eab122c5]
2016-12-13 09:18:34 -06:00
Aditya Atluri 4c61746162 Changed threadfences to match target parsing by hcc
Change-Id: I28fcabbaacd13495b707f263fd09afaead0665fa


[ROCm/clr commit: 812cf130b6]
2016-12-12 10:16:58 -06:00
Rahul Garg f45c6facf0 Fixed build error due to GetPCIBusId overloaded function
Change-Id: I626446f2c72c8143f08c95367bc1c528abeaf69d


[ROCm/clr commit: a6b2f9c3a0]
2016-12-08 14:35:58 +05:30
pensun 0d8957fb9a HIP IPC implementation on ROCr IPC APIs
Change-Id: I1ca9d520f5d0b1b56694211471b81eb7c6c23d16


[ROCm/clr commit: 7ac5f2e8c3]
2016-12-07 15:38:36 -06:00
Rahul Garg 89490a8065 hipDeviceGetPCIBusId int version changes for CUDA runtime API
Change-Id: I4d3b995f1d1ac83415ca84808a074e5c8cd72f3c


[ROCm/clr commit: d8fdd6c6fc]
2016-12-07 12:12:40 +05:30
pensun 87f69ab605 Fix issue of ihipModule_t double defined
Change-Id: I508677e595776fd573a2f224691116d01288dc78


[ROCm/clr commit: 8f2a1752c1]
2016-12-06 19:10:17 -06:00
pensun e885147485 change hipgetPCIID to take int as third parameter
Change-Id: I4429b36756a6d868a769abd783bf28a55147c0d0


[ROCm/clr commit: 8fcae3acc0]
2016-12-06 14:24:09 -06:00
pensun 707358d0b4 IPC prototyps and part of the implementation included
Change-Id: Id88c7f155d23ec63f57a6ef05098fba43f8af336


[ROCm/clr commit: 092924d660]
2016-12-06 14:24:09 -06:00
pensun aaecc3fe04 local changes for hipnccl
Change-Id: I05a1f0381ce2914a800f573342cc954eb5ff82d9


[ROCm/clr commit: 808e555247]
2016-12-06 14:22:02 -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
Rahul Garg 8a210f721d Build Error correction in hipDeviceGetPCIBusId
Change-Id: I50ff4d95b7a732924c7a991cba60400b1c93c0de


[ROCm/clr commit: a019f1ce39]
2016-12-06 17:09:21 +05:30
Rahul Garg 48e9aaf696 Changed hipDeviceGetPCIBusId to return Bus ID as string
Change-Id: I6d5aa7362084109d34bc015d948f8723b2a38ee9


[ROCm/clr commit: 0017419521]
2016-12-06 16:55:17 +05:30
Maneesh Gupta b9bde4a4be Remove redundant variable g_malloc_heap_size
Change-Id: Idaf47be70488f0deb3eab05a86d9c5a413d3fff7


[ROCm/clr commit: b8413a69c8]
2016-12-06 10:19:03 +05:30
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
Maneesh Gupta b01694f524 Don't share g_malloc_heap_size between libraries
Change-Id: Ic70bf83d4f865bc5c453941fdbc1814c77f0ad9d


[ROCm/clr commit: ac368cc60f]
2016-12-05 11:03:45 +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
Aditya Atluri 2c51f72e41 added half add and fma intrinsic
Change-Id: Ifa60c1a7065f524f069291bb00d987b11c836cc4


[ROCm/clr commit: e6df8cb28c]
2016-11-29 19:46:01 -06:00
pensun 946e9b4163 Change to use produce device name by default
Change-Id: Ie2cee2a2e94a08b5874a2f5abee5d1ab6c9fdf47


[ROCm/clr commit: 504fcaf786]
2016-11-29 11:34:06 -06:00
Rahul Garg 4421ff4fb6 Added support for hipMemGetAddressRange
Change-Id: I99a796a4eb765152cf15a12d6a86b58684d34f50


[ROCm/clr commit: bda0704213]
2016-11-29 22:04:09 +05:30
pensun b4b8de3cd7 Change the parameter type of hipDeviceGetPCIBusID to char*
Change-Id: Ia72f403126e95f65da53208fc246f45d1417381f


[ROCm/clr commit: 8e2980c7ef]
2016-11-28 10:47:18 -06:00
Ben Sander 68f1a627e0 Add more debug info
[ROCm/clr commit: a504df955e]
2016-11-26 08:56:02 -06:00
Ben Sander e2f024fc55 Improve docs in some places
Change-Id: If31e84fbf0c8595ca72edb842dce7ce47783579b


[ROCm/clr commit: 9db93a1b96]
2016-11-23 08:16:18 -06:00
Ben Sander 2e63b780f4 Improve debug capabilities.
Print TID mapping at init when HIP_TRACE_API=1.
Print base host/dev info from tracker during copy.

Change-Id: I84e26d7b801567e5a91baad36126fb590920ec87


[ROCm/clr commit: 111b57ddd0]
2016-11-23 08:16:18 -06:00
Rahul Garg cc61f4a720 Removed nested HIP calls from hip_device functions
Change-Id: I18785b0ee27e32fb8950982fa5c3a64d1ae6a9b8


[ROCm/clr commit: 8a2685e6cd]
2016-11-23 18:37:06 +05:30
Aditya Atluri 06969472b2 added fast math intrinsics to HIP
1. Added fast math intrinsics for single precision data types
2. Added test to check the intrinsics
3. Added HIP_PRECISE_MATH macro to enable precise math on fast math

Change-Id: Iadacbb6182c31252c5e3252854372d1b80dfd27b


[ROCm/clr commit: d9a3527769]
2016-11-22 15:26:00 -06:00
Aditya Atluri b8b1459a64 added fast math APIs
1. Added fast math apis for sin, cos, tan, sincos
2. Added test for trig math functions
3. Added logarithm fast math
4. Changed how hipGetDevice, hipDeviceGetCacheConfig emit errors

Change-Id: Ie6ab594ddd5853cbe85e39a2f6d3479a807fa323


[ROCm/clr commit: 1a85762f53]
2016-11-22 10:20:09 -06:00
Rahul Garg 5f24847ec0 Removed hsaKmtReleaseSystemProperties call
Change-Id: I7cb992cccf587c333f0ca0cb518409f3944bdb06


[ROCm/clr commit: afbd278804]
2016-11-22 06:15:35 +05:30