Kripke:Kripke是一种简单,可扩展的3D Sn确定性粒子传输代码

时间:2024-05-29 23:46:05
【文件属性】:

文件名称:Kripke:Kripke是一种简单,可扩展的3D Sn确定性粒子传输代码

文件大小:133KB

文件格式:ZIP

更新时间:2024-05-29 23:46:05

cpp proxy-application C++

克里普克 Kripke是一种简单,可扩展的3D Sn确定性粒子传输代码。 其主要目的是研究数据布局,编程范例和体系结构如何影响Sn传输的实现和性能。 Kripke的主要目标是研究不同的数据布局如何影响指令,线程和任务级别的并行性,以及对整体求解器性能的影响。 Kripke支持使用方向(D),组(G)和区域(Z)的所有六个跨步顺序(或“嵌套”)存储角通量(Psi),并提供专门为每个嵌套编写的计算内核。 大多数锡传输代码都是围绕这些嵌套之一设计的,这种灵活性缺乏灵活性,在移植到新的体系结构和编程范例时会导致软件工程折衷。 早期研究发现,问题尺寸(区域,组,方向,散布顺序)和缩放比例(线程数和MPI任务)可以对每个嵌套的性能产生深远的影响。 据我们所知,这是Kripke独有的功能,应提供有关数据布局如何影响Sn求解器性能的关键见解。 提供了一种基于MPI的异步并行扫描算法,该算法采用了从借用


【文件预览】:
Kripke-develop
----tpl()
--------caliper()
--------camp()
--------raja()
--------README.txt(651B)
--------googletest()
--------umpire()
--------chai()
----blt()
----.gitmodules(759B)
----host-configs()
--------llnl-toss3-gcc7.1.cmake(738B)
--------llnl-bgqos-clang.cmake(817B)
--------llnl-blueos-V100-nvcc-clang.cmake(1KB)
--------llnl-toss3-clang8.cmake(723B)
--------llnl-toss3-intel18.cmake(694B)
--------llnl-toss3-gcc8.1.cmake(784B)
--------llnl-blueos-P100-nvcc-clang.cmake(1KB)
----src()
--------Kripke.h(3KB)
--------.project(807B)
--------kripke.cpp(17KB)
--------KripkeConfig.h.in(695B)
--------.cproject(7KB)
--------Kripke()
----scripts()
--------gitlab()
--------radiuss-spack-configs()
--------uberenv()
----.gitlab()
--------lassen-jobs.yml(4KB)
--------lassen-templates.yml(985B)
--------quartz-jobs.yml(1KB)
--------corona-jobs.yml(450B)
--------corona-templates.yml(947B)
--------quartz-templates.yml(2KB)
----CMakeLists.txt(7KB)
----LICENSE(2KB)
----COPYRIGHT(2KB)
----README.md(13KB)
----RELEASE(567B)
----NOTICE(1KB)
----.gitignore(29B)
----.gitlab-ci.yml(4KB)
----CHANGELOG(372B)

网友评论