![](https://img-blog.csdnimg.cn/20190918135101160.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
计算机基础
文章平均质量分 92
计算机基础,包括操作系统、编译原理等
iamttp
用心写文章,踏实学技术
展开
-
并行计算导论 MPI + OpenMP 解决简单的NBody / 多体问题
串行代码首先是简单的NBody代码,这里设置每个质点的质量相等。初始速度为0,初始位置均匀分布。类似于这样 (16 * 16 大小 ):这样可以抽象出代码循环逻辑为,这里N为总的质点数( 如上图,则为256 ),然后每一次update时,计算每个质点的受力(加速度)、速度、位置:void update() { for (int i = 0; i < N; i++) force(i); for (int i = 0; i < N; i++) velocity(i); for原创 2020-12-05 18:55:51 · 5867 阅读 · 3 评论 -
Windows下多线程编程 C/C++ —— 矩阵乘法的并行算法
一、串行算法设两个矩阵A和B,大小分别为M * N 和 N * P, 如果C = A * B, 则C的大小为M * P。相应的代码表示如下:这里可能大家直观想法可能是int A[M][N],但是这样的话二维传参比较麻烦。然后如果是new/malloc二维数组的话,由于这样的数组每行之间不一定连续存储,所以可能不会有较好的cache命中率。// int A[M * N], B[N * P], C[M * P];void func(int *A, int *B, int *C, int M, in原创 2020-07-07 18:37:21 · 4462 阅读 · 2 评论 -
多道程序缓冲区协调操作 C++11多线程+OpenGL可视化实现
先上题目:再上结果分析对于这道题第一想法大都会是生产-消费者模型。这里确实非常类似,区别主要就是Move操作,但是Move操作可以看成 Put 和 Get 操作结合。这里首先讲解下生产-消费者模型:生产者-消费者问题是典型的PV操作问题,假设系统中有一个比较大的缓冲池,生产者的任务是只要缓冲池未满就可以将生产出的产品放入其中,而消费者的任务是只要缓冲池未空就可以从缓冲池中拿走产品。...原创 2020-07-03 08:26:33 · 3946 阅读 · 0 评论 -
【OpenGL】分形Julia集 OpenGL C++实现(五)
文章目录一、环境配置与运行opengl配置OpenMP配置二、代码讲解三、最终代码四、效果演示一、环境配置与运行opengl配置作者用的是VS2019,首先是新建项目然后是下载glut包,它帮助你使用opengl复制文末的代码,Ctrl+F5 运行。这个时候应该会比较卡。修改到release,会优化代码,加快速度。如果你的电脑是单核CPU,可以通过减少N的值加快速度(但是会降低部分精度)。OpenMP配置这样就可以比较愉快的运行了。操作指南:鼠标右键 —— 暂停/原创 2020-06-24 22:05:53 · 1960 阅读 · 2 评论 -
【编译原理】 CS143 斯坦福大学公开课 专栏总揽
这个专栏总结(或者说翻译)了 斯坦福大学的公开课 – 编译原理 课程代号CS143。课程地址为:Stanford University Compilers我观看视频的地址为Youtube(上面的地址不能调画质,流量有限):1.1| Introduction to Compilers and interpreters自己正在学习编译原理,和这方面的大神们比起来是真的小白,课程有4个极富挑战...原创 2019-11-06 18:49:17 · 923 阅读 · 0 评论 -
【编译原理】 CS143 斯坦福大学公开课 第一周:简介
youtube : 1.1| Introduction to Compilers and interpreters1.1| Introduction to Compilers and interpreters – 编译器解释器介绍两种主要的实现编程语言的方法 – 编译器和解释器这个课程主要讲编译器,编译器通过产生汇编语言或者字节码等等,可以认为是off-line的,解释器则可以认为是on...原创 2019-11-06 18:47:18 · 633 阅读 · 1 评论 -
【编译原理】 CS143 斯坦福大学公开课 第二周:词法分析和有限自动机(上)
youtube : 词法分析器3.1| Lexical Analysis – 词法分析器比如输入字符串foo = 42给词法分析器(Lexical Analysis)。词法分析器生成<id,"foo">,<Operator,"=">,<Integral,"42">,给解析器(Parsing)。词法分析器的功能:分割输入串中的词素(lexeme)识...原创 2019-11-06 18:51:24 · 350 阅读 · 1 评论 -
【编译原理】 CS143 斯坦福大学公开课 第二周:词法分析和有限自动机(下)
youtube :词法规则文章较长,是4节视频的合集,大家看的时候多思考吧。4.1| Lexical Specification – 词法规则回顾:如何识别任意字符串是否属于某一语言?步骤:写出所有token class的正则表达式比如:Number = ‘digit'Keyword = 'if'+'else'+...identifier = letter (letter...原创 2019-11-06 18:52:31 · 442 阅读 · 3 评论 -
LEX 简单入门
youtube : https://www.youtube.com/watch?v=54bo1qaHAfk&list=PLkB3phqR3X43IRqPT0t1iBfmT5bvn198Z参考网站 :https://www.ibm.com/developerworks/cn/linux/sdk/lex/强烈推荐文章:如何愉快地写个小parser (大神写的真的好,和下面的处理SQL配置文...原创 2019-11-09 15:31:32 · 1517 阅读 · 3 评论