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

364 Коммитов

Автор SHA1 Сообщение Дата
Maneesh Gupta 7a59103cea Disable hipMemPtrGetInfo test on nvcc path
Change-Id: I864e571314abfe5ae614e6792c86d7b457c920ee
2017-03-08 16:16:08 +05:30
Aditya Atluri 1546732604 Added new API, hipMemPtrGetInfo
1. This API returns memory allocation size of pointer
2. Added test to check its functionality

Change-Id: I87976d817b5a6ca5530336c09e7cb0420601cb2c
2017-03-07 13:46:29 -06:00
Maneesh Gupta a0b51c69a7 Disable some tests which are broken on nvcc path
Change-Id: I6f8df7687ff1798dc17f6c9b8a7f4cd029ce45d8
2017-02-27 13:19:06 +05:30
Maneesh Gupta f1c3dd0dff Fix compilation of some broken tests on nvcc path
Change-Id: I92406af00c2de09d728e9b7f661c1f3873470560
2017-02-27 13:17:51 +05:30
Maneesh Gupta 5f689cb986 directed tests no longer run in an subdirectory
- target "make test" will no longer build and run tests. It will only run the tests.
- added new target "make check" which will build and run the tests.
- target "make check" will build tests serially. Use -j<N> to build tests in parallel.

Change-Id: I24c7932bf9798364a59f44631fbabcf9a5da5e17
2017-02-27 13:14:08 +05:30
Aditya Atluri 2e245ae58c Added initial support for hipMemcpyFromSymbol. But not working!
Change-Id: I48d8c7de4ec9f85c6c942be995fb488a3931f5d7
2017-02-23 11:29:06 -06:00
Aditya Atluri 639fd4dd5e added runtime api hipMemcpyFromSymbolAsync
Change-Id: Ibaf925faf0ba464dd0ed6c5ea74c224c2ce38889
2017-02-22 19:16:35 -06:00
Aditya Atluri d52c5867f2 Enable symbol tests
Change-Id: I6bd036bf00c8051c8ff728ee60562c4ebd222160
2017-02-22 13:42:03 -06:00
Siu Chi Chan 806deeb476 Squashed commit of the following:
commit 931d3de6c1c903cfd47842bc5026a9294ac492b4
Author: Siu Chi Chan <siuchi.chan@amd.com>
Date:   Mon Feb 13 10:54:06 2017 -0500

    only force to libstdc++ if the g++ is older than version 5 since hcc already defaults to libstdc++ with newer g++

commit 1ef8d71aa788de7b9eead4906fe56186f06d7d3f
Author: scchan <siuchi.chan@amd.com>
Date:   Sun Feb 12 14:44:11 2017 -0500

    remove hardcoded -lc++ in tests

commit 5d99ef338eb3a66523cc9ddd139e86c6fd707b9c
Author: scchan <siuchi.chan@amd.com>
Date:   Sun Feb 12 14:35:46 2017 -0500

    force include libstdc++ headers and stdc++ only if g++ version < 5 since hcc uses libstdc++ by default if g++ > 5 is present

commit a2bc21b24d100feefe91cd3cb2271238bda0738a
Author: scchan <siuchi.chan@amd.com>
Date:   Fri Feb 10 04:36:27 2017 -0500

    use hcc-config to generate compiler and linker flags

Change-Id: I13a79629c0adfd75439a47d0488ff4fd619c55ba
(cherry picked from commit 866e744e40cf1378af8a679b54959bf5226c340f)
2017-02-16 13:12:32 +05:30
scchan ad9d9b25c1 calls isfinite,isinf,isnan from the std namespace on the host
Change-Id: Ica2370075b89713eecfd96102e2f4e0ab9961ce4
2017-02-14 11:52:09 -05:00
Aditya Atluri 378eb3fa55 v2: Fixed hipModule memory management
1. Changed test to assert for same hipFunction values
2. Added better memory management for hipModule

Change-Id: I10d7aef13c215a2211e262f3c79017f26a17d9a7
2017-02-10 13:32:13 -06:00
Aditya Atluri 28871ddd5b fixed shared memory usage implementation for hipDynamicShared2.cpp test
Change-Id: I34c72cb905f78de0f37e94174382e8be5c532028
2017-02-09 18:17:42 -06:00
Aditya Atluri 2a064cfcc5 added new dynamic shared mem test
Change-Id: Ic2a12fc9bc5b67e85f1e6c6008f10c7c66388377
2017-02-09 18:07:48 -06:00
Aditya Atluri 6fd3daed30 fixed hipFunction memory management
Change-Id: I7ebb323419bcd220ebd6466a8eb38e7bfdb1520a
2017-02-09 17:22:55 -06:00
Maneesh Gupta 5754d641e0 Disable failing directed tests
- hipTestDeviceSymbol
- hipTestConstant
- hipTestMallocKernel

Change-Id: Ibfe9fc0b8a59882f1de64b42e18777a7bd56ee97
2017-02-09 14:48:22 +05:30
Aditya Atluri 9a1989193a added architecture specific macros
1. Added __HIP_ARCH_GFXNUM__
2. Usage, -D__HIP_ARCH_GFX803__=1

Change-Id: I68b3a85d62cfab3a45d2b7a70cb3518ab2565236
2017-02-08 19:45:32 -06:00
Aditya Atluri 55d92833fb fixed hipcc for new compiler flags
Change-Id: I49ec059be20ff26b7482c84d91ab7a43826c6a8d
2017-02-08 14:06:01 -06:00
Aditya Atluri 27d2fc99ca include arch specific ir on fallback path
Change-Id: Ib04996aae2c21eb73ef2a9f6305915e0caccd704
2017-02-08 12:19:06 -06:00
Aditya Atluri 05c8aa1cf5 Fixed HIP for C runtime
1. fixed constant memory test
2. added runtime gcc/g++ test
3. added fix for runtime with gcc/g++

Change-Id: Ie14dad6633411b188bdeea044e140b6d5beabe16
2017-02-07 13:15:36 -06:00
Maneesh Gupta 939909e96c Disable broken test: hipC
Change-Id: I061aa125bbdc9f14bc870266ab0735593c861903
2017-02-06 13:00:50 +05:30
Aditya Atluri 5e3d63c0a3 changed __global__ attribute
1. Moved around tests and added them to HIT

Change-Id: I5d75280c42a5af852670ebabc7305ee56721ec7b
2017-02-03 10:53:36 -06:00
Aditya Atluri 2790e9a448 fixed symbol memcpy issue
Change-Id: I89d7401be51d194bcbf771020ba66e3d3b6a18f8
2017-02-01 17:54:59 -06:00
Aditya Atluri 60013396f6 removed host math functions from math_functions.h
Change-Id: I90d8784e2d6b58c6fade9f0fa12c0db3ee417d3e
2017-01-27 17:38:43 -06:00
Aditya Atluri 66dc2d42db changed device code tests to work not to work as one
Change-Id: I0eec1eab19dda3b703bc3a0d778a6bbb2802a412
2017-01-27 09:20:14 -06:00
Aditya Atluri b134a1a640 added more test coverage for vector data types
Change-Id: I9f57a8b597bd2ee4b265eadfd0859531497a6ada
2017-01-20 13:52:02 -06:00
Aditya Atluri f537d96633 fixed compilation issues for vector types and math functions
1. Added math_functions.h to hip_runtime.h
2. Changed operator overloading classifier static to static inline
3. Added vector types test for gpu
4. Seperated __host__ and __device__ for math functions in headers

Change-Id: I499862fad5d7b10da686da9011d7ecefe523f8e2
2017-01-20 09:49:11 -06:00
Aditya Atluri ea382e15f8 fixed compilation issues
1. Fixed compilation issues for tests
2. Added missing intrinsics + math functions
3. Disabled some device functions as they are causing linking error with HCC

Change-Id: I79d52c4c7a539cc8ef40580247ad97ffcb975f09
2017-01-18 11:53:47 -06:00
Aditya Atluri b723169ee9 Moved device code to mimic cuda header behavior
1. All fp32, fp64 math device/host functions should be in math_functions.h/.cpp
2. All fp32, fp64 fast math intrinsics for device/host functions should be in device_functions.h/.cpp
3. All the device code implementations should be in device_util.h/.cpp
4. Hence, made changes appropriately by moving code and creating new header files
5. Added math_functions.cpp/.h
6. Changed #ifndef signature to make sure no conflicts between headers with same names in hip/hip_runtime.h and hip/hcc_detail/hip_runtime.h
7. Changed tests to fit the code changes, making them to include appropriate headers
8. Added math_functions.cpp to CMakeLists.txt
9. Some of the tests are still broken, mostly host math functions will fix them in next commit
10. TODO: FIX compilation issues for host math functions

Change-Id: I7a17637d7e294a7d224ffba932c1a08668febd26
2017-01-17 14:57:51 -06:00
Aditya Atluri 13ce9ece77 enabled integer intrinsics tests
Change-Id: I5d28d556f228240eda2fc0098121ed3b29b041e7
2017-01-17 09:59:08 -06:00
Aditya Atluri c0fd0921cb fixed broken tests and device code for integer intrinsics
1. Fixed build issues with new Integer intrinsics
2. Changed tests to work exactly as CUDA code
3. Still some integer intrinsics need to be supported

Change-Id: Ie6f4171259cf4da517436895d4f6f01e01f59b11
2017-01-17 09:00:09 -06:00
Aditya Atluri 6f2cfddc67 Added type conversion intrinsics
1. Added all type conversion intrinsics
2. NO TESTS have been added. (Will add in next commit)
3. Sanatized code in hip_runtime.h
4. Added passed() to hipTestHalf to make it pass on HIT

Change-Id: I0987963c802fc7ff4d7e07d7b88d86da35da53c9
2017-01-16 12:10:05 -06:00
Aditya Atluri bf45105c7c added half2 log, log10, exp, exp10 math functions
1. Enabled tests for log, log10, exp, exp10 half2
2. h2rint is still disabled.

Change-Id: I01f6002f6992259919893c524c526db5ee09473a
2017-01-13 13:26:10 -06:00
Aditya Atluri 0e576295b4 added half2 math operations
1. They use SDWA + LLVM IR
2. Added these functions to test
3. Need to do exp, exp10, log, log10, rint

Change-Id: I06176acc6cb8bb054495310531777406a41b54e4
2017-01-13 12:27:11 -06:00
Aditya Atluri 8c978c210c added math functions for half
1. Added math functions for half precision
2. HRCP is not available due to device code linking errors, will be enabled once it is fixed
3. Added math functions to half test file

Change-Id: Ie317ce70ef518a4fc3f27142143d01e0327f5df3
2017-01-13 12:05:29 -06:00
Aditya Atluri 3f52f76194 added half2 cmp and conv, data movement device functions
1. Added half2 comparision functions
2. Added conversion and data movement half apis

Change-Id: Ia33c0e957d9deb1f2b7a8fde8e22168f4d41b88b
2017-01-13 10:56:07 -06:00
Aditya Atluri 2dcd7600dc added comparision device functions for fp16
1. Added comparision device functions
2. Added test to check correct isa getting generated

Change-Id: I16732f5a1438bdce145f7bfcecd28198e3cc4b79
2017-01-12 14:52:14 -06:00
Aditya Atluri 5ef8ef3bd7 added packed math fp16 native device functions
1. Added SDWA implementation inside IR file
2. Added device functions to header + used them in test

Change-Id: Ib4e059a58eee201cc82438689e3e9bc5f9d26653
2017-01-12 14:10:51 -06:00
Aditya Atluri d180fdaae0 Started adding native half math library support
1. Removed HIP_EXPERIMENTAL env variable so that device code will be accessed from LLVM IR
2. Removed soft support from headers and moved to hip_fp16.cpp
3. Added LLVM IR + inline asm to hip_ir.ll
4. Added test for fp16
5. Added barriers for hcc 3.5 and hcc 4.0 for half support
a. Which means, hcc 4.0 can parse __fp16 but hcc 3.5 cant
b. HCC 4.0 code is implemented now, hcc 3.5 will be added later

Change-Id: Ic37859b2688ebb02e168bab643d1882bf4727952
2017-01-12 11:30:20 -06:00
Aditya Atluri 57294ce461 added test for vector data types
Change-Id: I0b6624886e474601cb1ef003c5f10adf399a21c9
2017-01-11 18:02:30 -06:00
Aditya Atluri 39910029a6 Added proper device data types
Change-Id: I42029635ff68c3c13a764a3eda6447e6c77878c6
2017-01-11 15:06:25 -06:00
Ben Sander a15d236de3 Fix delete[] 2017-01-09 21:03:11 -06:00
Rahul Garg 263a9614ff Mapped hipDevice_t to int
Change-Id: I6cfa56c42b7cd04aa0e0bce510c0d72d34ea211a
2016-12-17 16:53:03 +05:30
Rahul Garg 9aebbe00de Simple test case for hipDeviceGetPCIBusId
Change-Id: I0fb6d1bef4739a5b6280928f7b349d95c1656431
2016-12-06 17:31:54 +05:30
Maneesh Gupta 1e9dc5b521 Fix some broken directed tests
Change-Id: I40f2661a74951f8d91824df8fd9ef0cc2312d183
2016-12-01 12:47:37 +05:30
Aditya Atluri 7131d0b961 added support for rcp for float and double
Change-Id: Ibeba3a9f64494fc0a176bcb4a854fb2f56567b55
2016-11-23 20:01:18 -06:00
Aditya Atluri 30674382a4 added fma for double and float
1. Added fma intrinsic support for double and float
2. Added test for fma

Change-Id: I909fdbec34a3d12c03ba6eff3a39376a7128ee43
2016-11-23 18:22:05 -06:00
Aditya Atluri 043da795f6 Added fast math flag
1. Use -DHIP_FAST_MATH to make precise math functions compiled to fast math
2. Added double fast math functions for sqrt
3. Changed hipcc to parse -use_fast_math (not working)
4. Added passed tag to hipFloatMath test

Change-Id: I72884b2436b4efe61e9a9297346c1358fee38a2d
2016-11-23 11:19:15 -06:00
Aditya Atluri f843928ddd 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
2016-11-22 15:26:00 -06:00
Aditya Atluri 94d2115d6d 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
2016-11-22 10:20:09 -06:00
Aditya Atluri d6ad91ffa4 fixed texture header on nvcc
Change-Id: Ibe19f94be5edf972b6b51dea263e1088b6c60c1d
2016-11-21 13:53:28 -06:00