Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
gaoqiong
composable_kernel
Commits
c3943745
Commit
c3943745
authored
Sep 08, 2022
by
Po-Yen, Chen
Browse files
Add check for the 'VectorDim' & 'ScalarPerVector' template params
parent
a399b408
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
21 additions
and
1 deletion
+21
-1
include/ck/tensor_operation/gpu/device/device_permute.hpp
include/ck/tensor_operation/gpu/device/device_permute.hpp
+21
-1
No files found.
include/ck/tensor_operation/gpu/device/device_permute.hpp
View file @
c3943745
...
...
@@ -235,7 +235,27 @@ struct DevicePermute
static
bool
IsSupportedArgument
(
const
Argument
&
arg
)
{
return
GridwisePermute
::
CheckValidity
(
arg
.
in_grid_desc_
,
arg
.
out_grid_desc_
);
constexpr
auto
IsScalarPerVectorValid
=
[](
const
std
::
array
<
index_t
,
NumDim
>&
lengths
,
const
std
::
array
<
index_t
,
NumDim
>&
strides
,
index_t
vectorDim
,
index_t
scalarPerVector
)
{
if
(
strides
[
vectorDim
]
==
1
&&
lengths
[
vectorDim
]
%
scalarPerVector
==
0
)
{
return
true
;
}
else
if
(
strides
[
vectorDim
]
!=
1
&&
scalarPerVector
==
1
)
{
return
true
;
}
return
false
;
};
return
IsScalarPerVectorValid
(
arg
.
inLengths_
,
arg
.
inStrides_
,
SrcVectorDim
,
SrcScalarPerVector
)
&&
IsScalarPerVectorValid
(
arg
.
outLengths_
,
arg
.
outStrides_
,
DstVectorDim
,
DstScalarPerVector
)
&&
GridwisePermute
::
CheckValidity
(
arg
.
in_grid_desc_
,
arg
.
out_grid_desc_
);
};
};
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment