Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
MegEngine 天元
MegEngine
提交
83cf4ee6
MegEngine
项目概览
MegEngine 天元
/
MegEngine
1 年多 前同步成功
通知
404
Star
4705
Fork
582
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
MegEngine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
83cf4ee6
编写于
8月 25, 2021
作者:
M
Megvii Engine Team
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
refactor(dnn/rocm): remove some useless includes
GitOrigin-RevId: 3d2c315a368f7307a88ba37f0674a36072281578
上级
323a4642
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
21 addition
and
32 deletion
+21
-32
dnn/src/rocm/argsort/argsort.cpp.hip
dnn/src/rocm/argsort/argsort.cpp.hip
+1
-1
dnn/src/rocm/argsort/argsort.h.hip
dnn/src/rocm/argsort/argsort.h.hip
+1
-0
dnn/src/rocm/argsort/backward.cpp.hip
dnn/src/rocm/argsort/backward.cpp.hip
+0
-2
dnn/src/rocm/argsort/bitonic_sort.cpp.hip
dnn/src/rocm/argsort/bitonic_sort.cpp.hip
+13
-17
dnn/src/rocm/topk/topk_radix.cpp.hip
dnn/src/rocm/topk/topk_radix.cpp.hip
+6
-12
未找到文件。
dnn/src/rocm/argsort/argsort.cpp.hip
浏览文件 @
83cf4ee6
...
@@ -174,7 +174,7 @@ template void argsort::forward<dtype>(const dtype*, dtype*, int*, void*, \
...
@@ -174,7 +174,7 @@ template void argsort::forward<dtype>(const dtype*, dtype*, int*, void*, \
ARGSORT_FOREACH_CTYPE(INST_FORWARD)
ARGSORT_FOREACH_CTYPE(INST_FORWARD)
INST_CUB_SORT(uint32_t)
INST_CUB_SORT(uint32_t)
//
INST_CUB_SORT(uint64_t)
INST_CUB_SORT(uint64_t)
#undef INST_CUB_SORT
#undef INST_CUB_SORT
#undef INST_FORWARD
#undef INST_FORWARD
}
}
...
...
dnn/src/rocm/argsort/argsort.h.hip
浏览文件 @
83cf4ee6
...
@@ -40,6 +40,7 @@ void forward(const dtype* sptr, dtype* dptr, int* iptr, void* workspace,
...
@@ -40,6 +40,7 @@ void forward(const dtype* sptr, dtype* dptr, int* iptr, void* workspace,
const
int
*
iptr_src
=
NULL
);
const
int
*
iptr_src
=
NULL
);
//! iterate over all supported data types
//! iterate over all supported data types
// device_radix_sort does not support dt_float16 dtype(half_float::half in rocm)
#define ARGSORT_FOREACH_CTYPE(cb) \
#define ARGSORT_FOREACH_CTYPE(cb) \
cb(float) cb(int32_t) // DNN_INC_FLOAT16(cb(dt_float16))
cb(float) cb(int32_t) // DNN_INC_FLOAT16(cb(dt_float16))
...
...
dnn/src/rocm/argsort/backward.cpp.hip
浏览文件 @
83cf4ee6
...
@@ -14,8 +14,6 @@
...
@@ -14,8 +14,6 @@
#include "./argsort.h.hip"
#include "./argsort.h.hip"
#include "./backward.h.hip"
#include "./backward.h.hip"
// #include "src/rocm/utils.h"
using
namespace
megdnn
;
using
namespace
megdnn
;
using
namespace
rocm
;
using
namespace
rocm
;
using
namespace
argsort
;
using
namespace
argsort
;
...
...
dnn/src/rocm/argsort/bitonic_sort.cpp.hip
浏览文件 @
83cf4ee6
...
@@ -11,13 +11,9 @@
...
@@ -11,13 +11,9 @@
#include "hcc_detail/hcc_defs_prologue.h"
#include "hcc_detail/hcc_defs_prologue.h"
#include "./bitonic_sort.h.hip"
#include "./bitonic_sort.h.hip"
// #include "src/cuda/query_blocksize.cuh"
#include "megdnn/dtype.h"
// #include "megdnn/dtype.h"
// #if __CUDACC_VER_MAJOR__ < 9
// #pragma message "warp sync disabled due to insufficient cuda version"
#define __syncwarp __syncthreads
#define __syncwarp __syncthreads
// #endif
#include <algorithm>
#include <algorithm>
#include <cmath>
#include <cmath>
...
@@ -84,17 +80,17 @@ struct NumTrait<int32_t> {
...
@@ -84,17 +80,17 @@ struct NumTrait<int32_t> {
static __device__ __forceinline__ int32_t min() { return INT_MIN; }
static __device__ __forceinline__ int32_t min() { return INT_MIN; }
};
};
//
#if !MEGDNN_DISABLE_FLOAT16
#if !MEGDNN_DISABLE_FLOAT16
//
template <>
template <>
//
struct NumTrait<dt_float16> {
struct NumTrait<dt_float16> {
//
static __device__ __forceinline__ dt_float16 max() {
static __device__ __forceinline__ dt_float16 max() {
//
return std::numeric_limits<dt_float16>::max();
return std::numeric_limits<dt_float16>::max();
//
}
}
//
static __device__ __forceinline__ dt_float16 min() {
static __device__ __forceinline__ dt_float16 min() {
//
return std::numeric_limits<dt_float16>::lowest();
return std::numeric_limits<dt_float16>::lowest();
//
}
}
//
};
};
//
#endif
#endif
struct LessThan {
struct LessThan {
template <typename Key, typename Value>
template <typename Key, typename Value>
...
@@ -310,7 +306,7 @@ namespace rocm {
...
@@ -310,7 +306,7 @@ namespace rocm {
INST(float, int);
INST(float, int);
INST(int32_t, int);
INST(int32_t, int);
//
DNN_INC_FLOAT16(INST(dt_float16, int));
DNN_INC_FLOAT16(INST(dt_float16, int));
#undef INST
#undef INST
} // namespace megdnn
} // namespace megdnn
...
...
dnn/src/rocm/topk/topk_radix.cpp.hip
浏览文件 @
83cf4ee6
...
@@ -18,13 +18,7 @@
...
@@ -18,13 +18,7 @@
#include <algorithm>
#include <algorithm>
#include <cmath>
#include <cmath>
#if __CUDACC_VER_MAJOR__ < 9
#pragma message "topk is a little slower on cuda earlier than 9.0"
// on cuda 9.0 and later, due to thread-divergent branches we should use
// __syncwarp; and I am too lazy to implement a correct legacy version, so just
// use __syncthreads instead for older cuda
#define __syncwarp __syncthreads
#define __syncwarp __syncthreads
#endif
using namespace megdnn;
using namespace megdnn;
using namespace rocm;
using namespace rocm;
...
@@ -256,12 +250,12 @@ static __global__ void update_prefix_and_k(const uint32_t* bucket_cnt,
...
@@ -256,12 +250,12 @@ static __global__ void update_prefix_and_k(const uint32_t* bucket_cnt,
}
}
}
}
//
if ((cumsum_bucket_cnt[NR_BUCKET] < kv) |
if ((cumsum_bucket_cnt[NR_BUCKET] < kv) |
//
(cumsum_bucket_cnt[i] != cumsum_bucket_cnt[i - 1] + sum)) {
(cumsum_bucket_cnt[i] != cumsum_bucket_cnt[i - 1] + sum)) {
//
// impossible
// impossible
//
int* bad = 0x0;
int* bad = 0x0;
//
*bad = 23;
*bad = 23;
//
}
}
}
}
static uint32_t get_grid_dim_x(uint32_t length) {
static uint32_t get_grid_dim_x(uint32_t length) {
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录