56、高性能计算在密码分析与地球环境模拟中的应用

高性能计算在密码分析与地球环境模拟中的应用

1. 引言

在当今的科技领域,高性能计算在多个关键领域发挥着至关重要的作用,比如密码分析和地球环境模拟。本文将深入探讨两个重要的研究成果:一是对生成器 A5/1 的并行逻辑密码分析,二是地球模拟器中心开发的多尺度地球环境模拟器(MSSG)的高性能计算应用。

2. 生成器 A5/1 的并行逻辑密码分析
2.1 原始密钥与碰撞情况
LFSR 1 LFSR 2 LFSR 3
原始密钥:2C1A7 3D35B9 EEAF2
碰撞 1:2C1A7 3E9ADC EEAF2
碰撞 2:2C1A7 3D35B9 77579

通过上述表格可以清晰地看到生成器 A5/1 的原始密钥以及两种不同的碰撞情况。这为后续的密码分析提供了重要的数据基础。

2.2 密码分析方法与成果

为了解决 A5/1 的密码分析问题,专门构建了一个网格系统。尽管解决该密码分析问题耗时较长(从 1 天到 16 天不等),但所有测试都能正确解决。这一成果通过实验证实了在公开可用的分布式计算系统(如 BOINC)中对 A5/1 进行密码分析的可能性。而且,该方法不需要任何特殊硬件,在网页上还提供了对生成器 A5/1 密码分析问题进行编码的 CNFs。

3. 多尺度地球环境模拟器(MSSG)
3.1 开发背景与目标

目前,研究人员致力于使用耦合的大气 - 海洋模型来理解气候/天气系统。地球模拟器中心开发了多尺度地球环境模拟器(MSSG),这是一个耦合的非静力大气 - 海洋 - 陆地通用环流模型,旨在在地球模拟器上实现超高分辨率和高性能计算。当该耦合模型开发完成并能进行各种模拟时,有望为我们提供关于地球系统的更详细信息。

3.2 模型描述
  • 大气组件(MSSG - A)

    • 由非静力、全压缩通量形式的动力学以及 Smagorinsky - Lilly 类型的参数化组成,用于亚网格尺度混合、表面通量、混合相云微物理、积云对流过程和简单辐射方案。
    • 其一组预后方程如下:
      [
      \begin{align }
      &0 = \frac{\partial}{\partial t}\left(\frac{\rho}{G_{13}^
      G_{21}^ }\right) + \frac{1}{aG_{13}^ }\frac{\partial}{\partial \lambda}\left(\frac{\rho u}{G_{21}^ }\right) + \frac{1}{a\cos\phi G_{21}^ }\frac{\partial}{\partial \phi}\left(\frac{\rho v\cos\phi}{G_{13}^ }\right) + \frac{\partial}{\partial z}\left(\frac{\rho w}{G_{23}}\right)\
      &\frac{\partial}{\partial t}\left(\frac{\rho u}{G_{13}^
      G_{21}^ }\right) + \frac{1}{aG_{13}^ }\frac{\partial}{\partial \lambda}\left(\frac{\rho u^2}{G_{21}^ }\right) + \frac{1}{a\cos\phi G_{21}^ }\frac{\partial}{\partial \phi}\left(\frac{\rho uv\cos\phi}{G_{13}^ }\right) + \frac{\partial}{\partial z}\left(\frac{\rho uw}{G_{23}}\right) = -\frac{1}{aG_{13}^ }\frac{\partial P’}{\partial \lambda} + \frac{\rho v}{a}\tan\phi f - \frac{\rho w}{G_{13}^ }\frac{\partial G_{13}^ }{\partial z} + F_r\
      &\frac{\partial}{\partial t}\left(\frac{\rho v}{G_{13}^ G_{21}^ }\right) + \frac{1}{aG_{13}^ }\frac{\partial}{\partial \lambda}\left(\frac{\rho uv}{G_{21}^ }\right) + \frac{1}{a\cos\phi G_{21}^ }\frac{\partial}{\partial \phi}\left(\frac{\rho v^2\cos\phi}{G_{13}^ }\right) + \frac{\partial}{\partial z}\left(\frac{\rho vw}{G_{23}}\right) = -\frac{1}{a\cos\phi G_{21}^ }\frac{\partial P’}{\partial \phi} - \frac{\rho u}{a}\tan\phi f - \frac{\rho w}{G_{21}^ }\frac{\partial G_{21}^ }{\partial z} + F_r\
      &\frac{\partial}{\partial t}\left(\frac{\rho w}{G_{23}}\right) + \frac{1}{aG_{13}^
      }\frac{\partial}{\partial \lambda}\left(\frac{\rho uw}{G_{21}^ }\right) + \frac{1}{a\cos\phi G_{21}^ }\frac{\partial}{\partial \phi}\left(\frac{\rho vw\cos\phi}{G_{13}^ }\right) + \frac{\partial}{\partial z}\left(\frac{\rho w^2}{G_{23}}\right) = -\frac{\partial P’}{\partial z} - \rho g + \frac{\rho u}{a}f\sin\phi + \frac{\rho v}{a}f\cos\phi + F_r\
      &\frac{\partial P’}{\partial t} + \vec{v}\cdot\nabla P’ + (\gamma - 1)P’\nabla\cdot\vec{v} = (\gamma - 1)\kappa\nabla^2T + F\
      &P = \rho RT\
      &G_w^
      = \frac{1}{G_{13}^ G_{21}^ }\left(\frac{\rho u}{G_{21}^ }G_{13}^ + \frac{\rho v}{G_{13}^ }G_{21}^ + \rho w\right)
      \end{align*}
      ]
    • 陆地上,使用桶模型作为简化的陆地模型来计算地面温度和地面湿度。上边界条件设置为瑞利摩擦层,区域版本的侧向边界条件采用海绵型边界条件。区域版本可通过选择目标区域进行单向嵌套,也支持双向嵌套,还可同时选择多个区域进行并行计算。
  • 海洋组件(MSSG - O)

    • 使用具有 Boussinesq 近似的不可压缩和静力方程。
    • 其一组方程如下:
      [
      \begin{align }
      &\frac{\partial c}{\partial t} = -\vec{v}\cdot\nabla c + F_c\
      &\frac{\partial T}{\partial t} = -\vec{v}\cdot\nabla T + F_T\
      &0 = \frac{1}{r^2}\frac{\partial}{\partial r}(r^2\rho w) + \frac{1}{r\cos\phi}\frac{\partial}{\partial \lambda}(\rho u\cos\phi) + \frac{1}{r\cos\phi}\frac{\partial}{\partial \phi}(\rho v)\
      &\frac{\partial u}{\partial t} = -\frac{1}{r\cos\phi}\frac{\partial P’}{\partial \lambda} - \frac{2}{r}v\tan\phi - \frac{2}{r}w\cos\phi f + \frac{\rho v}{r}f\sin\phi - \frac{\rho w}{r}f\cos\phi + F_{\lambda}\
      &\frac{\partial v}{\partial t} = -\frac{1}{r}\frac{\partial P’}{\partial \phi} + \frac{2}{r}u\tan\phi - \frac{2}{r}w\sin\phi f - \frac{\rho u}{r}f\sin\phi - \frac{\rho w}{r}f\cos\phi + F_{\phi}\
      &\frac{\partial w}{\partial t} = -\frac{\partial P’}{\partial r} - \rho g + \frac{\rho u}{r}f\cos\phi + \frac{\rho v}{r}f\sin\phi + F_r\
      &\rho = \rho(c, T, P_0)\
      &\frac{dP_0}{dr} = -g\rho_0
      \end{align
      }
      ]
    • 海洋组件中,在开放海洋的侧向边界使用海绵层。海洋与陆地之间的侧向边界条件定义为 $\frac{\partial S}{\partial t} = \frac{\partial T}{\partial t} = 0$ 和 $\vec{v} = 0$,底部边界条件采用无垂直速度的 Neumann 条件,上边界条件由风的动量通量、大气观测数据中的热量和淡水通量给出。
  • 网格配置
    采用阴阳网格系统,其特点是通过重叠的三维两个面板来覆盖球体。该系统可以避免经纬度网格系统中南北极等奇点问题,并且与传统的经纬度网格系统相比,具有增大时间步长的优势。

  • 差分方案

    • MSSG - A 和 MSSG - O 都使用 Arakawa C 网格。MSSG - A 采用地形跟随垂直坐标和 Lorenz 类型的变量分布,MSSG - O 在垂直方向使用 z 坐标系统。
    • 在时间离散化方面,有 2 阶、3 阶和 4 阶龙格 - 库塔方案以及带 Robert - Asselin 时间滤波器的跳跃方案可供选择。MSSG - A 采用 3 阶龙格 - 库塔方案,本研究中 MSSG - O 使用带 Robert - Asselin 时间滤波器的跳跃方案。
    • 对于动量和示踪剂平流计算,有多种离散化方案可供选择。本研究中,MSSG - A 使用 5 阶迎风方案,MSSG - O 使用中心差分方案。由于大气中垂直声速比水平速度占主导,大气组件采用水平显式垂直隐式(HEVI)方案;海洋中声速是大气的三倍,采用隐式方法并求解泊松方程:
      [
      \begin{align }
      &\nabla\cdot\vec{G}\cdot\nabla P’ = B\
      &B = \frac{1}{r^2}\frac{\partial}{\partial r}\left(r^2\rho G_{r}w\right) + \frac{1}{r\cos\phi}\frac{\partial}{\partial \lambda}\left(\rho G_{\lambda}u\cos\phi\right) + \frac{1}{r\cos\phi}\frac{\partial}{\partial \phi}\left(\rho G_{\phi}v\right)
      \end{align
      }
      ]
  • 代数多重网格方法在泊松求解器中的应用
    为了解决上述泊松方程,使用了代数多重网格(AMG)方法。采用的 AMG 库具有以下特点:
    • 基于聚合型 AMG 开发。
    • 作为 Krylov 子空间算法中的预条件器使用。
    • 采用不完全 LU 分解(ILU)作为平滑器,即使对于结构不良的矩阵也能显示出良好的计算性能。
    • 使用局部 ILU 进行并行化,并保持快速收敛速度。
    • 采用无平滑的聚合并带有回溯过程,实现了显著的快速收敛。
3.3 地球模拟器上的实现
  • 编码风格
    MSSG 由非静力大气、静力/非静力海洋和简化陆地组件组成,代码约 200,000 行,使用 Fortran 90 编写,采用自动分配方案以节省内存大小。使用 MODULE 特性来保持代码的可维护性和可读性,并使用了消息传递接口(MPI - 2)的扩展,以适应地球模拟器的可扩展性。

  • 分布架构与通信
    架构和数据结构基于域分解方法。在阴阳网格系统中,采用一维分解可能会导致通信成本不平衡。通过对比一维和二维分解(以 16 个进程的分解为例),发现二维分解的通信量更少。因此,MSSG - A 和 MSSG - O 都采用了二维分解。

graph LR
    A[一维分解] --> B(通信数据量小但通信次数多)
    C[二维分解] --> D(通信量少)
  • 节点间/节点内并行架构与向量处理
    为了追求高计算性能,采用了三级并行性:节点间并行处理用于分布式内存架构,节点内并行处理用于共享内存架构,向量处理用于单个处理器。节点间使用基于 MPI 的并行性进行通信。节点内操作的微任务化在选择长向量长度时能显著提高性能。为了使 8 个线程的微任务能均衡分担计算负载,需要垂直层和纬度网格点数是 8 的倍数。本研究中,MSSG - A 选择了 32 个垂直层,MSSG - O 选择了 40 个垂直层。
    在处理域分解的节点间并行化时,考虑了两种 DO 循环方法来保持循环长度:一种是选择纬度和经度方向作为 DO 循环的轴,采用双循环结构;另一种是将经度和纬度方向的循环轴组合,采用单 DO 循环结构。对比结果显示,无列表结构的单 DO 循环结构性能最佳,但随着循环长度增加,双循环和单循环结构的性能差异减小。由于超高分辨率(循环长度超过 400,对应全球分辨率高于 25km)的要求,最终采用双 DO 循环结构,因为它有望达到与单 DO 循环结构相同的高性能,且编码风格更简单。

  • MSSG - O 中陆地面积的内存和成本降低
    通过使用二维域分解,MSSG - O 中无需对陆地进行计算。而在一维域分解中,通常需要对陆地进行计算,这体现了二维分解在节省计算资源方面的优势。

综上所述,无论是生成器 A5/1 的密码分析还是多尺度地球环境模拟器(MSSG)的开发与应用,都展示了高性能计算在不同领域的重要价值和巨大潜力。随着技术的不断发展,相信这些研究将为我们带来更多的突破和新的发现。

4. 性能分析与初步验证
4.1 性能分析

在地球模拟器上对 MSSG 进行了性能分析,重点关注了动力学核心中平流项的计算性能。通过采用二维分解和合理选择向量长度,计算性能得到了较好的表现。当向量长度接近 256 的倍数时,计算性能更佳。

以下是不同向量长度下动力学核心平流项计算性能的对比表格:
| 向量长度 | 计算性能 |
| ---- | ---- |
| 接近 256 倍数 | 良好 |
| 其他长度 | 相对较差 |

同时,在考虑 DO 循环结构时,虽然无列表结构的单 DO 循环结构在性能上表现最佳,但由于超高分辨率的要求,最终选择了双 DO 循环结构。在超高分辨率下(循环长度超过 400,对应全球分辨率高于 25km),双 DO 循环结构有望达到与单 DO 循环结构相同的高性能,且编码风格更简单。

graph LR
    A[向量长度接近 256 倍数] --> B(计算性能良好)
    C[其他向量长度] --> D(计算性能相对较差)
    E[单 DO 循环结构] --> F(性能最佳)
    G[双 DO 循环结构] --> H(超高分辨率下性能接近单循环结构且编码简单)
4.2 初步验证

对 MSSG 进行了初步验证,包括预报实验等。通过这些实验,验证了模型的有效性和可靠性。

  • 大气组件验证 :MSSG - A 在模拟大气过程中,能够较好地捕捉到大气的动力学特征和物理过程。例如,在模拟云微物理和积云对流过程时,结果与实际观测情况相符。
  • 海洋组件验证 :MSSG - O 在模拟海洋过程中,对于海洋的温度、盐度和环流等方面的模拟结果也较为准确。通过与实际海洋观测数据的对比,验证了模型的可靠性。
5. 总结与展望
5.1 总结

本文介绍了两个重要的研究成果:生成器 A5/1 的并行逻辑密码分析和多尺度地球环境模拟器(MSSG)的高性能计算应用。

  • 在生成器 A5/1 的密码分析方面,通过构建专门的网格系统,成功实现了对 A5/1 的并行逻辑密码分析。实验证实了在公开可用的分布式计算系统中对 A5/1 进行密码分析的可能性,且该方法不需要特殊硬件。
  • 在 MSSG 的开发与应用方面,详细介绍了其大气组件、海洋组件、网格配置、差分方案等模型描述,以及在地球模拟器上的实现方法,包括编码风格、分布架构与通信、节点间/节点内并行架构与向量处理等。通过性能分析和初步验证,证明了 MSSG 在超高分辨率和高性能计算方面的有效性和可靠性。
5.2 展望
  • 密码分析领域 :未来可以进一步探索更高效的密码分析方法,提高密码分析的速度和准确性。同时,可以将该方法应用于更多的密码系统,为信息安全提供更有力的保障。
  • 地球环境模拟领域 :可以继续优化 MSSG 模型,提高其模拟精度和计算效率。例如,进一步改进网格配置和差分方案,采用更先进的并行计算技术等。此外,还可以将 MSSG 应用于更多的地球环境研究领域,如气候变化预测、自然灾害预警等,为人类应对地球环境变化提供更科学的依据。

总之,高性能计算在密码分析和地球环境模拟领域都具有广阔的应用前景。随着技术的不断发展,相信这些研究将为我们带来更多的突破和新的发现,为人类社会的发展做出更大的贡献。

基于部落竞争成员合作算法(CTCM)融合动态窗口法DWA的无人机三维动态避障方法研究,MATLAB代码 动态避障路径规划:基于部落竞争成员合作算法(CTCM)融合动态窗口法DWA的无人机三维动态避障方法研究,MATLAB 融合DWA的青蒿素优化算法(AOA)求解无人机三维动态避障路径规划,MATLAB代码 基于动态环境下多智能体自主避障路径优化的DWA算法研究,MATLAB代码 融合DWA的青蒿素优化算法AOA求解无人机三维动态避障路径规划,MATLAB代码 基于DWA的多智能体动态避障路径规划算法研究,MATLAB代码 融合动态窗口法DWA的粒子群算法PSO求解无人机三维动态避障路径规划研究,MATLAB代码 基于粒子群算法PSO融合动态窗口法DWA的无人机三维动态避障路径规划研究,MATLAB代码 基于ACOSRAR-DWA无人机三维动态避障路径规划,MATLAB代码 基于ACOSRAR-DWA无人机三维动态避障路径规划,MATLAB代码 基于DWA的动态环境下无人机自主避障路径优化,MATLAB代码 基于DWA的动态环境下机器人自主避障路径规划,MATLAB代码 基于城市场景下RRT、ACO、A*算法的无人机三维路径规划方法研究,MATLAB代码 基于城市场景下无人机三维路径规划的导航变量的多目标粒子群优化算法(NMOPSO),MATLAB代码 导航变量的多目标粒子群优化算法(NMOPSO)求解复杂城市场景下无人机三维路径规划,MATLAB代码 原创:5种最新多目标优化算法求解多无人机协同路径规划(多起点多终点,起始点、无人机数、障碍物可自定义),MATLAB代码 原创:4种最新多目标优化算法求解多无人机协同路径规划(多起点多终点,起始点、无人机数、障碍物可自定义),MATLAB代码 高维超多目标优化:基于导航变量的多目标粒子群优化算法(NMOPSO)的无人机三维
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值