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

1619 Коммитов

Автор SHA1 Сообщение Дата
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