前两天简单测试了一下我手头的一块USB 3.0 PCI转接卡,这两天闲来无事,想干脆把手头的几块USB 3.0卡都测一下,看看谁的性能更好些。特别是还在折腾20年前老电脑的朋友,可以参考一下,尤其是那些没有PCI-E的电脑,能否通过增加USB 3.0转接卡来提升性能。测试完发现一些有意思的东西,分享一下。
我测试的卡分别是前两天入手的UT230 USB 3.0 PCI扩充卡和UT240 USB 3.0 PCI扩充卡,都是台湾厂家2014年、2015年生产的,距今都快十年的产品。另外还有一块淘宝买的USB 3.0 PCI-E转接卡。
(UT230 USB 3.0 PCI扩充卡)
(UT240 USB 3.0 4-Port PCI扩充卡,淘宝有些店敢标价900块)
这两块卡都是来自同一个厂商Uptech,都是使用P17CP9X桥接芯片来提供PCI接口,这个转接芯片当时还在很多“创新”声卡上出现过,总之就是在那个PCI开始退出市场,PCI-E设备还没有大量面世的时代出现的产物。
此外,还有一块淘宝来的便宜转接卡。
仔细观察这三块转接卡可以看到,UT230是使用EtronTech EJ168A芯片方案的,UT240和淘宝无名卡使用的是Renesas d720201芯片方案。两种芯片在性能上最直观的差别是提供的USB端口数不同,EtronTech EJ168A只提供2个USB 3.0接口,Renesas d720201可以提供4个USB 3.0接口,厂家可以自行决定提供后置或前置接口,例如淘宝买的这张卡上就是两个后置接口,还有一组前置插针。
测试的电脑还是那台2005年的老电脑,nVIDIA C51芯片组主板可以直接提供PCI-E 1X和PCI接口,测试的时候我可以直接把三块卡都插上,不用来回拔插折腾了。
之所以要在这么老的电脑上测试,主要还是为了给那些折腾老电脑的怀旧玩家参考的,这类老电脑可能都有同样的问题,要么就是不提供PCI-E接口,要么就是早期的PCI-E解决方案,是由北桥或南桥提供一个PCI-E 1X接口,数据传输还要经过南北桥之间总线,比如AMD的HyperTransport总线,或者Intel的DMI总线,总之性能相当捉急。
那么在这些老爷机上PCI和PCI-E扩展硬件的性能差别到底如何,怎样才能选到性价比高一些的配件,就必须要用老电脑来实机测试了。我这里测试的这块nVIDIA C51芯片组主板,关于PCI-E的资料从早期厂商宣传资料里看,说的并不是很清楚,但从测试效果来看,应该是南桥提供的PCI-E 1X接口,毕竟nVIDIA官方称C51的北桥重点是提供GeForce 6100 GPU。
用来测试的硬盘也是前两天用来测试UT230卡的ITGZ硬盘盒+三星pm981a固态硬盘,本身可以提供10Gbps接口速率,实测大概有1GB/S的读写速度,保证不会成为读写瓶颈。
(ITGZ硬盘盒+固态硬盘,RTL9210B芯片方案,接口速率10Gbps)
此外还有一块对照硬盘,是西霸电子生产的FG-AST04A转接卡,它是一块RAID卡,同时提供SATA 6G和USB 3.0两个接口,同时它有标准2.5寸硬盘安装孔,可以直接安装进大部分2.5寸硬盘位置中。
(西霸FG-AST04A RAID卡+24G固态硬盘*2,RAID-0)
固态硬盘前两天已经测过,需要重点说一下参加测试的这块FG-AST04A RAID卡,它使用的是JMS562芯片方案,这个芯片本身是一个SATA端口扩充芯片,同时可以提供USB 3.0接口,但在测试的时候发现,它的USB 3.0接口能提供比SATA更快的读写性能,确实很有意思。RAID卡上安装了两块24G固态硬盘,RAID-0,尽量提高读写速度。
(测试时使用一台联想昭阳E49L笔记本,HM77芯片组,2014年生产)
这是在HM77芯片组SATA接口下读写的情况,读取284MB/S,写入60MB/S
但如果换到HM77芯片组USB3.0接口测试,读取可以达到349MB/S,这个USB接口应该是在原生PCI-E并且直通CPU的,但写入变化不大,仍然是60M/S。
这块卡使用USB接口时,平均读取速度能达到350MB/S左右,但如果使用SATA,居然只有280MB/S的速度,不太清楚为什么会这样,猜测可能与JMS562本身就是SATA端口扩充芯片有关,这个不展开说了,以前也发过blog聊过。反正我这里主要用它的USB接口来测试。
测试前我的心里预期是两块PCI卡,读写速度不会差别很大,毕竟都是跑在PCI总线上,速度上限也突破不了PCI的133MB/S理论上限。PCI-E卡应该可以更高,但能高多少我其实不太清楚,因为后期笔记本都是CPU直接提供PCI-E通道,读写速度往往很高,但早期电脑仍然是通过北桥,甚至南桥提供PCI-E通道,所以速度并不会很快,一切要看测试结果。
首先看一下UT230也就是EJ168A芯片方案的测试结果。先还是用固态硬盘盒来测试,但测试过程中发现固态硬盘盒与UT230卡经常连接不稳定,有时可以使用5G传输速率,有时就只有480M的2.0速率,差别非常悬殊。
(UT230+固态硬盘,正常可以跑到读取96M/S,写入80M/S的速度)
(UT230+固态硬盘,这个速度明显是USB 2.0的)
可以看到,在UT230上,固态硬盘最多只能跑到96M读取、80M写入的速度,与前两天的测试结果基本相当。随后我们再使用AST04A卡来测试,后面的测试都是这样的,先测固态硬盘,再测AST04A RAID卡。
(UT230+AST04A RAID卡)
读取速度仍然可以达到85M左右,但写入速度只剩59M了。这个写入速度大概是这个RAID卡和硬盘的写入上限了,毕竟在前面拿出来单独测试时,写入最高也就60M。
接下来看一看UT240,也就是d720201的PCI转接卡连接固态硬盘的情况。
(UT240+固态硬盘)
从速度看,d720201的读写速度确实比EJ168A要高一些,这与过去媒体评测结果相符。d720201的性能增长的比较明显,但仍然没有达到PCI的理论上限,更不用说超过PCI的总线速度了。
(UT240+AST04A RAID卡)
在连接AST04A RAID卡后,速度略有下降,但也比EJ168A的性能要好一些。
在测试完两块PCI卡后,该测试PCI-E卡了,先看一下连接固态硬盘的情况。
(d720201+固态硬盘)
可以看到,PCIE接口的USB卡,哪怕使用同样的d720201芯片,USB速度也更高一些,都超过了PCI卡能提供的最高速度。但显然与后期CPU直接提供PCIE通道的效果还是差了很多。
再测试连接AST04A RAID卡
(d720201+AST04A RAID卡)
读写速度也都有明显提升。最后让我比较诧异的是同块USB 3.0卡的不同接口之间的传输速度。这里我直接拿PCI-E接口的d720201卡来测试。同一个卡上直接插两个USB接口的SSD,读写速度没有瓶颈,直接测试从一块硬盘复制文件到另一个硬盘。
一个接口连接了1TB的固态硬盘pm981a,一个接口连接500G固态硬盘850evo。首先测试从F盘复制文件到G盘。
结果只能达到80MB/s的复制速度,同一个卡的两个接口间,速度怎么这么低?
再测试从G盘复制到F盘。
速度甚至还不如刚才,只有77MB/s左右。虽然不清楚是怎么回事,但检查了接口速度,确实是在USB 3.0的连接状态下的,难道是兼容性问题?
两个固态硬盘都是通过Realtek的RTL9210B和RTL9201芯片转为USB 3.0的,按说这是铺货量很大的芯片,兼容性不该有问题,总之在同一个卡的两个接口之间,速度并不理想,没有达到理论上的5Gbps速度。
OK,到这里全部的读写测试都结束了,通过测试得到结论:
1、老电脑的PCI-E 1x接口速度可能与PCI差不多。在老平台上,一般只要不是直通CPU的,PCI-E的速度并不会快多少,从我们的测试来看,USB3.0读写速度平均提高了30%左右。
2、早期的主板单芯片解决方案中,PCI-E接口一般是南桥提供的,数据都要走传统南北桥间总线,速度相当慢,而后期的PCI-E可以直通CPU,即使是USB设备,也可以大大提升传输性能。
3、FG-AST04A(JMS562)RAID卡的USB性能比SATA要好,如果有可能,就尽量使用USB接口,不要使用它的SATA接口。
4、转接对硬盘的性能影响非常明显,不论是用哪种方案的转接,都会比原生的速度慢一些。
最后的最后,也许有朋友会考虑,既然是给老电脑添加硬件,能不能直接一步到位,添加现在新的USB 3.1(USB 3.2 Gen 2)或者USB 3.2(USB 3.2 Gen 2*2)之类的卡呢?这个问题就复杂点,一方面新硬件的驱动可能只支持Win10以上的操作系统,老电脑未必会选择装新系统。另一方面,这类USB 3.1或3.2的新卡,可能大多都是PCI-E 4x接口的,老电脑一般只有16X和1X的接口,未必有对应的接口,如果直接占用一条16x接口,可能又导致显卡没地方插。当然万能的淘宝可能确实有1X接口的USB 3.1或3.2卡,但我预计受带宽限制,即使能用,恐怕也没有比3.0提升多少,将来有条件我再搞来测试一下。至于现在怎么选择,大家自己考虑吧。
好了,就先写到这里,2024年还在折腾20年前的老电脑,想给老电脑增配USB 3.0卡的朋友拿去参考吧。