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
jerrrrry
infinicore
Commits
9e0773f6
Commit
9e0773f6
authored
Jul 09, 2025
by
Catheriany
Browse files
issue/312: 沐曦BF16编译问题
parent
a19efb54
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
20 additions
and
9 deletions
+20
-9
src/infiniop/devices/maca/maca_kernel_common.h
src/infiniop/devices/maca/maca_kernel_common.h
+5
-0
src/infiniop/ops/random_sample/maca/random_sample_kernel.h
src/infiniop/ops/random_sample/maca/random_sample_kernel.h
+5
-0
src/infiniop/ops/random_sample/maca/random_sample_maca.maca
src/infiniop/ops/random_sample/maca/random_sample_maca.maca
+10
-9
No files found.
src/infiniop/devices/maca/maca_kernel_common.h
View file @
9e0773f6
...
...
@@ -60,4 +60,9 @@ __forceinline__ __device__ __half
exp_
(
const
__half
x
)
{
return
hexp
(
x
);
}
__forceinline__
__device__
__hpcc_bfloat16
;
exp_
(
const
__hpcc_bfloat16
;
x
)
{
return
hexp
(
x
);
}
#endif
src/infiniop/ops/random_sample/maca/random_sample_kernel.h
View file @
9e0773f6
...
...
@@ -107,6 +107,11 @@ struct CudaTval<fp16_t> {
using
Type
=
half
;
};
template
<
>
struct
CudaTval
<
bf16_t
>
{
using
Type
=
__hpcc_bfloat16
;
};
// ↑↑↑ 通过特化将 fp16_t 转换为 half
// ↓↓↓ 用于采样过程的小型 kernel
...
...
src/infiniop/ops/random_sample/maca/random_sample_maca.maca
View file @
9e0773f6
...
...
@@ -34,15 +34,16 @@ infiniStatus_t Descriptor::create(
workspace_size = workspace_result.take(); \
} break
#define CASE_I(CASE, Tidx) \
case CASE: \
switch (info.dt_p) { \
CASE_P(INFINI_DTYPE_F16, Tidx, half); \
CASE_P(INFINI_DTYPE_F32, Tidx, float); \
CASE_P(INFINI_DTYPE_F64, Tidx, double); \
default: \
abort(); \
} \
#define CASE_I(CASE, Tidx) \
case CASE: \
switch (info.dt_p) { \
CASE_P(INFINI_DTYPE_F16, Tidx, half); \
CASE_P(INFINI_DTYPE_BF16, Tidx, __hpcc_bfloat16); \
CASE_P(INFINI_DTYPE_F32, Tidx, float); \
CASE_P(INFINI_DTYPE_F64, Tidx, double); \
default: \
abort(); \
} \
break
switch (info.dt_i) {
...
...
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