MSC_MARC2011单机多核并行计算示例
MSC_MARC单机多核并行计算示例教学文案

M S C_M A R C单机多核并行计算示例MSC MARC2011单机多核并行计算示例并行计算可以有效利用本地或者网络计算机计算资源,提高计算效率,特别是针对一些计算规模相对较大的问题。
本文作为MARC单机多核并行计算的一个示例。
测试平台:WIN7 64Bit MARC20110、提前设置将电脑名字最好改为administrator,或者通过修改电脑名称,会使user和display后面的名子保持一致。
改电脑名字:计算机右键—属性—更改设置—更改—计算机名1、启动多核运算打开dos界面输入(1)D:按enter回车键(d为marc所在盘)(2)cd+空格+D:\MSC.Software\Marc\2010\marc2010\intelmpi\win64\bin按enter回车键(3)ismpd+空格+ –install 按enter回车键(4)出现上图中的关闭窗口。
2、基本配置(1)在MARC安装目录下的intelmpi\win64\bin目录(32Bit计算机选择win32文件夹),运行wmpiregister.exe.(2)输入用户名(登陆windows的账户名,通常为administrator)及密码(若密码为空,需要重新设置一个密码),点击register按钮,下面的对话框中会出现“Password encrypted into the Registry”信息。
(3)运行ismpd.exe,或者到dos提示符下,进入该目录,运行ismpd -install。
假如提示都正常的话,到此即完成进行并行计算的前提条件了。
3、测试(1)在MARC安装目录下的intelmpi\win64\bin目录(32Bit计算机选择win32文件夹),运行wmpiconfig.exe(2)依次点击下面1和2.(3)红框中出现如果出现administrUnable to connect to 'administr:8678',sock error: generic socket failure, error stack:MPIDU_Sock_post_connect(1200): unable to connect to administr on port 8678, exhausted all endpoints (errno -1)MPIDU_Sock_post_connect(1216): gethostbyname failed, 请求的名称有效,但是找不到请求的类型的数据。
Marc2010-2013新功能

MSC.Marc 2010新功能:高性能计算能够在较短的时间内实现大模型的仿真计算,能够充分的利用现代计算机技术多核技术Pardiso 并行求解器支持共享内存(SMP)/分布式内存(DMP)支持Windows 32/64 以及 Linux 32&64操作系统Mumps 并行求解器支持共享内存(SMP)/支持分布式内存(DMP) 支持Windows 32/64 以及 Linux 32操作系统允许并行计算时使用全局网格自适应 单元扩展了支持热传导分析的界面单元类型,引入了4节点、8节点的平面实体单元和轴对称实体单元,新增了6节点、 8节点、 15节点、 20节点的 3-d 单元。
过去损伤分析仅限于结构分析。
然而损伤分析通常需要引入热应变。
该分析主要应用领域为航空,特别是复合材料模型。
新材料本构模型增加指数帽模型(Exponential Cap Model )和5th order Mooney model ,过去使用Shima powder 模型或者摩尔库仑模型(Mohr Coulomb model )使用削减的Mooney 模型或Ogden 模型,新增加的本构模型能够更真实准确的反映待模拟的对象,主要应用与粉末金属模型、土00.511.522.533.540246810S c a l a b i l i t yNumber of ProcessorsMUMPS Solver27965134149572688810587241527810DOF壤、橡胶材料。
材料参数设置在进行多物理场分析时,材料属性输入的形式更为强大密度可以定义为随温度变化的量发射率和吸收率可以定义为随着时间变化的量 阻尼系数可以定义为随着时间变化的量接触功能亮点片断-片断(Segment-to-segment )接触,适用于2-D 和 3-D 的线性和二阶实体单元和2-D 和 3-D 的线性和二阶壳单元,与过去的采用节点-片断(Node-to-segment )接触探测相比有效的提升计算精度。
python多核并行计算示例1(工作太忙,仅仅作为记录)

python多核并⾏计算⽰例1(⼯作太忙,仅仅作为记录)1import math2import datetime3import multiprocessing as mp45# 调⽤ Python ⾃带的多进程库 Multiprocessing, 就可以进⾏多核并⾏计算67# 定义⽬标函数8def train_on_parameter(name, param):9 result = 010for num in param:11 result += math.sqrt(num * math.tanh(num) / math.log2(num) / math.log10(num))12return {name: result}131415if__name__ == '__main__':1617 start_t = datetime.datetime.now()1819# 核⼼数量: cpu_count() 函数可以获得计算机的核⼼数量。
20 num_cores = int(mp.cpu_count())21print("本计算机总共有: " + str(num_cores) + " 核⼼")2223# 进程池: Pool() 函数创建了⼀个进程池类,⽤来管理多进程的⽣命周期和资源分配。
24# 这⾥进程池传⼊的参数是核⼼数量,意思是最多有多少个进程可以进⾏并⾏运算。
25 pool = mp.Pool(num_cores)2627 param_dict = {'task1': list(range(10, 30000000)),28'task2': list(range(30000000, 60000000)),29'task3': list(range(60000000, 90000000)),30'task4': list(range(90000000, 120000000)),31'task5': list(range(120000000, 150000000)),32'task6': list(range(150000000, 180000000)),33'task7': list(range(180000000, 210000000)),34'task8': list(range(210000000, 240000000))}3536# 异步调度: apply_async() 是进程池的⼀个调度函数。
MSC.Software公司Marc产品介绍

MSC.Marc 软件是一个功能强大的有限元分析系统,提供 了各种问题的解决方案。
1. 非线性结构分析
◆ 非 线 性 静 力 分 析:包括材料非线性、几何非线性和非 线性边界条件。
◆ 非 线 性 瞬 态 分 析:时间函数驱动的过程分析。 ◆ 非 线 性 动 力 分 析:包括模态分析、瞬态响应分析、简 谐响应分析、频谱响应分析。 ◆ 非 线 性 屈 曲 分 析:MSC.Marc 软件处理稳定性问题的 方法有两类。一类是简单地按特征值问题求解失稳形态和临界 载荷的特征值分析;另一类是追踪失稳路径,获取失稳前后结 构变形、应力和载荷变化完整信息的增量有限元分析。
结构分析、热分析和热-结构耦合分析的完全支持,也支持磁 场、电场、压电场分析,下面主要介绍 MSC.Mentat 的功能。
1.几何建模
MSC.Mentat可通过自顶向下和自底向上的方式生成几何模 型,支持对几何元素点、线、面、体的各种,例如增加、删除、 编辑和显示等。
2.网格划分
MSC.Mentat提供功能齐全、性能卓越的的自动网格生成技 术,可以将几何点、线、面元素直接转化成有限单元的节点、线 单元和面单元。可以自动对几何形状划分面网格或体网格。具 有专门的六面体网格生成器以及 Rebar 单元生成器。
MSC.Marc 六面体网格自动划分功能充分考虑了网格划分 的基本要求,用户可以指定内部网格稀疏过渡级别,程序在稀 疏网格过渡处自动生成多点约束方程,满足位移协调。
3.网格操作
MSC.Mentat 的其它有关网格功能有复制、移动、扩展、对 称、转换、单元阶次的转换、检查、重排、相交、清除、松弛、 拉直、重划分、附着等。
4.其他功能
MSC.Mentat的前处理功能除几何建模和网格划分外,还可 以定义边界条件、材料参数、几何参数、接触信息、初始条件、 连接关系(如多点约束)等。
多核体系结构与并行编程模型计算机科学导论第八讲ppt课件

int retval; retval = curr; 1
– 原因: curr = curr+prev;1
对共享变
量的访问缺
乏约束
prev = retval; 1
curr = curr+prev;1 prev = retval; 1
28 t
共享变量并行编程模型
• 同步
– 同步是对线程执行的顺序进行强行限制的一种机 制,用来控制线程执行的相对顺序,可以有效解 决任何线程之间的冲突,而这些冲突有可能会导 致线程的执行出现异常行为
执行单元 缓存
单核结构
CPU状态 CPU状态 中断逻辑 中断逻辑
执行单元 缓存
超线程结构
多处理器结构
超线程技术充分利用执行
单元中的空闲资源,以便在 相同时间内完成更多工作
执行单元中的资源:内存
访问部件、算术运算部件和
浮点功能部件等
8
基本知识
• 单核结构与多核系统结构
CPU状态 中断逻辑
执行单元 缓存
P1: W(x)1
P2:
W(x)2
P3:
R(x)2 R(x)1
P4:
R(x)2 R(x)1
t 左图符合顺序
t 一致性:
t W(x)2先于W(x)1
发生
t
20
内存一致性模型
• 顺序一致性模型
– 比严格一致性弱的模型
– 在多处理器共享内存情况下,所有处理器的内存 访问操作都按照某个顺序逐个执行,并且每个处 理器执行的单个线程,严格按照程序规定的顺序 逐语句地进行内存访问操作
P1: W(x)1
t 左图不符合顺
P2:
W(x)2
t 序一致性:
MARC并行计算安装说明

MARC并行计算安装说明最近很多朋友问到如何安装并行,我抽空写了个说明,与大家分享安装环境:1、三台电脑,电脑名分别为computer1computer2computer3,他们处于同一个工作组workgroup.computer1有1个CPU,Computer2有2个CPU,Computer3有3个CPU。
2、三台电脑安装的操作系统都为Windows XPSP23、computer1computer2computer3上MARC的安装路径都为D:\MSC.Software4、Computer1的工作路径为D:\work1,用户名为user1密码为passuser1Computer2的工作路径为E:\work2,用户名为user2密码为passuser2Computer3的工作路径为F:\work3,用户名为user3密码为passuser3安装步骤1、确保三台电脑能够连通,该连通主要指的是能够相互读写文件。
有的时候局域网可能出现:网络拒绝访问,请联系系统管理员,确保您有权限访问该台计算机之类的提示,这时可以按以下步骤操作方法1:在各台计算机上都建立相同的帐户名,如user007,采用相同的密码。
这时,只要网络是通的,一般都没有问题,能够相互访问方法2:各台计算机上的帐户名和密码都不同:1)确保各台计算机的用户名和密码非空2)启用Guest帐户3)开始—运行—gpedit.msc---计算机配置---Windows设置---安全设置---本地策略---用户权利指派---拒绝从网络访问这台计算机。
将Guest帐户删掉4)去掉―使用简单文件共享‖项2、设定一台Host机,两台remote机:在这里设置Computer1为Host机,其他两台为remote机3、将Host机,即Compter1,的安装目录,即D:\MSC.Software完全共享将Remote机,即Computer2computer3的安装目录和工作目录完全共享,即:两台电脑的D:\msc.software完全共享;Computer2的E:\work2;Computer3的F:\work3完全共享4、重置MP-MPICH密码在每台电脑上都执行相应的操作,这里以Computer1为例在DOS窗口下:cdD:\MSC.Software\MSC.Marc\2005r3\marc2005r3\nt_mpich\bin\mpiexec –store–save..\..\tools\setdomain.bat可以看到一些提示符,要求你输入一些参数,即输入每台计算机的计算机所述域、用户名密码。
Marc

Marc全球非线性有限元软件行业的领导者MSC.Marc 是MSC.Software 公司于1999年收购的Marc 公司的产品。
Marc 公司始创于1967年,是全球首家非线性有限元软件公司。
经过四十余年的不懈努力,Marc 软件得到学术界和工业界的大力推崇和广泛应用,建立了它在全球非线性有限元软件行业的领导者地位。
随着Marc 软件功能的不断扩展,软件的应用领域也从开发初期的核电行业迅速扩展到航空、航天、汽车、造船、铁道、石油化工、能源、电子元件、机械制造、材料工程、土木建筑、医疗器材、冶金工艺和家用电器等,成为许多知名公司和研究机构研发新产品和新技术的必备工具。
Marc 软件通过了ISO9001质量认证。
在中国,Marc 通过了全国压力容器标准化技术委员会的严格考核和认证,成为与压力容器分析设计标准GB4732-95相适应的有限元分析软件。
一.产品特色♦ 多种物理场的分析能力。
♦ 复合场的耦合分析能力。
♦ 强大的非线性分析能力。
♦ 最先进的接触分析功能。
♦ 并行计算功能。
♦ 丰富的单元库。
♦ 开放的用户环境。
♦ 强大的网格自适应功能。
♦ 全自动三维网格重划分。
二.方便高效的用户界面MSC.Mentat 作为MSC.Marc 程序的专用前后处理器, 完全支持MSC.Marc 所有功能。
另外MSC.Patran 已经实现了对MSC.Marc结构分析、热分析和热-结构耦合分析的完全支持,也支持磁场、电场、压电场分析,下面主要介绍MSC.Mentat 的功能。
1.几何建模MSC.Mentat 可通过自顶向下和自底向上的方式生成几何模型,支持对几何元素点、线、面、体的各种,例如增加、删除、编辑和显示等。
2.网格划分MSC.Mentat 提供功能齐全、性能卓越的的自动网格生成技术,可以将几何点、线、面元素直接转化成有限单元的节点、线单元和面单元。
可以自动对几何形状划分面网格或体网格。
具有专门的六面体网格生成器以及Rebar 单元生成器。
并行计算:利用多核处理器加速程序执行

并行计算:利用多核处理器加速程序执行引言随着科技的发展,计算机硬件的性能不断提升,多核处理器成为了现代计算机的标配。
在传统的单核处理器上,程序的执行是按照顺序逐步进行的,而多核处理器则具有同时执行多个指令的能力,可以大大提高程序的执行效率。
本文将介绍并行计算的概念,以及如何利用多核处理器来加速程序的执行。
什么是并行计算并行计算是指将一个程序拆分成多个子任务,然后分别在多个处理器上同时执行这些子任务的计算模式。
与串行计算相比,并行计算能够显著提高程序的执行速度和效率。
在多核处理器上进行并行计算时,不同的处理器可以同时进行不同的计算任务,提高计算的并行度和吞吐量。
并行计算的优势并行计算具有以下几个优势: 1. 提高计算速度:并行计算利用多核处理器同时进行多个计算任务,可以大大提高程序的执行速度。
在大规模数据处理和复杂计算任务中尤为明显。
2. 提高计算效率:并行计算能够更好地利用计算资源,充分发挥多核处理器的潜力。
通过同时执行多个计算任务,可以高效利用处理器的计算能力。
3. 实现实时计算:并行计算可以实现实时计算,及时处理大量数据并获得计算结果。
在需要实时响应的应用场景中,如数据分析、机器学习和人工智能等领域,具有重要意义。
并行计算的应用领域并行计算广泛应用于以下几个领域: 1. 科学计算:并行计算在科学计算中有着广泛的应用。
科学家可以利用并行计算来快速解决复杂的数学方程和物理模型,加速科学研究的进展。
2. 数据分析:在大数据时代,数据分析任务常常需要处理海量的数据,而并行计算可以高效地处理这些数据,提高数据分析的速度和效率。
3. 计算机图形学:计算机图形学中的渲染、模拟和动画等任务都需要进行大量的计算,而并行计算可以加速这些任务的执行,提供更流畅的图形效果。
4. 人工智能:人工智能领域中的机器学习和深度学习等算法通常需要大量的计算资源,而并行计算可以提供高性能的计算能力,加速训练和推理过程。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
MSC MARC2011单机多核并行计算示例
并行计算可以有效利用本地或者网络计算机计算资源,提高计算效率,特别是针对一些计算规模相对较大的问题。
本文作为MARC单机多核并行计算的一个示例。
测试平台:WIN7 64Bit MARC2011
1、基本配置
(1)在MARC安装目录下的intelmpi\win64\bin目录(32Bit计算机选择win32文件夹),运行wmpiregister.exe.
(2)输入用户名(登陆windows的账户名,通常为administrator)及密码(若密码为空,需要重新设置一个密码),点击register按钮,下面的对话框中会出现“Password encrypted into the Registry”信息。
(3)运行ismpd.exe,或者到dos提示符下,进入该目录,运行ismpd -install。
假如提示都正常的话,到此即完成进行并行计算的前提条件了。
2、分配单元
单机多核计算提高效率的途径在于几个核心同时进行计算,因此对一个模型完成所有的建模后需要为参与计算的多核分配计算任务(软件自动分配或者用户手动分配),也就是单元,最后在提交任务前提示软件进行并行计算。
(1)打开一个已经调试无误的待计算文件
(2)为多核分配单元
测试电脑为双核4线程,这里设置2核计算。
①Jobs—>User Domains调出面板,②Generate!按钮设置参与计算的CPU内核数,③输入分配的内核数2,回车确定,④软件自动为两个内核分配单元,并输出单元数信息,⑤勾选Identify,显示单元分配情况,最终如图所示。
也可以用户手动分配单元,①选择Manul Decomposition,出现手动分配单元的一些命令按钮,②Delete All删除之前自动分配情况,③Add Elements分别为内核分配不同的单元,④手动分配情况如图所示。
3、提交计算
完成上述步骤后,勾选Parallelization选项即可进行并行计算。
①Job—>Show Menu进入Job面板,②Run命令进入Run Job面板,③点击Parallelization进入相应面板,④勾选 Use DDM选项,假如使用用户分配的单元,选
择 Decomposition In Mentat,⑤点击OK回到Run Job面板,⑥点击Submit即可提交任务进行并行计算。
运行情况如图所示。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~。