FREDMPC是由美国Photon Engineering公司新开发的可以进行大规模并行计算的新一代光学工程仿真软件,FREDMPC已于2018年11月28日正式对外发布,欢迎前来订购!
FREDMPC是什么?
FRED原始版本只在单个CPU上进行光线追迹和分析计算。随着PC硬件的发展,FRED允许越来越多的处理器并行工作,FRED添加了许多新的代码,以利用额外的计算能力,将程序变成“多线程的”。(例如:光线追迹和分析任务分给多个并行工作的处理器。)不仅单个PC变得功能强大,可以使用多个处理器,而且工作站群集在一起的网络也允许在FRED中实现分布式计算。在这种操作模式下,分析任务被发送到多个联网的PC,它们可以在它们自己的多线程上下文中单独运行分配的工作。在这种操作模式下,分析任务被发送到多个联网的PC,它们可以在它们自己的多线程功能中单独运行分配的工作。这些模式显著减少了计算时间,但是这种方法依赖昂贵的CPU架构和相对缓慢的网络。
大规模并行计算范例的最新方法是图形处理单元(GPU),其中问题被分解为小块并由多个处理器并行操作。这种GPU硬件技术中,NVIDIA是业界领先的,在单个工作站中,允许数千个并行运行的处理单元。GPU硬件(和软件)发展迅速,可伸缩性强,与基于分布式CPU的网络相比,入门成本相对较低。通过简单地添加或升级PC中的GPU,使用FREDMPC进行光线追迹和分析,可以比使用传统多线程CPU快几个数量级。
从程序结构的角度来看,利用GPU就得要求FRED中的每个功能在源代码库中都有两个版本;一个版本是专门为CPU编写的,一个版本是专门为GPU编写的。当发出使用GPU的请求时,CPU上的FRED模型通过翻译器传递,该翻译器将每个FRED特性映射到其等效GPU版本。
CPU上的FRED模型通过模型转换步骤映射到GPU上的等效代码
这种结构的结果是,每个需要GPU支持的FRED功能都必须用专门的GPU代码完全重写。然而,对于给定的FREDMPC版本,并非所有的FRED功能都将具有GPU计算。“Supported Features”帮助主题提供了支持的、部分支持的和不支持的功能的详细列表。
当前局限性
下表从较高的层面描述了当前版本的局限性,这可以用来快速确定其对于给定分析任务的适当性。
何时使用FREDMPC
假设上面描述的高级程序限制不阻止使用FREDMPC执行分析,那么在决定是否使用GPU光线追迹时还应该考虑哪些其他因素?
模型加载与设备初始化
在GPU上对系统进行光线追迹和分析之前,必须将FRED文档加载到GPU中,并且必须初始化GPU设备。这些步骤的细节可以在使用FREDMPC帮助主题中找到,但是现在假设执行这些操作需要40秒(我们将其称为设备“延迟”)。如果用于创建、追迹和分析光线的CPU计算的总时间少于40秒,那么GPU与CPU相比没有任何优势。随着分析中使用的光线数量的增加,用于光线创建、光线追迹和分析的GPU的固有速度将从这个初始延迟中恢复,GPU将开始优于CPU。当涉及到大量的光线计数(数千万、数亿、数十亿)时,GPU光线追迹将真正发挥作用。
探测器分布分析
如果要执行的分析是对探测器“将看到什么”的预测,那么FREDMPC是合适的。尽管功能将继续扩展,但是FREDMPC中的当前数据分析工具是有限的。例如,基于路径的分析、光线重绘和光线过滤在FREDMPC中是限制的,用户可能需要使用CPU能力从光线追迹中提取更具体的信息。
几何集约模型
GPU优于CPU的一个显著优点是,在光线追迹期间,GPU擅长通过几何排序来发现光线交叉点。因此,如果一个模型包含许多几何元素(例如,导入的CAD或三角形网格对象),那么应该考虑GPU。
安装和授权
通过许可证授权控制对FREDMPC功能的访问。FREDMPC不是一个需要单独安装的独立产品。在安装FRED(安装和设置)后,启动程序并导航到Help>License Authorization。在“Software License Authorization”对话框(如下所示)中,通过检查对话框右侧的“MPC Capable”框,确认许可证授权代码允许访问FREDMPC的功能。如果此选项未选中,则许可证授权不允许您访问FREDMPC功能。如果您已经购买了FREDMPC,则需要用最新的许可证授权密码更新您的许可证。如果您还没有购买FREDMPC,请联系support@infotek.com.cn索取价格信息或接收报价。
|