并行

浅谈Pthread

最近由于疫情,一直宅在家里,日子过得非常划水。不过也是趁着这段时间的闲工夫,整理下并行计算一些基本点和常用实现方法。这里就不按照顺序展开了,先介绍下共享存储编程模式中的重要基础–pthread。

聊聊高性能计算的硬件

在美帝summit重回顶点之后,我们国内的超算厂商和单位也开始加足马力,完成下一次的超越。虽然之前无论是神威太湖之光还是天河2的算力都可以霸榜,但是一看功率就分分钟能气死桑伯格。但是今天不想聊这个,而是说一说未来高性能计算硬件上可以用到的技术展望。当然由于知识有限,只是简单的谈一谈实现计算功能的两大件:处理器+存储器。

线程初探

总体介绍 线程(Thread),有的时候也被称为轻量级进程(Lightweight Process,LWP),是程序执行流中的最小单元,这个我们看到线程被冠以了xxx进程的名字,先卖个关子,在介绍linux中的线程性质的时候我们就可以清楚的体会到这个名字的内涵了。再说回来,一个标准的线程由线程ID,当前指令指针(PC),寄存器集合和堆栈组成。通常我们直接观察一个进程的时候,可以看到这样的视图:一个进程由一个到多个线程组成,各个线程之前共享程序的内存空间(包括代码段,数据段,堆等)及一些进程级的资源(如打开文件和信号)。