コミットグラフ

1676 コミット

作成者 SHA1 メッセージ 日付
emankov ccc4cd1a3e [HIPIFY] annotation 2017-06-02 16:33:48 +03:00
emankov 4d035caedf [HIPIFY] rename legacy hipify perl script and its usage to hipify-perl 2017-06-02 16:30:43 +03:00
Evgeny Mankov 4a5484c616 [HIPIFY] All CUDA 8.0.44 API functions update
(for both Driver and Runtime APIs)

1) P2P
cuDeviceGetP2PAttribute   cudaDeviceGetP2PAttribute

2) Memory Mngmnt
cuMemPrefetchAsync        cudaMemPrefetchAsync
cuMemAdvise               cudaMemAdvise
cuMemRangeGetAttribute    cudaMemRangeGetAttribute
cuMemRangeGetAttributes   cudaMemRangeGetAttributes

3) Streams (Driver API only, no analogues in Runtime API)
cuStreamWaitValue32
cuStreamWaitValue32
cuStreamWriteValue32

4) Texture Reference Mngmnt (Driver API only, no analogues in Runtime API)
cuTexRefSetBorderColor
cuTexRefGetBorderColor
2017-06-01 21:08:33 +03:00
Siu Chi Chan 741eb844fe fix atomicCAS:remove load for the return value after CAS 2017-05-31 15:20:19 -04:00
Evgeny Mankov 6e99e388ea [HIP] [HIPIFY] CUDA Driver API 8.0.44 JIT options support. 2017-05-31 18:55:29 +03:00
Maneesh Gupta 502a74fcd6 Fix hipMemoryAllocate test for single GPU
Change-Id: If121c18ab490ba125dc689ffc08a8839fd280c38
2017-05-31 10:16:57 +05:30
Maneesh Gupta 5cdd1b2bf5 Disable rcbrtf, scalblnf, scalbnf in single precision device test
Change-Id: I8a250a64a0cb05132d022a11d9766ced9cdf11a7
2017-05-31 10:16:19 +05:30
Maneesh Gupta 4919863d3e Disable rcbrt, scalbln and scalbn double precision device test
Change-Id: I46bd895701c46d3592b553090cafba99e41a2e2d
2017-05-31 10:15:41 +05:30
Sandeep Kumar 0154c97ddd Add readme for inline asm and unroll cookbook samples
Change-Id: I71b7a5652c3dad181c5df60ab0dd1b81d79f1bfb
2017-05-31 09:25:50 +05:30
Sandeep Kumar 830f2b100d Add inline asm hip directed tests for v_add and v_mac
Change-Id: Ie5ace2e42d5da89b16e040537df2bb13d3883c6d
2017-05-31 09:25:40 +05:30
Sandeep Kumar e4f0b28bb9 Add unroll and inline asm cookbook samples
Change-Id: Ie5a0fbb01b7fca82959090d89299533d49e092f1
2017-05-31 09:25:35 +05:30
Sandeep Kumar dfcba01db6 Print msg for single gpu
Change-Id: I2d23c73542add8973990ba96592016726994422e
2017-05-31 09:25:17 +05:30
Ben Sander cb60763737 Set event->_stream on hipHccModuleLaunchKernel path if start/stop used
Ensure _stream is always non-null in recorded events.
Fixes isDefaultStream fault.
2017-05-30 21:55:46 -05:00
Evgeny Mankov 063539308e [HIPIFY] Add the rest CUDA Runtime API 8.0.44 Data structures.
+ sync with corresponding CUDA Driver API Data structures.

P.S.
There is no any new changes in CUDA Runtime API 8.0.61 Data structures since 8.0.44.
2017-05-30 19:45:59 +03:00
Evgeny Mankov 1cc5f42e34 [HIPIFY] Add the rest CUDA Driver API 8.0.44 Data structures.
+ Memory advise values
+ Memory Range Attributes
+ P2P Attributes

P.S.
There is no any new changes in CUDA Driver API 8.0.61 Data structures since 8.0.44.
2017-05-30 18:29:14 +03:00
Evgeny Mankov 3e99bc23e7 [HIPIFY] Add more CUDA Driver API 8.0.44 Data structures. 2017-05-30 17:58:13 +03:00
Maneesh Gupta 4ff01c971f Disable normcdfinvf on __host__
Change-Id: If7bfc9826a09eb9b7675ea2a417b9418759b7912
2017-05-30 15:45:22 +05:30
Ben Sander ec7102f461 Add event controls for release fences.
Env var : HIP_EVENT_SYS_RELEASE
Event allocation flags : hipEventReleaseToDevice, hipEventReleaseToSystem
   (remove hipEventDisableSystemRelease)

Update test for new functionality.
2017-05-27 16:02:34 -05:00
Ben Sander 620eb30691 Cleanup hipEvent. (Intermediate checkpoint)
Support hipEventDisableSystemRelease flag.
Update test.
Remove stray printf
2017-05-27 16:02:34 -05:00
Ben Sander be8d0ba644 Updates so hip compiles on CUDA. 2017-05-27 15:55:07 -05:00
Ben Sander b251d72917 Add isDefaultStream() accessor.
Fix code that checked for stream==nullptr after stream had been
resolved to a "true stream".
2017-05-26 13:46:48 -05:00
Siu Chi Chan 1dce01f9bb fix hip_fast_dsqrt* to call a double fp sqrt function 2017-05-25 23:15:30 -04:00
Evgeny Mankov c863215611 [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> &)
2017-05-24 18:25:40 +03:00
Ben Sander 578d430bb3 Remove HIP_NUM_KERNELS_INFLIGHT. (redundant with HCC controls) 2017-05-24 01:03:28 -05:00
Ben Sander 75f691ec2f Add hipHostMallocCoherent, hipHostMallocNonCoherent
Provide per-allocation control over coherent/non-coherent mem.
These overrid the default HIP_COHERENT_HOST_ALLOC setting.
2017-05-24 00:48:10 -05:00
Ben Sander d0ef9d8462 Remove HIP_MAX_QUEUES (replaced with HCC_MAX_QUEUES) 2017-05-23 23:48:01 -05:00
Ben Sander 236ce70e94 Expand test to cover copy followed by event sync 2017-05-23 23:15:45 -05:00
Ben Sander 2b253a48b6 Use accelerator_scope for create_marker and create_blocking_marker.
As optimization when system-scope is not needed.
2017-05-23 23:15:45 -05:00
Ben Sander 7cfe07cff4 Fix trace category for hipHostMalloc 2017-05-23 23:15:45 -05:00
Evgeny Mankov 3d973dc4da [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];
2017-05-23 19:45:38 +03:00
Aditya Atluri 0559fc69e9 fixed erfinv build error as it is implemented in hcc
Change-Id: I27a512147c53f658a63fdf3e90f5e9cfac09ada8
2017-05-23 09:32:19 -05:00
pensun 6d0f58b939 fix GGL helper header file, reorder for C++17
Change-Id: I3d9ddfe670bf7e3e8e7bd85e52cc61f48c19c213
2017-05-22 08:52:43 -05:00
Evgeny Mankov b5a1d47e68 [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.
2017-05-19 17:39:09 +03:00
Evgeny Mankov 270f643c9c [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.
2017-05-19 17:22:14 +03:00
Aditya Atluri bdc08fcf10 fixed vector type issues by reverting to old code, changed __half2 to map to vector types in llvm
Change-Id: I7317408c25e8c1a0c02a346042c9137e160c8bbd
2017-05-18 10:51:07 -05:00
Ben Sander 46030bb2d2 Return precise address for hipHostGetDevicePointer. 2017-05-17 07:36:06 -05:00
Aditya Atluri 9dceccf136 changed vector types to make sure it generate proper llvm vector types
Change-Id: I6c4616dae137dc4eac35e5827dc5b7f3251e0247
2017-05-16 21:35:40 -05:00
Ben Sander 2e1fec47ab 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.
2017-05-16 19:04:25 -05:00
Ben Sander 427f8472aa Fix HIP_TRACE_API so kernel launch only printed when requested. 2017-05-16 19:04:25 -05:00
Ben Sander 27877f8854 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.
2017-05-16 19:04:25 -05:00
Ben Sander c67b828a5a Update tests README 2017-05-16 19:04:25 -05:00
Ben Sander 704ba30b32 Doc update - split hip_debugging.md into separate file. 2017-05-16 19:04:25 -05:00
Ben Sander db097ab392 split debugging into separate .md file 2017-05-16 19:04:25 -05:00
Ben Sander 0edab14139 Add HIP_TRACE_API=4. Only display memory allocation/free apis. 2017-05-16 19:04:25 -05:00
emankov 30000ef130 [HIPIFY] *.inl extension support for batch processing 2017-05-16 19:52:39 +03:00
Evgeny Mankov 12d8c53c90 [HIPIFY] cudaMallocPitch -> hipMallocPitch 2017-05-16 18:21:25 +03:00
Rahul Garg 1223612331 Added hipMallocPitch on HIP/NVCC path
Change-Id: Ie3ba7d3f95acac23805efa919531043b350a3f21
2017-05-16 07:15:13 +05:30
Evgeny Mankov a97cb6810c [HIPIFY] CUDA Driver API: Primary Context Management support. 2017-05-15 15:35:52 +03:00
Aditya Atluri a43149135e added gfx900 to hipDeviceProp_t
Change-Id: I49e7a32f218926fd55f1c94c5dc2366d6c8ac4ca
2017-05-12 21:43:34 -05:00
Ben Sander 0679831384 Remove old USE_ switches no longer needed. 2017-05-12 16:06:03 -05:00