Commit Graph
64512 Commits
Author SHA1 Message Date
Alex Voicu abf92dd6e7 Change memset kernel to use memcpy instead of placement new. Simplify indexers.
[ROCm/clr commit: d5c8de3f41]
2017-11-28 19:45:47 +00:00
Alex Voicu d5c8de3f41 Change memset kernel to use memcpy instead of placement new. Simplify indexers. 2017-11-28 19:45:47 +00:00
Alex Voicu 9668003fe3 Change memset kernel to use memcpy instead of placement new. Simplify indexers.
[ROCm/hip commit: 6e4ca3fbb4]
2017-11-28 19:45:47 +00:00
Alex Voicu 6e4ca3fbb4 Change memset kernel to use memcpy instead of placement new. Simplify indexers. 2017-11-28 19:45:47 +00:00
Alex Voicu 914acbe88f Re-sync with upstream and re-factor platform global management for texture references.
[ROCm/clr commit: 6a0efb7ed2]
2017-11-28 19:15:29 +00:00
Alex Voicu 6a0efb7ed2 Re-sync with upstream and re-factor platform global management for texture references. 2017-11-28 19:15:29 +00:00
Alex Voicu aef26d3477 Re-sync with upstream and re-factor platform global management for texture references.
[ROCm/hip commit: 02c2bfc7ef]
2017-11-28 19:15:29 +00:00
Alex Voicu 02c2bfc7ef Re-sync with upstream and re-factor platform global management for texture references. 2017-11-28 19:15:29 +00:00
Alex Voicu 579a3187da Merge remote-tracking branch 'origin/master' into feature_use_module_based_dispatch_instead_of_pfe
# Conflicts:
#	src/hip_module.cpp


[ROCm/clr commit: d37a5a6008]
2017-11-28 17:29:11 +00:00
Alex Voicu d37a5a6008 Merge remote-tracking branch 'origin/master' into feature_use_module_based_dispatch_instead_of_pfe
# Conflicts:
#	src/hip_module.cpp
2017-11-28 17:29:11 +00:00
Alex Voicu 11f7d895f4 Merge remote-tracking branch 'origin/master' into feature_use_module_based_dispatch_instead_of_pfe
# Conflicts:
#	src/hip_module.cpp


[ROCm/hip commit: dc67ca3feb]
2017-11-28 17:29:11 +00:00
Alex Voicu dc67ca3feb Merge remote-tracking branch 'origin/master' into feature_use_module_based_dispatch_instead_of_pfe
# Conflicts:
#	src/hip_module.cpp
2017-11-28 17:29:11 +00:00
Maneesh Gupta 621cc5e5ca Fix float2int rounding functions
Change-Id: I67943859a6344c5eec0eaa23418c9b802ef72468


[ROCm/clr commit: cc418da654]
2017-11-28 17:23:43 +00:00
Maneesh Gupta cc418da654 Fix float2int rounding functions
Change-Id: I67943859a6344c5eec0eaa23418c9b802ef72468
2017-11-28 17:23:43 +00:00
Maneesh Gupta 3b25286003 Fix float2int rounding functions
Change-Id: I67943859a6344c5eec0eaa23418c9b802ef72468


[ROCm/hip commit: 265c3b224e]
2017-11-28 17:23:43 +00:00
Maneesh Gupta 265c3b224e Fix float2int rounding functions
Change-Id: I67943859a6344c5eec0eaa23418c9b802ef72468
2017-11-28 17:23:43 +00:00
Alex Voicu a59daf78d6 This actually (tries) to do the right thing all the way, by using memcpy for bitcasting, and not rely on undefined behaviour of a different flavour as a substitute for the original undefined behaviour. Note that the compiler will (should) optimise down to the same emitted code, since this is a pattern it understands.
[ROCm/clr commit: bb35299560]
2017-11-28 17:23:06 +00:00
Alex Voicu bb35299560 This actually (tries) to do the right thing all the way, by using memcpy for bitcasting, and not rely on undefined behaviour of a different flavour as a substitute for the original undefined behaviour. Note that the compiler will (should) optimise down to the same emitted code, since this is a pattern it understands. 2017-11-28 17:23:06 +00:00
Alex Voicu c2a5825c3c This actually (tries) to do the right thing all the way, by using memcpy for bitcasting, and not rely on undefined behaviour of a different flavour as a substitute for the original undefined behaviour. Note that the compiler will (should) optimise down to the same emitted code, since this is a pattern it understands.
[ROCm/hip commit: a6ccaf3d57]
2017-11-28 17:23:06 +00:00
Alex Voicu a6ccaf3d57 This actually (tries) to do the right thing all the way, by using memcpy for bitcasting, and not rely on undefined behaviour of a different flavour as a substitute for the original undefined behaviour. Note that the compiler will (should) optimise down to the same emitted code, since this is a pattern it understands. 2017-11-28 17:23:06 +00:00
Alex Voicu 0de6e0be2b This fixes some outright quaint choices made when implementing HIP's bitwise conversion functions, by using simple reinterpret_casts, as is idiomatic. These functions are supposed to be re-entrant, correct and efficient. Sadly, they were neither: they hid a massive race condition against a value stored in global memory, which means that they were also unreasonably slow if they ever managed to be correct, and relied on union based type punning which is in a grey area of the standard. It is difficult to ascertain what may have been the reason for coming up with this quirky solution.
[ROCm/clr commit: 4b7cb0624e]
2017-11-28 17:23:06 +00:00
Alex Voicu 4b7cb0624e This fixes some outright quaint choices made when implementing HIP's bitwise conversion functions, by using simple reinterpret_casts, as is idiomatic. These functions are supposed to be re-entrant, correct and efficient. Sadly, they were neither: they hid a massive race condition against a value stored in global memory, which means that they were also unreasonably slow if they ever managed to be correct, and relied on union based type punning which is in a grey area of the standard. It is difficult to ascertain what may have been the reason for coming up with this quirky solution. 2017-11-28 17:23:06 +00:00
Alex Voicu 23cc46786a This fixes some outright quaint choices made when implementing HIP's bitwise conversion functions, by using simple reinterpret_casts, as is idiomatic. These functions are supposed to be re-entrant, correct and efficient. Sadly, they were neither: they hid a massive race condition against a value stored in global memory, which means that they were also unreasonably slow if they ever managed to be correct, and relied on union based type punning which is in a grey area of the standard. It is difficult to ascertain what may have been the reason for coming up with this quirky solution.
[ROCm/hip commit: a401ce6e5d]
2017-11-28 17:23:06 +00:00
Alex Voicu a401ce6e5d This fixes some outright quaint choices made when implementing HIP's bitwise conversion functions, by using simple reinterpret_casts, as is idiomatic. These functions are supposed to be re-entrant, correct and efficient. Sadly, they were neither: they hid a massive race condition against a value stored in global memory, which means that they were also unreasonably slow if they ever managed to be correct, and relied on union based type punning which is in a grey area of the standard. It is difficult to ascertain what may have been the reason for coming up with this quirky solution. 2017-11-28 17:23:06 +00:00
Chris Kitching 8042277672 Add hipify mappings for all CUDA headers that have HIP equivalents
I'm particularly running into issues with `device_types.h` in real
CUDA code...


[ROCm/clr commit: 7761f63bbc]
2017-11-28 17:23:06 +00:00
Chris Kitching 7761f63bbc Add hipify mappings for all CUDA headers that have HIP equivalents
I'm particularly running into issues with `device_types.h` in real
CUDA code...
2017-11-28 17:23:06 +00:00
Chris Kitching 97f96255bc Add hipify mappings for all CUDA headers that have HIP equivalents
I'm particularly running into issues with `device_types.h` in real
CUDA code...


[ROCm/hip commit: 9d47a4d980]
2017-11-28 17:23:06 +00:00
Chris Kitching 9d47a4d980 Add hipify mappings for all CUDA headers that have HIP equivalents
I'm particularly running into issues with `device_types.h` in real
CUDA code...
2017-11-28 17:23:06 +00:00
foreman 1e28932eba P4 to Git Change 1487653 by wchau@wchau_OCL_boltzmann on 2017/11/28 11:28:09
SWDEV-119491 - Add support for cl_amd_assembly_program extension
	This is a sub-task of SWDEV-134396.  Part 1/4 of the required changes:
	  (1) OpenCL API / Runtime, (2) ROCm Runtime - compiler invocation, (3) ROCm Driver, (4) Enabling Extension

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_common.hpp#19 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_context.cpp#57 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_program.cpp#45 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/khronos/headers/opencl1.2/CL/cl_ext.h#19 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/khronos/headers/opencl2.0/CL/cl_ext.h#35 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/khronos/headers/opencl2.1/CL/cl_ext.h#12 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/khronos/headers/opencl2.2/CL/cl_ext.h#6 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/device.cpp#215 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/device.hpp#293 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/program.cpp#90 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/program.hpp#42 edit


[ROCm/clr commit: ea28466b7b]
2017-11-28 11:41:42 -05:00
foreman ea28466b7b P4 to Git Change 1487653 by wchau@wchau_OCL_boltzmann on 2017/11/28 11:28:09
SWDEV-119491 - Add support for cl_amd_assembly_program extension
	This is a sub-task of SWDEV-134396.  Part 1/4 of the required changes:
	  (1) OpenCL API / Runtime, (2) ROCm Runtime - compiler invocation, (3) ROCm Driver, (4) Enabling Extension

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_common.hpp#19 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_context.cpp#57 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_program.cpp#45 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/khronos/headers/opencl1.2/CL/cl_ext.h#19 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/khronos/headers/opencl2.0/CL/cl_ext.h#35 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/khronos/headers/opencl2.1/CL/cl_ext.h#12 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/khronos/headers/opencl2.2/CL/cl_ext.h#6 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/device.cpp#215 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/device.hpp#293 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/program.cpp#90 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/program.hpp#42 edit
2017-11-28 11:41:42 -05:00
foreman f898f91b38 P4 to Git Change 1487653 by wchau@wchau_OCL_boltzmann on 2017/11/28 11:28:09
SWDEV-119491 - Add support for cl_amd_assembly_program extension
	This is a sub-task of SWDEV-134396.  Part 1/4 of the required changes:
	  (1) OpenCL API / Runtime, (2) ROCm Runtime - compiler invocation, (3) ROCm Driver, (4) Enabling Extension

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_common.hpp#19 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_context.cpp#57 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_program.cpp#45 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/khronos/headers/opencl1.2/CL/cl_ext.h#19 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/khronos/headers/opencl2.0/CL/cl_ext.h#35 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/khronos/headers/opencl2.1/CL/cl_ext.h#12 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/khronos/headers/opencl2.2/CL/cl_ext.h#6 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/device.cpp#215 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/device.hpp#293 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/program.cpp#90 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/program.hpp#42 edit


[ROCm/clr commit: 1f86279494]
2017-11-28 11:41:42 -05:00
foreman 1f86279494 P4 to Git Change 1487653 by wchau@wchau_OCL_boltzmann on 2017/11/28 11:28:09
SWDEV-119491 - Add support for cl_amd_assembly_program extension
	This is a sub-task of SWDEV-134396.  Part 1/4 of the required changes:
	  (1) OpenCL API / Runtime, (2) ROCm Runtime - compiler invocation, (3) ROCm Driver, (4) Enabling Extension

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_common.hpp#19 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_context.cpp#57 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_program.cpp#45 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/khronos/headers/opencl1.2/CL/cl_ext.h#19 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/khronos/headers/opencl2.0/CL/cl_ext.h#35 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/khronos/headers/opencl2.1/CL/cl_ext.h#12 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/khronos/headers/opencl2.2/CL/cl_ext.h#6 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/device.cpp#215 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/device.hpp#293 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/program.cpp#90 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/program.hpp#42 edit
2017-11-28 11:41:42 -05:00
foreman 95d2f777a0 P4 to Git Change 1487650 by wchau@wchau_OCL_boltzmann on 2017/11/28 11:21:33
SWDEV-139422 - Lexa Linux Support - OCL
	- fixed the OpenCL/LC sanity failures on Windows by adding support of Polaris12 in Settings::create()

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palsettings.cpp#38 edit


[ROCm/clr commit: e304c22316]
2017-11-28 11:37:01 -05:00
foreman e304c22316 P4 to Git Change 1487650 by wchau@wchau_OCL_boltzmann on 2017/11/28 11:21:33
SWDEV-139422 - Lexa Linux Support - OCL
	- fixed the OpenCL/LC sanity failures on Windows by adding support of Polaris12 in Settings::create()

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palsettings.cpp#38 edit
2017-11-28 11:37:01 -05:00
Jenkins e91a3e975a Merge 'master' into 'amd-master'
Change-Id: I0dccd195692aea64254d91bb899c093459b376b9


[ROCm/clr commit: 9e953711e4]
2017-11-28 04:11:35 -06:00
Jenkins 9e953711e4 Merge 'master' into 'amd-master'
Change-Id: I0dccd195692aea64254d91bb899c093459b376b9
2017-11-28 04:11:35 -06:00
Jenkins f43f6c10f3 Merge 'master' into 'amd-master'
Change-Id: I0dccd195692aea64254d91bb899c093459b376b9


[ROCm/hip commit: dd86268dda]
2017-11-28 04:11:35 -06:00
Jenkins dd86268dda Merge 'master' into 'amd-master'
Change-Id: I0dccd195692aea64254d91bb899c093459b376b9
2017-11-28 04:11:35 -06:00
foreman 689bb93019 P4 to Git Change 1487469 by johtaylo@johtaylo-jtincrementor2-increment on 2017/11/28 03:00:04
SWDEV-2 - Change OpenCL version number from 2544 to 2545.

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#2292 edit


[ROCm/clr commit: 57eac2965e]
2017-11-28 03:07:17 -05:00
foreman 57eac2965e P4 to Git Change 1487469 by johtaylo@johtaylo-jtincrementor2-increment on 2017/11/28 03:00:04
SWDEV-2 - Change OpenCL version number from 2544 to 2545.

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#2292 edit
2017-11-28 03:07:17 -05:00
Oak Zeng 019f7cbd20 More cleanup of fmm.c
1. Renamed _fmm_map_to_gpu to _fmm_map_to_apu_local
   to reflect the real semantics of this function
2. Renamed _fmm_map_to_gpu_gtt to _fmm_map_to_gpu
   because this function is used to map both gtt
   and local memory
3. Call _fmm_map_to_gpu in _fmm_map_to_apu_local
   to get rid of duplicated codes

Change-Id: Id8e3ebfffe0a3c27ebdcac8a8f4dc3738d67d10a
Signed-off-by: Oak Zeng <Oak.Zeng@amd.com>
2017-11-27 18:47:35 -05:00
Oak Zeng 5883a2c86b More cleanup of fmm.c
1. Renamed _fmm_map_to_gpu to _fmm_map_to_apu_local
   to reflect the real semantics of this function
2. Renamed _fmm_map_to_gpu_gtt to _fmm_map_to_gpu
   because this function is used to map both gtt
   and local memory
3. Call _fmm_map_to_gpu in _fmm_map_to_apu_local
   to get rid of duplicated codes

Change-Id: Id8e3ebfffe0a3c27ebdcac8a8f4dc3738d67d10a
Signed-off-by: Oak Zeng <Oak.Zeng@amd.com>


[ROCm/ROCR-Runtime commit: 019f7cbd20]
2017-11-27 18:47:35 -05:00
Oak Zeng b4c89c1ea7 Cleanup fmm.c
1. Initialize pointers to NULL in vm_create_and_init_object
2. Added helper function to add/remove device ids to/from mapped arrary
3. Only map nodes that were not mapped currently
4. Remove unnecessary condition check on object frees

Change-Id: I7aed6d40c7464be0d168d5796229af55451e0f34
Signed-off-by: Oak Zeng <Oak.Zeng@amd.com>
2017-11-27 18:47:23 -05:00
Oak Zeng b1a482dd52 Cleanup fmm.c
1. Initialize pointers to NULL in vm_create_and_init_object
2. Added helper function to add/remove device ids to/from mapped arrary
3. Only map nodes that were not mapped currently
4. Remove unnecessary condition check on object frees

Change-Id: I7aed6d40c7464be0d168d5796229af55451e0f34
Signed-off-by: Oak Zeng <Oak.Zeng@amd.com>


[ROCm/ROCR-Runtime commit: b4c89c1ea7]
2017-11-27 18:47:23 -05:00
Evgeny ac529c96e1 API update, rev 1.2.3 2017-11-27 16:51:03 -06:00
Evgeny 9824189d37 API update, rev 1.2.3
[ROCm/rocprofiler commit: ac529c96e1]
2017-11-27 16:51:03 -06:00
Evgeny 32e9dfb1d9 ThreadTraceViewer trace format 2017-11-27 14:41:05 -06:00
Evgeny 586b8773e9 ThreadTraceViewer trace format
[ROCm/rocprofiler commit: 32e9dfb1d9]
2017-11-27 14:41:05 -06:00
Ben Sander 7c2f9f70b4 Merge pull request #256 from gargrahul/texture_driver_api_support
Texture driver APIs support

[ROCm/hip-tests commit: 75a4e404ca]
2017-11-27 13:52:39 -06:00
Ben Sander 75a4e404ca Merge pull request #256 from gargrahul/texture_driver_api_support
Texture driver APIs support
2017-11-27 13:52:39 -06:00