2016 - 2024

感恩一路有你

高性能并行计算 学习C 怎么进阶?

浏览量:1387 时间:2021-03-11 15:04:26 作者:admin

学习C 怎么进阶?

C 是目前编程语言中学习成本比较高的语言之一,C 在图形、音视频处理,通信,游戏,后端服务方面应用还比较广泛,我认为需要C 学习进阶有如下几个步骤:

1、看一下C 方面的编程书籍

1)《C Primer》,《C 编程思想》这初级读本是所有学习C 的人必须啃的书,C 的知识点比较全。

2)《Effective C 》、《MoreEffective C 》、《C 沉思录》、《Effective STL》这写书比较经典,进阶必备。

3) 《深度探索C 对象模型》、《现代C 设计》、《泛型编程与STL》这些书可以深入理解C

技术书可以循序渐进看,边学变练,做项目过程中越到问题可以翻翻这些书,有可能有解决问题的思路,项目不忙时,闲下来时可以再看看书。

2、参与C 的项目

边做项目边学习是成长最快的方法,因此要想进阶就必须参与C 的项目,设计开发C 的项目。

3、学习和参与C 开源项目

看看优秀的开源项目可以开阔视野,提高自己

推荐一些优秀开源C 项目

1)STL,Boost都是开源的,可以学习一下

2)Libev libev是一个开源的事件驱动库,基于epoll,kqueue等OS提供的基础设施

3)google的grpc, 基于protobuf的开源rpc, 支持多种编程语言: https://github.com/grpc/grpc

4)google的protobuf, 非常经典, 强烈建议做c 的同学阅读源代码:

https://github.com/google/protobuf

github有大量C 开源,可以看一下

4、经常总结

经常总结,让经验沉淀下来,有条件可以写博客,也经常看看别人的技术博客

如何把我的几台电脑联起来做并行计算?



首先,你要运行的软件,必须本身支持并行计算机处理,或者

服务器群

集运算的功能,否则一切都没意义;


其次,不同操作系统,需要有不同的工具;
1、windows系统下,罕有并行

计算软件

,一些CAD、3D软件有这个功能,自带的,这个时候只需要超快的局域网即可,也就是说网线要好、交换机要好就够了;
2、Linxu下很多这种软件,网上一找一大堆,开源免费的都有,问题是你的软件要能在Linux下运行才行,否则没意义;
3、Nvdia公司有K20、K40的这种硬件卡,插在多台计算机上,用

数据电缆

互联,就能组成并行处理计算机阵列,或者

服务器群

集阵列,问题也是不支持windows系统,这种是效果最好的解决方案。买卡时,会送对应的软件的。不便宜。

高性能并行计算 并行程序设计与算法 并行算法设计与性能优化

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。