自成立以来,Solidigm在SSD市场上一直都非常活跃。除了发布企业级SSD D7-P5520和D7-P5530。在消费级市场上,先后推出了基于QLC的P41 Plus和基于TLC的 P44 Pro。
在发布P41 Plus的时候,Solidigm介绍了用pSLC(模拟的SLC)来实现读缓存的用法,这需要Solidigm Synergy软件的支持。
![](https://pic.doit.com.cn/2023/05/202305051028416.png?x-oss-process=image%2Fquality,q_50%2Fresize,m_fill,w_1024,h_507)
过去一段时间以来,Solidigm一直在优化Solidigm Synergy软件,并表示,用了Solidigm Synergy之后,P41 Plus和P44 Pro在真实场景中的性能表现还会有所提升,比刚发布时候的性能会更高。
![](https://pic.doit.com.cn/2023/05/2023050602350416.png?x-oss-process=image%2Fquality,q_50%2Fresize,m_fill,w_1024,h_451)
与大部分SSD厂商只将工作重心放在SSD硬件和Firmware的做法不同,Solidigm的做法还涉及软件和驱动层面,说得上是不走寻常路。
Solidigm Synergy 2.0包含两部分,一个叫Synergy Toolkit,一个叫Synergy Driver。
Synergy Toolkit像是常规操作,它支持SMART功能,可检测Windows存储性能,可以用来更新Firmware。
Solidigm Synergy Toolkit跟其他SSD厂商的同类工具的功能很像,主要有监控和维护两大类功能。
Solidigm自己SSD可以用,非Solidigm SSD也可以用。
![](https://pic.doit.com.cn/2023/05/202305060136139.png?x-oss-process=image%2Fquality,q_50%2Fresize,m_fill,w_1024,h_1003)
不过,Synergy Driver部分的话,明显只支持Solidigm自己的SSD,而且目前仅支持消费级SSD。
Synergy Driver是在内核运行,目前,仅支持Windows 10或11。Solidigm表示,它能使得基于QLC的SSD的性能表现有大幅提升。
走近一步来看,Synergy Driver的性能提升主要靠三种技术,一个叫FastLane(快速通道),一个是Prefetch for QD1(QD1的预取),还有一个是Dynamic Queues(动态队列)。
先来看Fastlane(快速通道),该技术对于所有用户都有帮助。
随着硬盘写入数据的不断增多,不仅缓存空间会减少,而且,同一时间要访问的数据也会变多,这都会导致性能降低。
Fastlane是一种Host管理的缓存方案,可以用来优化SSD的缓存空间,自动把热点数据缓存起来,从而提高性能表现。
FastLane 的主要优势是能让SSD在更长的时间里保持一致性能。Solidigm的测试显示,在写满一半的SSD上,QD1 随机读取速度提高了120%。
通常,读缓存只有在盘没有写满(导致缓存太小)的时候才有用。Solidigm表示,这项技术在写入满25%和75%的时候都有帮助。
这句话什么意思呢?用白话说,写满的盘和空盘,FastLane就没什么用了。
![](https://pic.doit.com.cn/2023/05/2023050510313931.png?x-oss-process=image%2Fquality,q_50%2Fresize,m_fill,w_1024,h_494)
这一功能能显著改善所有Windows电脑用户的使用体验,从减少开机时间,到浏览网页,再到轻度生产力用户都能受益。
Solidigm测试发现,采用了Synergy Driver的系统跟采用Windows默认系统相比,开机速度提高了7%,在PCMark 10的全系统磁盘测试中,跑分也高出了7%。
目前,FastLane 在P41 Plus上已经可用。
然后,再来看Smart Prefetch(智能预获取),它对游戏用户,特别是3A大作游戏玩家非常受用。
Synergy Driver可以实时分析存储的动作,从而找出可预测的读操作,这就叫Smart Prefetch。
比如,当访问队列深度较低而且是顺序读写时,可以预测下一次访问,并能在应用程序发起请求之前进行预取。从用户体验来看,这可以提高响应速度。
![](https://pic.doit.com.cn/2023/05/2023050510321122.png?x-oss-process=image%2Fquality,q_50%2Fresize,m_fill,w_1024,h_784)
游戏场景中的IO操作主要由游戏加载、加载保存的游戏进度、加载游戏的新关卡时触发的,这些IO操作大部分都是读操作,大部分都是顺序操作,而且,大部分都是低队列深度的操作。
![](https://pic.doit.com.cn/2023/05/2023050603293058.png?x-oss-process=image%2Fquality,q_50%2Fresize,m_fill,w_1024,h_356)
很明显,这些操作是比较好预测的,Smart Prefetch擅长处理可预测的数据操作,能在游戏请求这些数据前就把数据准备好了,所以,就能提高加载速度。
Solidigm的测试数据显示,使用Smart Prefetch(智能预获取)后,在低队列深度时,4KB小文件的顺序读性能最高可以提高350%,这可以显著提高游戏的加载速度。
换句话说,Smart Prefetch在面对需要顺序读取大量小文件的游戏时,能显著提高加载速度,减少载入时间。
Solidigm盘的Smart Prefetch操作可以通过注册表参数来控制。
第三个是Dynamic Queues Assignment(动态队列分配),为生产力一族准备。
在具有多CPU核心的系统上,Solidigm driver 可以将I/O请求路由到相对空闲的内核上,这比原生Windows驱动程序做得更好。
Synergy Driver根据I/O请求负载、I/O请求的大小,以及在有/无CPU内核重定向的情况下的I/O处理时间,来判断是否激活动态队列。
如果Synergy Driver检测到重定向使得I/O的完成时间变得更长,或者工作负载发生其他变化之后,动态队列就会自动关闭。
Dynamic Queues Assignment(动态队列分配)既可以提高读性能,也能提高写性能,特别那些随机读写性能。
与运行相同工作负载,但没使用Solidigm Synergy软件的系统相比,动态队列分配功能可将随机读取性能提高多达20%。
Dynamic Queues Assignment(动态队列分配)能提高很多应用的加载速度,比如,采用Synergy Driver与采用Windows默认驱动相比,可以将PowerPoint的加载速度提高最高14%。
与刚才提到的智能预取类似,这一功能也可以通过修改注册表来停用。
小结
其他厂商卖了SSD之后,最多是通过更新Firmware来提供额外的附加值,而Solidigm不仅能更新Firmware,还能通过更新驱动的操作来优化性能,提供附加值,可以说,确实有点不走寻常路。
![](https://pic.doit.com.cn/2023/05/202305051032332.png?x-oss-process=image%2Fquality,q_50%2Fresize,m_fill,w_1024,h_490)
需要注意的一点是,这些功能有助于解决实际负载问题,对于处理大型顺序读写的场景其实没到达用,所以,用ATTO或CrystalDiskMark跑分也看不出明显变化。