Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
SORACE
Ncnn
提交
7a3a5be4
N
Ncnn
项目概览
SORACE
/
Ncnn
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
N
Ncnn
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
7a3a5be4
编写于
5月 28, 2021
作者:
N
nihuini
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix requantize x86 pack4to1
上级
05f6d2cf
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
64 addition
and
64 deletion
+64
-64
src/layer/x86/requantize_x86.cpp
src/layer/x86/requantize_x86.cpp
+64
-64
未找到文件。
src/layer/x86/requantize_x86.cpp
浏览文件 @
7a3a5be4
...
...
@@ -714,10 +714,10 @@ int Requantize_x86::forward(const Mat& bottom_blob, Mat& top_blob, const Option&
_v
=
activation_sse
(
_v
,
activation_type
,
activation_params
);
_v
=
_mm_mul_ps
(
_v
,
_scale_out
);
int64_t
v
=
float2int8_sse
(
_v
,
_v
);
ptr
[
0
]
=
(
v
>>
56
)
&
0xff
;
ptr
[
1
]
=
(
v
>>
4
8
)
&
0xff
;
ptr
[
2
]
=
(
v
>>
4
0
)
&
0xff
;
ptr
[
3
]
=
(
v
>>
32
)
&
0xff
;
ptr
[
0
]
=
(
v
>>
32
)
&
0xff
;
ptr
[
1
]
=
(
v
>>
4
0
)
&
0xff
;
ptr
[
2
]
=
(
v
>>
4
8
)
&
0xff
;
ptr
[
3
]
=
(
v
>>
56
)
&
0xff
;
}
}
else
if
(
bias_data_size
==
1
)
...
...
@@ -735,10 +735,10 @@ int Requantize_x86::forward(const Mat& bottom_blob, Mat& top_blob, const Option&
_v
=
activation_sse
(
_v
,
activation_type
,
activation_params
);
_v
=
_mm_mul_ps
(
_v
,
_scale_out
);
int64_t
v
=
float2int8_sse
(
_v
,
_v
);
ptr
[
0
]
=
(
v
>>
56
)
&
0xff
;
ptr
[
1
]
=
(
v
>>
4
8
)
&
0xff
;
ptr
[
2
]
=
(
v
>>
4
0
)
&
0xff
;
ptr
[
3
]
=
(
v
>>
32
)
&
0xff
;
ptr
[
0
]
=
(
v
>>
32
)
&
0xff
;
ptr
[
1
]
=
(
v
>>
4
0
)
&
0xff
;
ptr
[
2
]
=
(
v
>>
4
8
)
&
0xff
;
ptr
[
3
]
=
(
v
>>
56
)
&
0xff
;
}
}
else
...
...
@@ -755,10 +755,10 @@ int Requantize_x86::forward(const Mat& bottom_blob, Mat& top_blob, const Option&
_v
=
activation_sse
(
_v
,
activation_type
,
activation_params
);
_v
=
_mm_mul_ps
(
_v
,
_scale_out
);
int64_t
v
=
float2int8_sse
(
_v
,
_v
);
ptr
[
0
]
=
(
v
>>
56
)
&
0xff
;
ptr
[
1
]
=
(
v
>>
4
8
)
&
0xff
;
ptr
[
2
]
=
(
v
>>
4
0
)
&
0xff
;
ptr
[
3
]
=
(
v
>>
32
)
&
0xff
;
ptr
[
0
]
=
(
v
>>
32
)
&
0xff
;
ptr
[
1
]
=
(
v
>>
4
0
)
&
0xff
;
ptr
[
2
]
=
(
v
>>
4
8
)
&
0xff
;
ptr
[
3
]
=
(
v
>>
56
)
&
0xff
;
}
}
}
...
...
@@ -780,10 +780,10 @@ int Requantize_x86::forward(const Mat& bottom_blob, Mat& top_blob, const Option&
_v
=
activation_sse
(
_v
,
activation_type
,
activation_params
);
_v
=
_mm_mul_ps
(
_v
,
_scale_out
);
int64_t
v
=
float2int8_sse
(
_v
,
_v
);
ptr
[
0
]
=
(
v
>>
56
)
&
0xff
;
ptr
[
1
]
=
(
v
>>
4
8
)
&
0xff
;
ptr
[
2
]
=
(
v
>>
4
0
)
&
0xff
;
ptr
[
3
]
=
(
v
>>
32
)
&
0xff
;
ptr
[
0
]
=
(
v
>>
32
)
&
0xff
;
ptr
[
1
]
=
(
v
>>
4
0
)
&
0xff
;
ptr
[
2
]
=
(
v
>>
4
8
)
&
0xff
;
ptr
[
3
]
=
(
v
>>
56
)
&
0xff
;
}
}
else
if
(
bias_data_size
==
1
)
...
...
@@ -802,10 +802,10 @@ int Requantize_x86::forward(const Mat& bottom_blob, Mat& top_blob, const Option&
_v
=
activation_sse
(
_v
,
activation_type
,
activation_params
);
_v
=
_mm_mul_ps
(
_v
,
_scale_out
);
int64_t
v
=
float2int8_sse
(
_v
,
_v
);
ptr
[
0
]
=
(
v
>>
56
)
&
0xff
;
ptr
[
1
]
=
(
v
>>
4
8
)
&
0xff
;
ptr
[
2
]
=
(
v
>>
4
0
)
&
0xff
;
ptr
[
3
]
=
(
v
>>
32
)
&
0xff
;
ptr
[
0
]
=
(
v
>>
32
)
&
0xff
;
ptr
[
1
]
=
(
v
>>
4
0
)
&
0xff
;
ptr
[
2
]
=
(
v
>>
4
8
)
&
0xff
;
ptr
[
3
]
=
(
v
>>
56
)
&
0xff
;
}
}
else
...
...
@@ -823,10 +823,10 @@ int Requantize_x86::forward(const Mat& bottom_blob, Mat& top_blob, const Option&
_v
=
activation_sse
(
_v
,
activation_type
,
activation_params
);
_v
=
_mm_mul_ps
(
_v
,
_scale_out
);
int64_t
v
=
float2int8_sse
(
_v
,
_v
);
ptr
[
0
]
=
(
v
>>
56
)
&
0xff
;
ptr
[
1
]
=
(
v
>>
4
8
)
&
0xff
;
ptr
[
2
]
=
(
v
>>
4
0
)
&
0xff
;
ptr
[
3
]
=
(
v
>>
32
)
&
0xff
;
ptr
[
0
]
=
(
v
>>
32
)
&
0xff
;
ptr
[
1
]
=
(
v
>>
4
0
)
&
0xff
;
ptr
[
2
]
=
(
v
>>
4
8
)
&
0xff
;
ptr
[
3
]
=
(
v
>>
56
)
&
0xff
;
}
}
}
...
...
@@ -848,10 +848,10 @@ int Requantize_x86::forward(const Mat& bottom_blob, Mat& top_blob, const Option&
_v
=
activation_sse
(
_v
,
activation_type
,
activation_params
);
_v
=
_mm_mul_ps
(
_v
,
_scale_out
);
int64_t
v
=
float2int8_sse
(
_v
,
_v
);
ptr
[
0
]
=
(
v
>>
56
)
&
0xff
;
ptr
[
1
]
=
(
v
>>
4
8
)
&
0xff
;
ptr
[
2
]
=
(
v
>>
4
0
)
&
0xff
;
ptr
[
3
]
=
(
v
>>
32
)
&
0xff
;
ptr
[
0
]
=
(
v
>>
32
)
&
0xff
;
ptr
[
1
]
=
(
v
>>
4
0
)
&
0xff
;
ptr
[
2
]
=
(
v
>>
4
8
)
&
0xff
;
ptr
[
3
]
=
(
v
>>
56
)
&
0xff
;
}
}
else
if
(
bias_data_size
==
1
)
...
...
@@ -870,10 +870,10 @@ int Requantize_x86::forward(const Mat& bottom_blob, Mat& top_blob, const Option&
_v
=
activation_sse
(
_v
,
activation_type
,
activation_params
);
_v
=
_mm_mul_ps
(
_v
,
_scale_out
);
int64_t
v
=
float2int8_sse
(
_v
,
_v
);
ptr
[
0
]
=
(
v
>>
56
)
&
0xff
;
ptr
[
1
]
=
(
v
>>
4
8
)
&
0xff
;
ptr
[
2
]
=
(
v
>>
4
0
)
&
0xff
;
ptr
[
3
]
=
(
v
>>
32
)
&
0xff
;
ptr
[
0
]
=
(
v
>>
32
)
&
0xff
;
ptr
[
1
]
=
(
v
>>
4
0
)
&
0xff
;
ptr
[
2
]
=
(
v
>>
4
8
)
&
0xff
;
ptr
[
3
]
=
(
v
>>
56
)
&
0xff
;
}
}
else
...
...
@@ -891,10 +891,10 @@ int Requantize_x86::forward(const Mat& bottom_blob, Mat& top_blob, const Option&
_v
=
activation_sse
(
_v
,
activation_type
,
activation_params
);
_v
=
_mm_mul_ps
(
_v
,
_scale_out
);
int64_t
v
=
float2int8_sse
(
_v
,
_v
);
ptr
[
0
]
=
(
v
>>
56
)
&
0xff
;
ptr
[
1
]
=
(
v
>>
4
8
)
&
0xff
;
ptr
[
2
]
=
(
v
>>
4
0
)
&
0xff
;
ptr
[
3
]
=
(
v
>>
32
)
&
0xff
;
ptr
[
0
]
=
(
v
>>
32
)
&
0xff
;
ptr
[
1
]
=
(
v
>>
4
0
)
&
0xff
;
ptr
[
2
]
=
(
v
>>
4
8
)
&
0xff
;
ptr
[
3
]
=
(
v
>>
56
)
&
0xff
;
}
}
}
...
...
@@ -915,10 +915,10 @@ int Requantize_x86::forward(const Mat& bottom_blob, Mat& top_blob, const Option&
_v
=
activation_sse
(
_v
,
activation_type
,
activation_params
);
_v
=
_mm_mul_ps
(
_v
,
_scale_out
);
int64_t
v
=
float2int8_sse
(
_v
,
_v
);
ptr
[
0
]
=
(
v
>>
56
)
&
0xff
;
ptr
[
1
]
=
(
v
>>
4
8
)
&
0xff
;
ptr
[
2
]
=
(
v
>>
4
0
)
&
0xff
;
ptr
[
3
]
=
(
v
>>
32
)
&
0xff
;
ptr
[
0
]
=
(
v
>>
32
)
&
0xff
;
ptr
[
1
]
=
(
v
>>
4
0
)
&
0xff
;
ptr
[
2
]
=
(
v
>>
4
8
)
&
0xff
;
ptr
[
3
]
=
(
v
>>
56
)
&
0xff
;
}
}
else
if
(
bias_data_size
==
1
)
...
...
@@ -938,10 +938,10 @@ int Requantize_x86::forward(const Mat& bottom_blob, Mat& top_blob, const Option&
_v
=
activation_sse
(
_v
,
activation_type
,
activation_params
);
_v
=
_mm_mul_ps
(
_v
,
_scale_out
);
int64_t
v
=
float2int8_sse
(
_v
,
_v
);
ptr
[
0
]
=
(
v
>>
56
)
&
0xff
;
ptr
[
1
]
=
(
v
>>
4
8
)
&
0xff
;
ptr
[
2
]
=
(
v
>>
4
0
)
&
0xff
;
ptr
[
3
]
=
(
v
>>
32
)
&
0xff
;
ptr
[
0
]
=
(
v
>>
32
)
&
0xff
;
ptr
[
1
]
=
(
v
>>
4
0
)
&
0xff
;
ptr
[
2
]
=
(
v
>>
4
8
)
&
0xff
;
ptr
[
3
]
=
(
v
>>
56
)
&
0xff
;
}
}
else
...
...
@@ -960,10 +960,10 @@ int Requantize_x86::forward(const Mat& bottom_blob, Mat& top_blob, const Option&
_v
=
activation_sse
(
_v
,
activation_type
,
activation_params
);
_v
=
_mm_mul_ps
(
_v
,
_scale_out
);
int64_t
v
=
float2int8_sse
(
_v
,
_v
);
ptr
[
0
]
=
(
v
>>
56
)
&
0xff
;
ptr
[
1
]
=
(
v
>>
4
8
)
&
0xff
;
ptr
[
2
]
=
(
v
>>
4
0
)
&
0xff
;
ptr
[
3
]
=
(
v
>>
32
)
&
0xff
;
ptr
[
0
]
=
(
v
>>
32
)
&
0xff
;
ptr
[
1
]
=
(
v
>>
4
0
)
&
0xff
;
ptr
[
2
]
=
(
v
>>
4
8
)
&
0xff
;
ptr
[
3
]
=
(
v
>>
56
)
&
0xff
;
}
}
}
...
...
@@ -1072,10 +1072,10 @@ int Requantize_x86::forward(const Mat& bottom_blob, Mat& top_blob, const Option&
_v
=
activation_sse
(
_v
,
activation_type
,
activation_params
);
_v
=
_mm_mul_ps
(
_v
,
_scale_out
);
int64_t
v
=
float2int8_sse
(
_v
,
_v
);
ptr0
[
0
]
=
(
v
>>
56
)
&
0xff
;
ptr1
[
0
]
=
(
v
>>
4
8
)
&
0xff
;
ptr2
[
0
]
=
(
v
>>
4
0
)
&
0xff
;
ptr3
[
0
]
=
(
v
>>
32
)
&
0xff
;
ptr0
[
0
]
=
(
v
>>
32
)
&
0xff
;
ptr1
[
0
]
=
(
v
>>
4
0
)
&
0xff
;
ptr2
[
0
]
=
(
v
>>
4
8
)
&
0xff
;
ptr3
[
0
]
=
(
v
>>
56
)
&
0xff
;
intptr
+=
4
;
ptr0
+=
1
;
...
...
@@ -1107,10 +1107,10 @@ int Requantize_x86::forward(const Mat& bottom_blob, Mat& top_blob, const Option&
_v
=
activation_sse
(
_v
,
activation_type
,
activation_params
);
_v
=
_mm_mul_ps
(
_v
,
_scale_out
);
int64_t
v
=
float2int8_sse
(
_v
,
_v
);
ptr0
[
0
]
=
(
v
>>
56
)
&
0xff
;
ptr1
[
0
]
=
(
v
>>
4
8
)
&
0xff
;
ptr2
[
0
]
=
(
v
>>
4
0
)
&
0xff
;
ptr3
[
0
]
=
(
v
>>
32
)
&
0xff
;
ptr0
[
0
]
=
(
v
>>
32
)
&
0xff
;
ptr1
[
0
]
=
(
v
>>
4
0
)
&
0xff
;
ptr2
[
0
]
=
(
v
>>
4
8
)
&
0xff
;
ptr3
[
0
]
=
(
v
>>
56
)
&
0xff
;
intptr
+=
4
;
ptr0
+=
1
;
...
...
@@ -1228,10 +1228,10 @@ int Requantize_x86::forward(const Mat& bottom_blob, Mat& top_blob, const Option&
_v
=
activation_sse
(
_v
,
activation_type
,
activation_params
);
_v
=
_mm_mul_ps
(
_v
,
_scale_out
);
int64_t
v
=
float2int8_sse
(
_v
,
_v
);
ptr0
[
0
]
=
(
v
>>
56
)
&
0xff
;
ptr1
[
0
]
=
(
v
>>
4
8
)
&
0xff
;
ptr2
[
0
]
=
(
v
>>
4
0
)
&
0xff
;
ptr3
[
0
]
=
(
v
>>
32
)
&
0xff
;
ptr0
[
0
]
=
(
v
>>
32
)
&
0xff
;
ptr1
[
0
]
=
(
v
>>
4
0
)
&
0xff
;
ptr2
[
0
]
=
(
v
>>
4
8
)
&
0xff
;
ptr3
[
0
]
=
(
v
>>
56
)
&
0xff
;
intptr
+=
4
;
ptr0
+=
1
;
...
...
@@ -1263,10 +1263,10 @@ int Requantize_x86::forward(const Mat& bottom_blob, Mat& top_blob, const Option&
_v
=
activation_sse
(
_v
,
activation_type
,
activation_params
);
_v
=
_mm_mul_ps
(
_v
,
_scale_out
);
int64_t
v
=
float2int8_sse
(
_v
,
_v
);
ptr0
[
0
]
=
(
v
>>
56
)
&
0xff
;
ptr1
[
0
]
=
(
v
>>
4
8
)
&
0xff
;
ptr2
[
0
]
=
(
v
>>
4
0
)
&
0xff
;
ptr3
[
0
]
=
(
v
>>
32
)
&
0xff
;
ptr0
[
0
]
=
(
v
>>
32
)
&
0xff
;
ptr1
[
0
]
=
(
v
>>
4
0
)
&
0xff
;
ptr2
[
0
]
=
(
v
>>
4
8
)
&
0xff
;
ptr3
[
0
]
=
(
v
>>
56
)
&
0xff
;
intptr
+=
4
;
ptr0
+=
1
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录