llvm-project/polly/test/GPGPU
Singapuram Sanjay Srivallabh 1abd9ffa37 [PPCGCodeGen] Differentiate kernels based on their parent Scop
Summary:
Add a sequence number that identifies a ptx_kernel's parent Scop within a function to it's name to differentiate it from other kernels produced from the same function, yet different Scops.

Kernels produced from different Scops can end up having the same name. Consider a function with 2 Scops and each Scop being able to produce just one kernel. Both of these kernels have the name "kernel_0". This can lead to the wrong kernel being launched when the runtime picks a kernel from its cache based on the name alone. This patch supplements D33985, by differentiating kernels across Scops as well.

Previously (even before D33985) while profiling kernels generated through JIT e.g. Julia, [[ https://groups.google.com/d/msg/polly-dev/J1j587H3-Qw/mR-jfL16BgAJ | kernels associated with different functions, and even different SCoPs within a function, would be grouped together due to the common name ]]. This patch prevents this grouping and the kernels are reported separately.

Reviewers: grosser, bollu

Reviewed By: grosser

Subscribers: mehdi_amini, nemanjai, pollydev, kbarton

Tags: #polly

Differential Revision: https://reviews.llvm.org/D35176

llvm-svn: 307814
2017-07-12 16:46:19 +00:00
..
add-scalars-in-scop-to-kills.ll [Polly] [PPCGCodeGeneration] Teach `must_kills` to kill scalars that are local to the scop. 2017-07-06 13:42:42 +00:00
cuda-annotations.ll [PPCGCodeGen] Differentiate kernels based on their parent Scop 2017-07-12 16:46:19 +00:00
cuda-managed-memory-simple.ll [PPCGCodeGen] Differentiate kernels based on their parent Scop 2017-07-12 16:46:19 +00:00
double-parallel-loop.ll [tests] Specify the dependence to NVPTX backend for Polly ACC test cases 2017-03-03 03:38:50 +00:00
host-control-flow.ll [PPCGCodeGen] Differentiate kernels based on their parent Scop 2017-07-12 16:46:19 +00:00
host-statement.ll [GPGPU] Ensure arrays where only parts are modified are copied to GPU 2016-08-10 10:58:19 +00:00
intrinsic-copied-into-kernel.ll [PPCGCodeGeneration] Allow intrinsics within kernels. 2017-06-26 13:12:06 +00:00
invalid-kernel-assert-verifymodule.ll [PPCGCodeGeneration] Add flag to allow polly to fail in GPU kernel fails. 2017-06-26 14:56:56 +00:00
invalid-kernel.ll GPGPU: Bail out gracefully in case of invalid IR 2016-09-12 06:06:31 +00:00
invariant-load-hoisting-with-variable-upper-bound.ll [NFC] [PPCGCodeGeneration] Extend `invariant-load-hoisting-with-variable-upper-bound` test case. 2017-07-07 14:02:27 +00:00
invariant-load-hoisting.ll [PPCGCodeGen] Differentiate kernels based on their parent Scop 2017-07-12 16:46:19 +00:00
kernel-params-only-some-arrays.ll [PPCGCodeGen] Differentiate kernels based on their parent Scop 2017-07-12 16:46:19 +00:00
kernel-params-scop-parameter.ll [PPCGCodeGen] Differentiate kernels based on their parent Scop 2017-07-12 16:46:19 +00:00
kernels-names-across-scops-funcs.ll [PPCGCodeGen] Differentiate kernels based on their parent Scop 2017-07-12 16:46:19 +00:00
mostly-sequential.ll GPGPU: add missing REQUIRES line to test case 2016-09-18 08:57:38 +00:00
non-read-only-scalars.ll [PPCGCodeGeneration] Teach Polly to start using live range reordering. 2017-07-05 14:57:04 +00:00
non-zero-array-offset.ll GPGPU: Do not assume arrays start at 0 2016-09-15 14:05:58 +00:00
only-part-of-array-modified.ll [GPGPU] Ensure arrays where only parts are modified are copied to GPU 2016-08-10 10:58:19 +00:00
parametric-loop-bound.ll [Polly][PPCGCodeGen] OpenCL now gets kernel argument size from PPCG CodeGen 2017-05-09 10:45:52 +00:00
phi-nodes-in-kernel.ll [Polly] [PPCGCodeGeneration] Teach `must_kills` to kill scalars that are local to the scop. 2017-07-06 13:42:42 +00:00
private-memory.ll [PPCGCodeGeneration] Update PPCG Code Generation for OpenCL compatibility 2017-04-25 08:08:29 +00:00
privatization-simple.ll [NFC] Fix breaking build by adding REQUIRES: pollyacc 2017-07-05 15:20:28 +00:00
privatization.ll [NFC] Fix breaking build by adding REQUIRES: pollyacc 2017-07-05 15:20:28 +00:00
region-stmt.ll GPGPU: Allow region statements 2016-09-13 08:42:10 +00:00
remove-dead-instructions-in-stmt-2.ll [PPCGCodeGeneration] Update PPCG Code Generation for OpenCL compatibility 2017-04-25 08:08:29 +00:00
remove-dead-instructions-in-stmt.ll [PPCGCodeGeneration] Update PPCG Code Generation for OpenCL compatibility 2017-04-25 08:08:29 +00:00
run-time-check.ll [GPGPU] Create code to verify run-time conditions 2016-08-08 17:35:55 +00:00
scalar-param-and-value-32-bit.ll [tests] Specify the dependence to NVPTX backend for Polly ACC test cases 2017-03-03 03:38:50 +00:00
scalar-param-and-value-use.ll [tests] Specify the dependence to NVPTX backend for Polly ACC test cases 2017-03-03 03:38:50 +00:00
scalar-parameter-fp128.ll [tests] Specify the dependence to NVPTX backend for Polly ACC test cases 2017-03-03 03:38:50 +00:00
scalar-parameter-half.ll [tests] Specify the dependence to NVPTX backend for Polly ACC test cases 2017-03-03 03:38:50 +00:00
scalar-parameter-i80.ll [tests] Specify the dependence to NVPTX backend for Polly ACC test cases 2017-03-03 03:38:50 +00:00
scalar-parameter-i120.ll [tests] Specify the dependence to NVPTX backend for Polly ACC test cases 2017-03-03 03:38:50 +00:00
scalar-parameter-i128.ll [tests] Specify the dependence to NVPTX backend for Polly ACC test cases 2017-03-03 03:38:50 +00:00
scalar-parameter-i3000.ll [tests] Specify the dependence to NVPTX backend for Polly ACC test cases 2017-03-03 03:38:50 +00:00
scalar-parameter-ppc_fp128.ll [tests] Specify the dependence to NVPTX backend for Polly ACC test cases 2017-03-03 03:38:50 +00:00
scalar-parameter-x86_fp80.ll [tests] Specify the dependence to NVPTX backend for Polly ACC test cases 2017-03-03 03:38:50 +00:00
scalar-parameter.ll [tests] Specify the dependence to NVPTX backend for Polly ACC test cases 2017-03-03 03:38:50 +00:00
scheduler-timeout.ll GPGPU: Detect read-only scalar arrays ... 2016-09-17 19:22:18 +00:00
shared-memory-scalar.ll GPGPU: Detect read-only scalar arrays ... 2016-09-17 19:22:18 +00:00
shared-memory-two-dimensional.ll [PPCGCodeGeneration] Update PPCG Code Generation for OpenCL compatibility 2017-04-25 08:08:29 +00:00
shared-memory.ll [PPCGCodeGeneration] Update PPCG Code Generation for OpenCL compatibility 2017-04-25 08:08:29 +00:00
size-cast.ll [Polly] Added OpenCL Runtime to GPURuntime Library for GPGPU CodeGen 2017-05-07 21:03:46 +00:00
unknown-fn-call-not-copied-into-kernel.ll [Polly] [PPCGCodeGeneration] Skip Scops which contain function pointers. 2017-06-12 11:41:09 +00:00
untouched-arrays.ll Add missing 'REQUIRES' line 2016-09-11 13:42:42 +00:00