基于openmp的电力系统并行故障计算实现 .pdf

上传人:不*** 文档编号:2082925 上传时间:2019-11-24 格式:PDF 页数:6 大小:1.01MB
返回 下载 相关 举报
基于openmp的电力系统并行故障计算实现 .pdf_第1页
第1页 / 共6页
亲,该文档总共6页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《基于openmp的电力系统并行故障计算实现 .pdf》由会员分享,可在线阅读,更多相关《基于openmp的电力系统并行故障计算实现 .pdf(6页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、第 5 3卷第 5期 2 0 1 6年3月 1 0日 电测与仪表 El e c t r i c a l M e a s u r e me n t& I n s t r ume n t a t i o n V0 1 5 3 NO 5 M a r 1 0。 2 01 6 基于 O p e n MP的电力系统并行故障计算实现 术 韦嘉 , 柏瑜 , 熊兰 , 王珊 , 杨子康 ( 1 国网重庆 市 电力公 司市 区供 电分公 司 , 重庆 4 0 0 0 1 0 ; 2 重庆大学 输配电装配及 系统安全与新技术 国家重点实验室, 重庆 4 0 0 0 3 0 ) 摘要 : 故障计算是 电力系统最基本

2、的计算 。随着电网规模与电力节点数 E l 益增大 , 计算需要花费的时间越来越 长。传统的串行计算方法已不太可能在计算速度上获得实质性进展 , 多核并行计算正引领着软件的研发方向。 介绍了O p e n M P编程技术和故障计算原理, 并基于 O p e n M P编写故障计算程序, 提出并行故障计算方法。通过 用 串行和并行两种方式对系统进行故障计算测试 , 仿真结果发现并行计算 的时间明显低于串行计算 , 的确是一 种低成本 、 高效率的解决方案 。 关键词 : O p e n MP ; 故障计算 ; 并行计算 ; 串行计算 中图分类号 : T M9 3 文献标识码 : A 文章编号 :

3、 1 0 0 11 3 9 0 ( 2 0 1 6 ) 0 5 0 0 2 80 6 Op e n M P- ba s e d p a r a l l e l c o m p ut a t i o n o n f a u l t s o f po we r s y s t e m We i J i a ,Ba i Yu ,Xi o n g L a n ,Wa n g S h a n ,Ya n g Z i k a n g ( C i t y P o w e r S u p p l y B u r e a u o f C h o n g q i n g E l e c t r i c P o w

4、 e r C o m p a n y , C h o n g q i n g 4 0 0 0 1 0 ,C h i n a 2 S t a t e K e y L a b o r a t o r y of P o w e r T r a n s m i s s i o n E q u i p me n t s&S y s t e m S e c u r i t y a n d N e w T e c h n o l o g y C h o n g q i n g U n i v e r s i t y , C h o n g q i n g 4 0 0 0 3 0 ,C h i n a ) A

5、bs t r a c t :Fa u l t c a l c u l a t i o n i s t h e b a s i c c o mpu t a t i o n i n po we r s y s t e mW i t h t he i n c r e a s i n g n o d e n u mb e r a n d c o v e r i n g a r e a o f p o we r g r i d s,i t t a k e s mu c h mo r e t i me t o c a l c u l a t e t h a n e v e r Ca l c u l a t

6、 i o n a n d a na l y s i s a r e f a c i n g s e r i o us c h al l e ng e s,a n d t r a d i t i o na l s e ria l c o mp u t i n g me t h o ds h a v e b e e n u n l i ke l y o b t a i n e d s ub s t a n t i a l pr o g r e s s o n c o mp u t i ng s pe e d, mul t i c o r e p a r a l l e l c o mp u t i

7、 n g i s l e a d i n g s o f t wa r e d e v e l o pme nt Th e t e c h n o l o g y o f Op e n MP- b a s e d p a r a l l e l c o mp u t a t i o n i s i nt r o d u c e dTh e ba s i c p rin c i p l e a n d mo d e l o f f a ul t c a l c u l a t i o n a r e a n a l y z e dBy u s i n g s e r i a l a nd p a

8、 r a l l e l wa y s r e s p e c t i v e l y t o c a l c u l a t e t h e t i me f o r f a u l t t e s t i n gS i mu l a t i o n r e s u l t s s h o w t h a t t h e t i me wa s s i g n i fic a n t l y l o we r t h a n t he s e ria l p a r a l l e l c o mpu t i ng,a n d t h e v a l i d i t y o f t h e

9、me t ho d i s t e s t e d t h r o u g h t h e e x p e rime n t Ke y wor ds: Op e n MP,f a u l t c o mp ut a t i o n,pa r a l l e l c o mp ut a t i o n,s e r i e s c o mp u t a t i o n 0 引 言 故障计算是分析 电力系统动态 变化的基础 , 当 进行 电网整定计算 和定值 校验时 , 需要模 拟在各种 电网运行方式下 的故 障计 算 , 复杂 的计算 过程和较 大的计算量使传统的串行计算方法受到考验, 计算 速度

10、低, 因此, 提高故障计算速度是一项亟待解决的 问题。 多核 C P U的发展给并行计算技术创造 了条件 , 基 金 项 目 : 国 家 重 点 基 础 研 究 发 展 计 划 ( 9 7 3 计 划 ) ( 2 0 0 9 C B 7 2 4 5 0 8 1) ;重 庆 市 电 器 检 测 工 程 技 术 研 究 中 心 ( C S T C 2 0 1 1 p t - g c 7 0 0 0 9 ) 一28 一 并行计算是解决电力 系统耗时过多的重要途径。 目 前主流的并行计算 有分布式计算 、 多线程 技术和利 用 G P U计 算的并行技术 J 。分 布式 计算 主要利用 MP I 技术

11、将任务分配给多台计算机 , 计算速度快 , 但 是对算法的依赖性强 , 如果程序设计不当, 并 行效率 低 , 编程麻烦。文献 2 提出一种以 P c机群 为运行 平 台的粗粒度空 间并行算法 , 然而计算对算法依 赖 性强 , 容易造 成通讯量过大。多线程技术就是 通过 多核 C P U来实现并行 的技术 , 例如 O p e n MP , 相对于 其他方式 , 其 成本低 , 编程 比较简单 。文献 3 提 出 一种基于多核 处理器并行变步长算法 , 将耗 时部分 配置到多核 C P U进行处理 , 但是算法效率 的提 升并 学兔兔 w w w .x u e t u t u .c o m第

12、 5 3卷第 5期 2 0 1 6年3月 1 0日 电测与仪表 El e c t r i c a l M e a s u r e me nt& I n s t nu ne nt a t i on VO I 5 3 No 5 M a r 1 0, 2 0 1 6 不高。文献 4 提出了基于 G P U的并行潮流计算方 法 , 为基于 G P U计算的电力系统并行 潮流计算 的研 究提供了思路。虽然研究者在电力系统的并行计算 方法取得 了一定的研究 成果 _ 5 , 但是 目前 国内学 者还没有对 O p e n MP并行故障计算方式进行深入 的 研究与应用。 基于 O p e n M P拥有编程

13、简单、 功能扩展性高、 程 序可移植性好和支持增量并行化开发等优点, 已经 逐渐成为共享存储方式的并行编程标准 。充 分利用单机多核硬 件架构的快速发展 , 本文研究 基 于 O p e n MP的电力系统并行故障计算算法 , 并且与传 统计算算法的计算时间和加速比进行比较分析。 1 O p e n MP多核并行技术 并行编程的目 标是使不同的目标在不同的核上 运行, 得到最大的C P U使用率, 以提高计算速度。以 往的算法都是面向单线程的, 没有办法直接在多核 处理器上得到加速。多核开发要求开发人员要在代 码中添加线程 以利用 系统提供 的多个 内核 , 实行并 行的效果。如果采用操作系统

14、提供应用程序接 口, 会面临 C P U核数扩展问题。而 O p e n MP的问世成功 解决 了这些问题 , 可将串行程序转换成并行程序 , 充 分发挥多核处理器的性能优势, 大幅度提升运算 效率。 自A MD和 I n t e l 于 2 0 0 5年 推 出双核 处理器 以 来 , 主流芯片制造厂家的多核处理器 已占据主导 地位 , 可以预见 , 多核处理器架构在未来计算机领域 将有着强劲的发展趋势。在多核处理器上的并行编 程变得越来越重要 , 编写在不 同核数 C P U上运行的 通用并行程序 , 可充分发挥核心性能。 O p e n MP是 由一系列 硬件及软件供应商支 持的 共享内

15、存程序设计的工业标准, 具有使用简单、 支持 增量化并行、 自 然映射到多核架构等特点, 通过与标 准 C 、 c+ 、 F o r t r a n 语言结合起来 , 程序具有 良好的 可移植性 , 抽象程度高, 支持并行的增量开发 ” 。 其规范标准充分利用共享内存体系结构的特点, 避 免消息传递 的开销 , 功能实现相 对简单。其 编程模 型以线程为基础 , 采用 F o r k J o i n的方式。如 图 1所 示 , O p e n MP把程序看成一个大 的串行执行的并行结 构, 程序一开始只有一个主线程, 串行部分由主线程 执行 , 并行 区域 内嵌套多个子并行 结构。程序初 始

16、执行隐式任务区; 遇到下 面的并行结构 , 就创建 自己 的线程组, 任务分配给各线程组成员并行执行; 在执 行完并行结构之后 , 主线程恢复。需要在全部并行 程序结束以后才能执行后续的串行程序。F o r k -j o i n 模式的好处在于可以采用增量的方式开发程序, 对 循环进行并行化 , 循环开始时创建线程组 , 循环结 束 后就销毁线程组。 线程开始执行 厂 、 _ 1 个 区 域 l I 并行j L 、 、 一 , J 亍 代码 主线袒 厂 一 、 晰 区 域 J l 线 震 L 、 一 一 J 图 1 主线程 中的并行执行模式示意图 F i g 1 Di a g r a m o

17、f pa r a l l e l e x e c u t i o n mo d e i n a ma i n t h r e a d 2 故障计算基本原理及数学模型 故障计算 的导纳矩 阵是大型稀疏矩 阵, 方程组 的求解通常达到很高 阶的数量级 , 需要利用高性 能 并行计算。电力系统计算可以转化为一组大规模线 性方程组或非线性方程组 的求解 问题 , 线性方程组 的计算也可以转化为代数方程组的计算。原理上可 以将并行算法分成时 间并行算法 和空 间并行 算法 , 时间并行 算法是 通过 同时求解 多个积 分步 长来实 现, 算法通讯量大 , 收敛性较差 , 并行效率低 。针对 大型电力系统

18、的故障并行计算设计, 考虑到空间并 行策略对多核多线程处理器计算平台更具有借鉴意 义 , 应该向空间并行方向发展。 电力系统故障计算的重点为对故障状态下 网络 方程的求解 。网络方程分为阻抗型 网络方程与导纳 型网络方程两种形式 , 二者在数学上互 为逆矩 阵, 但在计算机中的算法却有很大差异。相对于节 点阻抗矩阵而言, 节点导纳矩阵具有对称性 、 稀疏性 和易于修改等优势 , 故本文采用导纳 型网络 方程进 行计算 。 在电力系统故障瞬间, 其导纳型网络方程可表 示为 : y =, ( 1 ) 式中 V 为故障时的网络节点三序电压列向量, , 为故障时的网络节点三序注入电流列向量, y 为故

19、 障节点三序导纳矩阵。 由于系统发生故障时发 电机的次暂态 电动势不 能突变, 其等值电流源的电流也不能突变, 因此故障 一29 学兔兔 w w w .x u e t u t u .c o m第 5 3卷第 5期 2 0 1 6年3月 1 0日 电测与仪表 El e c t r i c a l M e a s u r e m e n t I n s t r u m e n t a t i o n V0 1 5 3 N0 5 M a r 1 0。 2 01 6 时 网络节点三序注入电流 , 等 于故障前网络节点 三序注入电流 , , 即: , =, ( 0 ( 2 ) 导纳矩 阵具有可迭加 性

20、, 故 障时的 网络节 点三 序导矩阵 y 可通过故障前三序导纳矩阵 1 , 和故 障时修改导纳矩阵 川迭加形成 , 即: V y( : y( 。 + , y ( , ) ( 3 ) 式中 , 表示电网故 障重数 , 由于每一重故 障发生 的 地点和类型都不 同, 所形成 的修改导纳矩阵 也 不相同。 通过求解线性方程组 ( 1 ) 可以得 到网络节点 三 序 电压列向量 , 根据 和各支路 、 变压器 的三 序阻抗即可求 出所需 支路 和变压器 的三序 电流 , 从 而组合得到故障时系统各节点的三相电压 以及各支 路和变压器的三相 电流 。 3 O p e n MP并行故障计算方法 在并行计

21、算 中, 任务被分配给多个线程 , C P U各 核心并行执行线程 , 从而实现加快计算速度 的 目的。 但是编程人员必须确保各个线程之间没有数据相关 性 , 即各个线程必须是独立运行 的。在求取 电网继 电保护整定值 时, 需要模拟各种 可能的情况进 行大 量的故障计算 。而在一次故障计算的过程中数据之 间需要不断地循环迭代 , 如果对其进 行并行计算 , 则 会导致计算的效率比较低 。 例如双核 C P U加速比仅 为 1 3左右 , 四核 C P U加速 比仅为 2 2左右。而 电 网中不 同设 备发生故障 , 同一设 备发生不 同故障 的 情况之间是完全独立 的, 不存在任何 数据联系

22、 , 所 以 针对电力系统中不同设备 的不同故障情况进行并行 计算 , 可以充分发挥多核处理器的优势 , 达到较高的 加速比。 在 网络方程 的求解过程 中, 通过 L D U分解法 可 将节点导纳矩阵分解为对角矩阵 D和三角矩阵 , 之 后根据 D和 中的元素 即可求解 得 出节点 阻抗矩 阵。将 L D U分解法的计算过程写在独立 的函数 中, 不同的故障计算过程分配给不同的线程, 各个线程 在运行时均可以调用此函数进行计算。 使用# p r a g ma o m p p a r a l l e l s e c t i o n s 并行指导指令 来进行线程的分配 , 其 中每个线程通过#

23、p r a g ma o m p s e c t i o n指令进行 调用。根据故 障情况 , 将 所有独 立 的故障计算过程均分 给各个线 程, 每个线程进行 一 次或 多次 完 整 的故 障计 算 。并 行 程 序 代 码 如 下 所示 : 一3 0 一 # p r a g ma o mp p a r a l l e l s e c t i o n s # p r a g ma o mp s e c t i o n C a l c u l a t e l ( ) ; #p r a g ma o mp s e c t i o n C a l c u l a t e 2 ( ) ; #p r

24、a g ma o mp s e c t i o n C a l c u l a t e N( ) ; 其 中, C a l c u l a t e 1 ( ) 、 C a l c u l a t e 2 ( ) C a l c u l a t e N( ) 为各线 程调用 的故 障计算 函数。当线程 数远 大 于 C P U核心数时, 同一线程可调用多个故障计算 函数 , 并尽量使各个线程的负载保持均衡。 多核 C P U在同一 时刻可 以运行多个线程 , 如双 核 C P U可 以同时运行两个线程 , 四核 C P U可 以同时 运行 四个线程 , 这样就能够使计算速度和计算 效率 随着 C

25、 P U核数的增加成接近正 比的增长。 本文程序设计的思想可归纳为形成故障状态下 的节点三序导纳矩阵 y 并求解网络方程; 面对电 力系统成千上万次的故障计算 , 每一次计算需要求 解一次网络方程, 而针对这些独立的网络方程求解 过程, 利用 O p e n M P 制导指令将其进行并行化处理, 使 C P U的多个核心同时求解多个网络方程 。并行故 障计算程序的整体流程如图 2所示。 图 2 多线程并行故 障计算流程 Fi g 2 Pa r a l l e l f a u l t c o mpu t a t i o n p r o c e s s wi t h mu l t i t h r

26、e a d s 学兔兔 w w w .x u e t u t u .c o m第 5 3卷第 5期 2 0 1 6年3月 1 O日 电测与仪表 El e c t r i c a l M e a s ur e me n t I n s t r u m e n t a t i o n VO 1 5 3 No 5 M a r 1 0, 2 0 1 6 3 1 并行性能分析 评价一个算法 的优 劣有其各 自指标 , 针对并行 计算性能的评价指标主要有 : 运行时间 、 加 速 比、 效 率和并行算法的成本 。 ( 1 ) 运行时间: 从算 法开始执行 到执行 结束 , 算 法在并行计算机上求解一个问题

27、所需要的时间, 用 表示 ; ( 2 ) 加速比和效率 : 定义加速 比 S P评价算法 的 并行性对运行时间的改进程度 , 是一个 问题 最快的 串行算法的运行时间 与求解统一问题 的并行算法 的运行时间 的比值 , 其 中 P表示处理器核数。效 率 表示为加速 比 s P与所需处理器数 目P的比值 , 效率反映系统中处理器的利用情况 ; ( 3 ) 并行算法的成本 : 定义成本 c表示为算法运 行 的时间和处理器的数 目的乘积 , C=T P P, 成本等 于最坏情况下求解一个问题时的总的执行步数。 4 算法测试 本 文 在 V i s u a l S t u d i o 2 0 1 0

28、平 台 上 对 基 于 O p e n M P的并行故障计算方法进行测试, 实验程序使 用 C语 言编 写。分 别对 I E E E 5 0 、 I E E E 1 0 0 、 I E E E 一 2 0 0 、 I E E E 3 0 0 、 I E E E - 5 0 0系统 的故 障计算 进行 了测 试。为减小数据受其他程序 的影响 , 取十次测试 的 均值作为比较对象 。原始数据对比见表 1 。 表 1 原始数据对比 T a b 1 Or i g i n a l d a t a c o n t r a s t 节 点数 矩阵维数 故障类型 选择计算母线条数 t E E E 5 0 1

29、5 01 5 0 单相短路 , 两相短路接地 I E E E 一 1 0 0 3 0 0 3 0 0 单相短路 , 两相短路接地 I E E E - 2 0 0 6 0 0 6 0 0 单相短路 , 两相短路接地 I E E E 3 0 0 9 0 0 9 0 0 单相短路 , 两相短路接地 I E E E - 5 0 0 1 5 0 01 5 0 0单相短路 , 两相短路接地 2 O 2 0 2 O 2 0 2 0 节点网络需要建立 3 n 3 n维三序节点导纳矩 阵 , 矩阵维数随着节点数的增加而大幅度增长 , 计算 时间也变得更长。为便于纵向 比较 , 不论 电网节点 数 目增长到多大,

30、 均只对其 中 2 0条母线的单相短路 故障和两相短路接地故障情况进行计算。程序分别 在拥有单核( 2 4 G H z , 2 G B内存 ) 、 双核 ( 2 4 G H z , 4 G B内存 ) 与四核 C P U( 2 4 G Hz , 4 G B内存 ) 的计算 机上进行测试。结果如表 2所示 : 从表 2可以看出, 多核并行计算相对于单核串行 计算的时间效率有了明显的提升 , 计算 时间随核数 的增加而明显减少 , 双核与 四核的加速 比分别超过 了 1 9 5与 3 8 4 。理论上讲 , 双核和四核 C P U的加速 比应该分别为单核 C P U加速 比的 2倍和 4倍 , 不

31、过 , 因为线程调度 、 任务划分 以及负载不 均衡 等问题使 并行程序无 法随着 C P U核 心数增 长而严格地成倍 增长。 表 2 多核并行计算与单核串行计算结果比较 T a b 2 P e r f o r ma n c e c o mp a r i s o n b e t w e e n mu l t i c o r e p a r a l l e l c o mp u t a t i o n a n d s i n g l e c o r e s e ri a l c o mp u t a t i o n 表 3效率与运行成本 Ta b 3 Ef f i c i e n c y a

32、n d o p e r a t i o n c o s t 从表 3可以看 出, 随着处理器数 目的增加 , 算法 的运行成本不断增 大, 这是 因为处理器 间的通信 占 用了时间。不过 , 三者的差异是很小的 , 可 以忽略不 计。此外 , 多核方式受加速 比非整数倍增长的影 响, 效率 比 1略低 , 基本接近于 1 。 根据表 2分析 , 随着电网节点数的增加 , 加速 比 会呈现增加 的趋势 。这是因为节点数增 加时 , 故 障 计算 的计算量增加 , 每条线程的执行时 间就会增长 , 这样多线程的开销对资源消耗所 占的比例相应降 低 , 加速 比就会有所提升 。变化过程可通过图 3表示 出来 : 从 C P U的使用率同样能够体现并行技术的优 势。以双核四线程、 内存为 4 G的计算机为例, 采用 传统串行编程方法和基于 O p e n MP的并行编程方法 分别对 I E E E - 2 0 0节点电网的故障进行计算, 并对 C P U使用率进行实时跟踪, 结果如图4和图5所示。 学兔兔 w w w .x u e t u t u .c o m学兔兔 w w w .x u e t u t u .c o m学兔兔 w w w .x u e t u t u .c o m

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 其他杂项

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com