CMakeLists.txt编写指北
CMake是一款在大型项目中常用的跨平台编译构建工具,如果只是使用别人项目中已经部署好的CMake,其实很容易。但是如果想要在自己的项目中使用CMake,说实话我并没有找到讲得非常贴合我的需求的教程,因为它们大多都讲得比较浅(因为我之所以想使用CMake就是因为我的项目有一点点复杂,简单的教程并不能覆盖我的需求)。本文假设你已经有非常扎实的编译链库基础, 并且了解CMake的简单使用 ,主要讲解CMake中一些常用的函数及变量。
CMake是一款在大型项目中常用的跨平台编译构建工具,如果只是使用别人项目中已经部署好的CMake,其实很容易。但是如果想要在自己的项目中使用CMake,说实话我并没有找到讲得非常贴合我的需求的教程,因为它们大多都讲得比较浅(因为我之所以想使用CMake就是因为我的项目有一点点复杂,简单的教程并不能覆盖我的需求)。本文假设你已经有非常扎实的编译链库基础, 并且了解CMake的简单使用 ,主要讲解CMake中一些常用的函数及变量。
Doxygen是一款非常好用的代码文档工具,在大部分情况下,你只需要在写代码的时候顺便按照指定格式写上一些注释,随后使用doxygen就能自动帮你生成一套文档。本文将简单讲解如何使用Doxygen这一工具。
在使用Win10远程桌面的时候经常会提示如下图的“安全证书存在问题”,这代表当前连接确实可能是不安全的,特别是在非私有网络中。本文介绍如何为Win10远程桌面添加SSL证书。
本文简要记录一些我用过的git的小技巧。(大佬请绕道)
一直知道MPI有好几种Send: MPI Send 、 MPI Bsend 、 MPI Ssend 、 MPI Rsend 、 MPI Isend 、 MPI Ibsend 、 MPI Issend 、 MPI Irsend MPI Send init 之类的,但是一直没搞明白它们有什么区别,本文介绍这些东西之间有啥区别。
Allreduce是MPI中重要的collective操作,有研究工作显示MPI Allreduce是使用率以及花费时间最多的MPI操作。本文归纳整理当前领域内一些关于Allreduce算法已有的研究工作。
经常在各种地方看到SST,也听别人提起过SST,于是我上了一下SST的官网,我看了一下首页,emmmm……是我太菜了,我看不懂它想表达什么,经过一番研究,终于大致搞明白这是个什么玩意了。本文将按照我的思路介绍一下SST究竟是个啥
<script type="text/javascript" src="https://unpkg.com/mathjax@2/MathJax.js?config=TeX AMS MML HTMLorMML" </script Dragonfly是一种现在比较时髦的拓扑结构,它由John Kim等人在2008年的论文 Technology Driven, Highly Scalable Dragonfly Topology 中提出,它的特点是网络直径小、成本较低,对于高性能计算有着非常大的优势。现在已经被运用在使用Cray XC系列网络的各种超算中<sup [1]</sup ,如2017年11月排名第3的超算PIZ DAINT、2018年11月排名第6的超算TRINITY、2016年11月排名第5的超算CORI。未来也将要被应用在使用Slingshot网络的许多超算中,如:最新一期2021年6月排名第5的Perlmutter超算。
ROSS(Rensselaer’s Optimistic Simulation System)是一个 乐观的并行离散事件模拟器 的库。通过调用这个库我们能够较为轻松地将离散事件模拟并行化,大大缩短运行时间。它有两个特点:1. 它能够并行,并且可扩展性较好,原因请见第二点特点。2. 它采用了乐观的离散事件模拟方法,简单来解释就是每个进程都根据自己已知的情况尽量向前模拟即可,然后隔三差五地进行一次同步,如果发现因为有错过某些事件导致模拟错误,则进行回滚。
在docker的使用过程中,尝尝会因为docker自建默认网络和现有网络的网段相冲突导致有些网络无法访问 本文记录如何修改docker默认网段以及docker compose中的网段