ZHyednc
上一篇《EDA云实证Vol.1:从30天到17小时,如何让HSPICE仿真效率提升42倍?》里,我们帮一家Design House提高了使用HSPICE进行芯片设计仿真的效率。ZHyednc
而设计好的集成电路图案需要通过光刻机转印到晶圆上才能完成制造,这就是芯片制造中最重要的一个步骤——光刻。ZHyednc
在先进工艺特别是 FinFET 工艺中,计算光刻已经成为光刻工艺研发的核心。ZHyednc
光学邻近效应校正(Optical Proximity Correction,OPC)属于计算光刻技术的一种,主要是利用软件和高性能计算,来模拟仿真光刻过程中的光学和化学过程,通过仿真建立精确的计算模型,然后调整图形的边沿不断仿真迭代,直到逼近理想的图形,最终加速工艺研发周期的目标。ZHyednc
ZHyednc
这一过程对计算资源的需求随着模型的精确度呈指数级别增长。ZHyednc
举个例子,一款7nm芯片需要高达100层的光罩,每层光罩数据都需要使用EDA工具进行OPC的过程。整个过程对硬件算力要求很高,EDA工具需要运行在几千核的服务器CPU上,动辄就是几十万核时。ZHyednc
ZHyednc
我们通过今天的实证验证了如何在不同场景下,大幅帮用户缩短OPC运行时间,同时确保云端和本地计算结果的完全一致性和计算性能的稳定性。ZHyednc
这次实证涉及的场景很细致,既有License服务器的配置地点,又有不同调度器,还一一对云上计算结果和本地做了数据对比,使用的计算资源数量跨度也很大,从80-5000核不等,非常细致,极具参考性。ZHyednc
A社是一家大型IC设计公司,随着近年业务规模不断扩大,OPC相关计算需求增大。
但A社本地机房空间不足,原先传统托管IDC模式也难以满足弹性需求,导致大量任务出现排队,无法及时输出成果,拖慢了整个IC研发进程。
公司希望在本地建设和IDC托管之外,寻求具备弹性的大规模算力来满足业务高峰期的需求,来满足业务扩展需求。
1、OPC任务能否在云端有效运行?
2、fastone平台能否满足业务弹性资源需求,有效减少OPC运行时间?ZHyednc
3、License Server配置在本地和云端对计算性能/一致性/稳定性是否有影响?ZHyednc
4、fastone能否支持不同调度器SGE/Slurm?使用不同调度器对计算性能/一致性/稳定性是否有影响?ZHyednc
5、fastone平台的云端输出计算结果是否与本地完全一致?ZHyednc
在提交设计到制造之前,模拟仿真光学邻近效应校正,从理论上探索增大最小可分辨特征尺寸(Minimum Resolvable Feature size,MRF)和工艺窗口(Process Window,PW)的途径,指导工艺参数的优化。
本次实证分别验证了License Server部署在本地和云端的表现。
本次实证涉及的考察因素比较多,尤其是本地和云上进行了同步一对一对比。用户希望和本地硬件配置尽量保持一致,有更好的可比性,所以选择了跟本地接近的内存密集型实例机型。
两个红框表示EDA License Server分别部署在本地或云端。
5000核大规模OPC业务上云验证
1、云端调度5000核计算资源运算一组OPC任务,耗时为80核计算资源运算耗时的0.019倍,相当于从一个月缩短到13.8小时;
2、公有云厂商大内存型资源数量不算多,单个区域想要一次性获取高达5000核的内存型实例很难实现。fastone平台的Auto-Scale功能可在较短时间内,根据用户需求,自动化跨区调度到大量目标类型计算资源。
实证过程:
1、云端调度80核计算资源运算一组任务,耗时为x;
5、云端调度5000核计算资源运算一组任务,耗时为0.019x。
关于通过fastone平台的Auto-Scale功能基于用户时间优先策略和成本优先策略自动调度本区域及其他区域的目标类型或相似类型实例资源,这篇文章《生信云实证Vol.3:提速2920倍!用AutoDock Vina对接2800万个分子》里有详细说明。ZHyednc
License Server配置在本地VS云端
1、License Server部署在本地和云端对于计算结果无影响;
1、License Server部署在本地,云上调度80/240/480/1600/3200/5000核计算资源运行OPC任务,本地同步运行80/240/480/1600/3200/5000核相同OPC任务;
2、License Server部署在云端,云上调度80/240/480/1600/3200/5000核计算资源运行OPC任务,本地同步运行80/240/480/1600/3200/5000核相同OPC任务。
1、License Server配置在本地,使用云端资源运算OPC任务,性能随资源增加线性提升。
注:参考值分别为:80核-1、240核-0.3333、480核-0.1667、1600核-0.05、3200核-0.025,5000核-0.016。
1、云端调度80核计算资源运算Case1,耗时为x;
2、云端调度240核计算资源运算Case1,耗时为0.3375x;
3、云端调度480核计算资源运算Case1,耗时为0.1679x;
4、云端调度1600核计算资源运算Case1,耗时为0.0518x;
5、云端调度3200核计算资源运算Case1,耗时为0.0285x;
6、云端调度5000核计算资源运算Case1,耗时为0.0216x;
7、云端调度80核计算资源运算Case2,耗时为y;
8、云端调度240核计算资源运算Case2,耗时为0.3389y;
9、云端调度480核计算资源运算Case2,耗时为0.1682y;
10、云端调度1600核计算资源运算Case2,耗时为0.0529y;
11、云端调度3200核计算资源运算Case2,耗时为0.0300y;
12、云端调度5000核计算资源运算Case2,耗时为0.0230y。
License Server配置在云端,使用云端资源运算OPC任务,性能随资源增加线性提升。
注:参考值分别为:80核-1、240核-0.3333、480核-0.1667、1600核-0.05、3200核-0.025,5000核-0.016。
1、云端调度80核计算资源运算Case1,耗时为x;
2、云端调度240核计算资源运算Case1,耗时为0.3346x;
3、云端调度480核计算资源运算Case1,耗时为0.1672x;
4、云端调度1600核计算资源运算Case1,耗时为0.0515x;
5、云端调度3200核计算资源运算Case1,耗时为0.0270x;
6、云端调度5000核计算资源运算Case1,耗时为0.0191x;
7、云端调度80核计算资源运算Case2,耗时为y;
8、云端调度240核计算资源运算Case2,耗时为0.3390y;
9、云端调度480核计算资源运算Case2,耗时为0.1691y;
10、云端调度1600核计算资源运算Case2,耗时为0.0588y;
11、云端调度3200核计算资源运算Case2,耗时为0.0329y;
12、云端调度5000核计算资源运算Case2,耗时为0.0262y。
不同调度器验证:SGE VS Slurm
1、分别使用SGE和Slurm调度云端2000核/5000核运行相同OPC任务,对于计算结果无影响;
2、云端和本地使用不同调度器分别运行相同OPC任务:
1、使用SGE调度器,云上调度2000核计算资源运算一组OPC任务,本地同步运行2000核相同OPC任务;
2、使用SGE调度器,云上调度5000核计算资源运算一组OPC任务,本地同步运行5000核相同OPC任务;
3、使用Slurm调度器,云上调度2000核计算资源运算一组OPC任务,本地同步运行2000核相同OPC任务;
4、使用Slurm调度器,云上调度5000核计算资源运算一组OPC任务,本地同步运行5000核相同OPC任务。
这篇文章《亿万打工人的梦:16万个CPU随你用》里,我们基于这四家主流调度器:LSF/SGE/Slurm/PBS以及它们的9个演化版本进行了梳理和盘点,尤其是对云的支持方面划了重点。可以了解一下。
2、fastone平台能够大幅度缩短OPC任务运行时间;
3、License Server配置在本地和云端,对计算性能/一致性/稳定性没有影响;
4、fastone平台使用不同调度器SGE/Slurm,对计算性能/一致性/稳定性没有影响;
5、云端和本地运行相同OPC任务,对计算结果没有影响。
本次EDA行业Cloud HPC实证系列Vol.4就到这里了。
在下一期实证中,我们将对Virtuoso使用速石平台进行验证。请保持关注哦!