
科学计算
文章平均质量分 91
迷途小书童爱看星星
微信公众号同名。
非科班,但热爱技术,希望能和大家交流技术问题
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
2.初探MPI——点对点通信(阻塞)
阻塞点对点通信原创 2024-05-04 19:36:15 · 1660 阅读 · 2 评论 -
1.初探MPI——MPI简介
Message Passing Interface (MPI) 是一种标准化的消息传递库接口规范。该标准是消息传递模型的一种标准,该标准大量运用在科学计算领域。详尽的介绍参看。MPI简介,消息传递模型rank 和 size初始化和结束使用MPI进行简单的hello world小程序编写。原创 2024-04-30 16:48:08 · 4512 阅读 · 0 评论 -
C/C++实现高性能并行计算——1.pthreads并行编程(下)
在上一篇文中讲到竞争条件和临界区,以及对应的解决方案——忙等待或者互斥量(尽量使用互斥量),主要针对线程之间的运行顺序没有先后的差别。这一节主要针对的是线程之间的运行是有先后顺序的情况。信号量,semaphore.h库产生,其数据类型是sem_t。其相关函数的使用。条件变量,其数据类型是。其相关函数的使用。路障,线程在实现的时候停下来同步,其实现方式有3种:忙等待&互斥锁信号量条件变量(其本身实现就包含互斥锁)。前两种方式代码变量重用性差。该方式是最好的!!!原创 2024-04-27 21:17:38 · 872 阅读 · 2 评论 -
C/C++实现高性能并行计算——1.pthreads并行编程(中)
在C++实现高性能并行计算——1.pthreads并行编程(上)一文中介绍了pthreads的基本编程框架,但是不是随便什么程序都像上一文中轻松多线程编程,会遇到许多问题,涉及到许多底层逻辑。本篇文章就是在讲其底层逻辑。或动态初始化:使用函数。这个函数提供了一种灵活的方式来设置互斥锁的属性,不同于使用 PTHREAD_MUTEX_INITIALIZER 进行静态初始化。动态初始化允许程序在运行时根据需要创建和配置互斥锁。原创 2024-04-27 18:20:46 · 1920 阅读 · 1 评论 -
C++实现高性能并行计算——1.pthreads并行编程(上)
共享内存系统中的任意处理器核都能访问所有的内存区域。因此,协调各个处理器核工作的一个方法,就是把某个内存设为“共享”进程,不共享内存,是操作系统资源分配的基本单元。比如QQ程序运行占一个进程。线程,共享内存,是程序执行的基本单位。比如QQ里面的视频聊天占QQ这个进程中的一个线程。一个程序至少有一个进程,一个进程至少有一个线程,一个线程只属于一个进程。单个进程可能有多个线程// 定义结构体用于传递数据给线程int rank;// 线程的标识(ID或rank)/*原创 2024-04-27 00:25:16 · 1518 阅读 · 1 评论 -
常数和特殊函数(测试——jupyter notebook发布到CSDN)
测试jupyter notebook上传到csdn原创 2024-04-05 20:12:31 · 829 阅读 · 1 评论