Ben Sander
e24627aa80
Cleanup hipEvent. (Intermediate checkpoint)
...
Support hipEventDisableSystemRelease flag.
Update test.
Remove stray printf
[ROCm/hip commit: 620eb30691 ]
2017-05-27 16:02:34 -05:00
Ben Sander
c88190d698
Updates so hip compiles on CUDA.
...
[ROCm/hip commit: be8d0ba644 ]
2017-05-27 15:55:07 -05:00
Ben Sander
715aeef97c
Add isDefaultStream() accessor.
...
Fix code that checked for stream==nullptr after stream had been
resolved to a "true stream".
[ROCm/hip commit: b251d72917 ]
2017-05-26 13:46:48 -05:00
Siu Chi Chan
ef1a8c2788
fix hip_fast_dsqrt* to call a double fp sqrt function
...
[ROCm/hip commit: 1dce01f9bb ]
2017-05-25 23:15:30 -04:00
Evgeny Mankov
bc9b970f82
[FIX] [HIPIFY] Add matchers for function return types.
...
https://github.com/GPUOpen-ProfessionalCompute-Tools/HIP/issues/73
Examples (https://github.com/thrust/thrust/blob/master/thrust/system/cuda/detail/trivial_copy.inl ):
template<typename System1,
typename System2>
cudaStream_t cuda_memcpy_stream(const thrust::cpp::execution_policy<System1> &,
const thrust::cuda::execution_policy<System2> &exec)
template<typename System1,
typename System2>
cudaMemcpyKind cuda_memcpy_kind(const thrust::cuda::execution_policy<System1> &,
const thrust::cpp::execution_policy<System2> &)
[ROCm/hip commit: c863215611 ]
2017-05-24 18:25:40 +03:00
Ben Sander
b7b7c7b7ac
Remove HIP_NUM_KERNELS_INFLIGHT. (redundant with HCC controls)
...
[ROCm/hip commit: 578d430bb3 ]
2017-05-24 01:03:28 -05:00
Ben Sander
5b9ce41633
Add hipHostMallocCoherent, hipHostMallocNonCoherent
...
Provide per-allocation control over coherent/non-coherent mem.
These overrid the default HIP_COHERENT_HOST_ALLOC setting.
[ROCm/hip commit: 75f691ec2f ]
2017-05-24 00:48:10 -05:00
Ben Sander
07865c3a02
Remove HIP_MAX_QUEUES (replaced with HCC_MAX_QUEUES)
...
[ROCm/hip commit: d0ef9d8462 ]
2017-05-23 23:48:01 -05:00
Ben Sander
247c34195f
Expand test to cover copy followed by event sync
...
[ROCm/hip commit: 236ce70e94 ]
2017-05-23 23:15:45 -05:00
Ben Sander
97bdbe6590
Use accelerator_scope for create_marker and create_blocking_marker.
...
As optimization when system-scope is not needed.
[ROCm/hip commit: 2b253a48b6 ]
2017-05-23 23:15:45 -05:00
Ben Sander
1e0046f737
Fix trace category for hipHostMalloc
...
[ROCm/hip commit: 7cfe07cff4 ]
2017-05-23 23:15:45 -05:00
Evgeny Mankov
0a43773e0d
[FIX] [HIPIFY] Matcher for new operator is missing.
...
https://github.com/GPUOpen-ProfessionalCompute-Tools/HIP/issues/80
Example from CUDA 8.0.44 sample (CUDASamples\0_Simple\matrixMulDrv\matrixMulDrv.cpp):
CUjit_option *jitOptions = new CUjit_option[jitNumOptions];
where CUjit_option is enum, should be:
hipJitOption *jitOptions = new hipJitOption[jitNumOptions];
[ROCm/hip commit: 3d973dc4da ]
2017-05-23 19:45:38 +03:00
Aditya Atluri
6e117234bf
fixed erfinv build error as it is implemented in hcc
...
Change-Id: I27a512147c53f658a63fdf3e90f5e9cfac09ada8
[ROCm/hip commit: 0559fc69e9 ]
2017-05-23 09:32:19 -05:00
pensun
b19e862dc4
fix GGL helper header file, reorder for C++17
...
Change-Id: I3d9ddfe670bf7e3e8e7bd85e52cc61f48c19c213
[ROCm/hip commit: 6d0f58b939 ]
2017-05-22 08:52:43 -05:00
Evgeny Mankov
cb7e073c42
[HIPIFY] [FIX] [HIPIFY] Matcher for pointer to enum var declaration is missing.
...
https://github.com/GPUOpen-ProfessionalCompute-Tools/HIP/issues/79
Example from CUDA 8.0.44 sample (CUDASamples\0_Simple\matrixMulDrv\matrixMulDrv.cpp):
CUjit_option *jitOptions = new CUjit_option[jitNumOptions];
where CUjit_option is enum, should be:
hipJitOption *jitOptions = new hipJitOption[jitNumOptions];
[TODO]
1. new CUjit_option -> new hipJitOption.
Matcher for new operator is missing:
https://github.com/GPUOpen-ProfessionalCompute-Tools/HIP/issues/79
2. Merge matchers cudaEnumDecl and cudaEnumVarPtr.
[ROCm/hip commit: b5a1d47e68 ]
2017-05-19 17:39:09 +03:00
Evgeny Mankov
042de3e175
[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/hip commit: 270f643c9c ]
2017-05-19 17:22:14 +03:00
Aditya Atluri
721cb0f7db
fixed vector type issues by reverting to old code, changed __half2 to map to vector types in llvm
...
Change-Id: I7317408c25e8c1a0c02a346042c9137e160c8bbd
[ROCm/hip commit: bdc08fcf10 ]
2017-05-18 10:51:07 -05:00
Ben Sander
324dfb870f
Return precise address for hipHostGetDevicePointer.
...
[ROCm/hip commit: 46030bb2d2 ]
2017-05-17 07:36:06 -05:00
Aditya Atluri
4dbebe0409
changed vector types to make sure it generate proper llvm vector types
...
Change-Id: I6c4616dae137dc4eac35e5827dc5b7f3251e0247
[ROCm/hip commit: 9dceccf136 ]
2017-05-16 21:35:40 -05:00
Ben Sander
bd7a374f20
Make hipMultiThreadStreams1 test a little harsher.
...
Fail faster if synchronization rules are violated.
Run vectorAddRevers to read last elements of array first - if the
vector add kernel starts before preceding copy finishes we
will read stale data and flag the error.
Increase default array sizes, so synchronization errors more easily
exposed.
[ROCm/hip commit: 2e1fec47ab ]
2017-05-16 19:04:25 -05:00
Ben Sander
f3dcff0906
Fix HIP_TRACE_API so kernel launch only printed when requested.
...
[ROCm/hip commit: 427f8472aa ]
2017-05-16 19:04:25 -05:00
Ben Sander
a55ce5bee4
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/hip commit: 27877f8854 ]
2017-05-16 19:04:25 -05:00
Ben Sander
cfe81dfbf4
Update tests README
...
[ROCm/hip commit: c67b828a5a ]
2017-05-16 19:04:25 -05:00
Ben Sander
3107e70ea2
Doc update - split hip_debugging.md into separate file.
...
[ROCm/hip commit: 704ba30b32 ]
2017-05-16 19:04:25 -05:00
Ben Sander
7d07d804d8
split debugging into separate .md file
...
[ROCm/hip commit: db097ab392 ]
2017-05-16 19:04:25 -05:00
Ben Sander
2cf05ad54b
Add HIP_TRACE_API=4. Only display memory allocation/free apis.
...
[ROCm/hip commit: 0edab14139 ]
2017-05-16 19:04:25 -05:00
emankov
dce8786e26
[HIPIFY] *.inl extension support for batch processing
...
[ROCm/hip commit: 30000ef130 ]
2017-05-16 19:52:39 +03:00
Evgeny Mankov
1a183a71a5
[HIPIFY] cudaMallocPitch -> hipMallocPitch
...
[ROCm/hip commit: 12d8c53c90 ]
2017-05-16 18:21:25 +03:00
Rahul Garg
c6a2d65d5e
Added hipMallocPitch on HIP/NVCC path
...
Change-Id: Ie3ba7d3f95acac23805efa919531043b350a3f21
[ROCm/hip commit: 1223612331 ]
2017-05-16 07:15:13 +05:30
Evgeny Mankov
6b76c979ce
[HIPIFY] CUDA Driver API: Primary Context Management support.
...
[ROCm/hip commit: a97cb6810c ]
2017-05-15 15:35:52 +03:00
Aditya Atluri
62e5cda4af
added gfx900 to hipDeviceProp_t
...
Change-Id: I49e7a32f218926fd55f1c94c5dc2366d6c8ac4ca
[ROCm/hip commit: a43149135e ]
2017-05-12 21:43:34 -05:00
Ben Sander
be423aa034
Remove old USE_ switches no longer needed.
...
[ROCm/hip commit: 0679831384 ]
2017-05-12 16:06:03 -05:00
Ben Sander
b1b71c4c75
Add hipEventDisableSystemRelease flag.
...
[ROCm/hip commit: b306095ac2 ]
2017-05-12 16:06:03 -05:00
Evgeny Mankov
3408458f9f
[HIPIFY] Fix string routines.
...
Some Clang tooling functions return std::string, some return StringRef. Assigning of returning std::string to StringRef variables leads to garbage in it.
DEBUG build is always affected.
[ROCm/hip commit: 25d470c380 ]
2017-05-11 21:50:36 +03:00
Ben Sander
ff72a701b7
hipHostMalloc allocation are mapped to all devices by default.
...
Support hipHostMallocPortable flag.
Default flags are hipHostMallocPortable | hipHostMallocMapped.
Also:
-refactor tests to move addCount and addCountReverse into HipTest
namespace.
-test multi-GPU host memory.
[ROCm/hip commit: c3ccaa01e5 ]
2017-05-10 17:34:36 -05:00
Ben Sander
5d558861c2
Fix hipStreamWaitEvent for single GPU.
...
[ROCm/hip commit: e0c3ea15b2 ]
2017-05-10 13:23:49 -05:00
Aditya Atluri
bdce32238f
added guard against hip_runtime.h so that non-hcc compilers can use it
...
Change-Id: I3d68deda9ce8a5956e21e15a69e549d6c21e3e39
[ROCm/hip commit: a38e36ec2f ]
2017-05-09 10:14:16 -05:00
Ben Sander
ef98415d0e
Fix some typos, add additional guidance for -BSymbolic
...
[ROCm/hip commit: 687809104b ]
2017-05-05 17:29:04 -05:00
Ben Sander
639d152ff8
Refactor hipHostRegister test.
...
Run all tests in one command.
Run 128 offsets.
[ROCm/hip commit: 6437f5d2b2 ]
2017-05-05 17:29:04 -05:00
Ben Sander
2e2c773643
Update streamEventTEst.
...
- add checks for events across devices.
- refactor test to make sure it runs long enough to sensitive sync
techniques.
- add tests for DeviceSync, streamWaitEvent.
[ROCm/hip commit: 2d0f509de5 ]
2017-05-05 17:29:04 -05:00
wsttiger
3bf30acbd7
Improve hipStreamWaitEvent test.
...
- use addOne kernel, use local initializer rather than init_array.
- use addOneReverse test to add from back of array. Test alternate fwd and backward to stress dependency logic.
- check device-side dependencies.
[ROCm/hip commit: 2a253680da ]
2017-05-05 17:29:04 -05:00
Evgeny Mankov
dfbc039ebb
[HIPIFY] LLVM 3.9 support
...
3.8 and 3.9 are both supported. 3.8 is stable, 3.9 needs more testing.
[ROCm/hip commit: 05be936fd6 ]
2017-05-05 21:28:02 +03:00
Rahul Garg
0557f54200
hipMemcpy2DAsync for HIP/NVCC
...
Change-Id: I46f0057fef49bdaaac41c1df80c3e27432b8f376
[ROCm/hip commit: 1cb51d614e ]
2017-05-04 06:47:55 +05:30
Evgeny Mankov
869dfcd01f
[HIPIFY] CUDA RT memcpy functions update.
...
cudaMemcpyFromSymbol -> hipMemcpyFromSymbol
cudaMemcpyFromSymbolAsync -> hipMemcpyFromSymbolAsync
cudaMemcpy2DAsync -> hipMemcpy2DAsync
[ROCm/hip commit: 9b65358c68 ]
2017-05-03 23:05:44 +03:00
Evgeny Mankov
4841eb2bff
[HIPIFY] Blas update: add a few functions, supported by HIP.
...
cublasDaxpy -> hipblasDaxpy
cublasDgemv -> hipblasDgemv
cublasDger -> hipblasDger
cublasDgemm -> hipblasDgemm
cublasDgemmBatched -> hipblasDgemmBatched
cublasGetStream -> hipblasGetStream
cublasSetStream -> hipblasSetStream
cublasDaxpy -> hipblasDaxpy
[ROCm/hip commit: 1269897606 ]
2017-05-03 22:45:56 +03:00
Evgeny Mankov
115709ba28
[HIPIFY] HIPIFY and HIP sync with CUDA Driver API data types.
...
+ Update CUDA_Driver_API_functions_supported_by_HIP.md.
+ Final update of HIPIFY with CUDA driver data types.
[TODO] Syncing HIPIFY and HIP by CUDA Driver API functions.
[ROCm/hip commit: 70c94d7b83 ]
2017-05-03 21:59:48 +03:00
Rahul Garg
340cd36e8d
Added support for hipMemcpy2DAsync in HIP/HCC
...
Change-Id: Ia4a8306f2dc1e33a81a7195ec29aef652fcccc4b
[ROCm/hip commit: ec27c695c4 ]
2017-05-03 22:29:12 +05:30
Evgeny Mankov
d439bbd746
[HIPIFY] Rename enumConstantDecl -> enumDecl
...
Reason: not to mix up with clang's enumConstantDecl, used for enum DeclRefExpr (enum constant).
[ROCm/hip commit: c7958cbb8b ]
2017-04-28 21:59:33 +03:00
Evgeny Mankov
a83172c49b
* [HIPIFY] [FIX] Replacement error: enum cudaMemcpyKind kind -> hipMemcpyKindyKind kind
...
https://github.com/GPUOpen-ProfessionalCompute-Tools/HIP/issues/72
[Solution] [Workaround]
Offset calculation for enum VarDecl as param decl, declared with enum type specifier.
[Result]
enum cudaMemcpyKind kind -> enum hipMemcpyKind kind
[ToDo]
Test on terminal qualifiers (const, etc).
[ROCm/hip commit: eddd021996 ]
2017-04-28 21:45:36 +03:00
Evgeny Mankov
4fe32b302f
[HIPIFY] [FIX] replacement error: cudaError_t -> hipError_t_t
...
https://github.com/GPUOpen-ProfessionalCompute-Tools/HIP/issues/71
[Solution]
getUnqualifiedType for enumConstantDecl's type is added, except ordinary enum declarations (w/o typedef).
[ToDo]
Find more appropriate way of distinguishing redefined enum declarations and ordinary ones.
[ROCm/hip commit: 3d88932c8d ]
2017-04-28 21:03:03 +03:00