硬汉嵌入式论坛

 找回密码
 立即注册
查看: 3815|回复: 14
收起左侧

[以太网] 比较ST的LwIP驱动和MDK做的驱动性能,文件传输速度基本都4.5-6MB/S,尽管ST开启了接收方式的Zero Copy

[复制链接]

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107101
QQ
发表于 2019-5-10 03:39:48 | 显示全部楼层 |阅读模式
1、都开启MDK的AC5最高性能优化,并开启时间优化。
2、直接使用ST做的FreeRTOS+LwIP例子下载到Nucelo板子测试文件传输速度。
3、MDK的例子是我制作的,也下载到Nucleo板子,保证同一个平台。
4、后面找个高性能的上位机传输软件试试。

优化设置:
1.jpg

MDK版LwIP文件传输速度,跳动的范围,4.5 - 6MB
66.jpg

ST版本LwIP文件传输速度,是一个跳动的范围,基本5-6MB
1.jpg




回复

使用道具 举报

18

主题

321

回帖

375

积分

高级会员

积分
375
发表于 2019-5-10 08:51:42 | 显示全部楼层
硬汉哥保重身体
回复

使用道具 举报

610

主题

3063

回帖

4913

积分

至尊会员

积分
4913
发表于 2019-5-10 09:37:55 | 显示全部楼层
这样看来 是 st 的比较牛逼一点,是不是 mdk 封装函数套的比较深造成传输慢的 ??
回复

使用道具 举报

335

主题

2040

回帖

3050

积分

版主

Rank: 7Rank: 7Rank: 7

积分
3050
发表于 2019-5-10 09:43:52 | 显示全部楼层
凌晨三点发帖子? 对工作是真爱啊。。。。。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107101
QQ
 楼主| 发表于 2019-5-10 11:27:54 | 显示全部楼层
hpdell 发表于 2019-5-10 09:37
这样看来 是 st 的比较牛逼一点,是不是 mdk 封装函数套的比较深造成传输慢的 ??

不是,是ST进去HAL库后,KEIL懒了,直接套用HAL的API,导致难用的一匹。

而帖子这里稍微高那么一丢丢,是因为KEIL的驱动接收端不是采用的Zero Copy,也就是接收到的数据没有采用复制粘贴形式,差在这个地方了。

我尝试也修改成Zero Copy的形式,没有成功,不研究了,性能提升不明显。

回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107101
QQ
 楼主| 发表于 2019-5-10 11:30:48 | 显示全部楼层
caicaptain2 发表于 2019-5-10 09:43
凌晨三点发帖子? 对工作是真爱啊。。。。。

这段时间的工作量太大。
回复

使用道具 举报

3

主题

36

回帖

45

积分

新手上路

积分
45
发表于 2019-5-10 11:31:42 | 显示全部楼层
用zero copy就避免不了用锁来保护,锁消耗的时间并不比memory copy低啊,所以zero copy并不能提升性能,倒是可以节省内存。个人拙见
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107101
QQ
 楼主| 发表于 2019-5-10 11:47:17 | 显示全部楼层
msr06rr 发表于 2019-5-10 11:31
用zero copy就避免不了用锁来保护,锁消耗的时间并不比memory copy低啊,所以zero copy并不能提升性能,倒 ...



的确有这个问题,感谢指出,我说怎么测试传输一个大电影文件,速度一会高点,一会低点。底层的各种多任务机制应该是有影响。
回复

使用道具 举报

5

主题

578

回帖

593

积分

版主

Rank: 7Rank: 7Rank: 7

积分
593
发表于 2019-5-10 12:42:54 | 显示全部楼层
我当年也想改造lwip的zero copy,不过lwip设计的还是有局限性,最后没有做到
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107101
QQ
 楼主| 发表于 2019-5-10 12:49:40 | 显示全部楼层
myxiaonia 发表于 2019-5-10 12:42
我当年也想改造lwip的zero copy,不过lwip设计的还是有局限性,最后没有做到

发现lwip的底层多任务支持跟emWin底层有一拼,而且还要麻烦些,换个系统,要移植的东西太多。
回复

使用道具 举报

36

主题

2040

回帖

2148

积分

至尊会员

积分
2148
发表于 2019-5-10 16:13:37 | 显示全部楼层
辛苦,比如KEIL那个协议栈性能差点。
Ever tried. Ever failed. No matter. Try Again. Fail again. Fail better.
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107101
QQ
 楼主| 发表于 2019-5-10 18:07:27 | 显示全部楼层
byccc 发表于 2019-5-10 16:13
辛苦,比如KEIL那个协议栈性能差点。

后面再用AC6,统一PK下。
回复

使用道具 举报

610

主题

3063

回帖

4913

积分

至尊会员

积分
4913
发表于 2019-5-10 23:36:16 | 显示全部楼层
eric2013 发表于 2019-5-10 18:07
后面再用AC6,统一PK下。



os + lwip 历程大概什么时候能够发布啊 ???
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107101
QQ
 楼主| 发表于 2019-5-11 03:08:19 | 显示全部楼层
hpdell 发表于 2019-5-10 23:36
os + lwip 历程大概什么时候能够发布啊 ???

用户手册完毕后开整。
回复

使用道具 举报

610

主题

3063

回帖

4913

积分

至尊会员

积分
4913
发表于 2019-5-11 11:03:36 | 显示全部楼层
eric2013 发表于 2019-5-11 03:08
用户手册完毕后开整。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-18 04:33 , Processed in 0.343048 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表