多核多线程(pthread+cuda+haddop)
jsdchenye
这个作者很懒,什么都没留下…
展开
-
多核多线程——pthread_setaffinity_np,cpulimit分析CPU资源对应用程序的影响
我们在设计多核多线程程序方案的时候,有时候需要比较不同程序设计方案的性能的区别。比如:同一程序在不同处理器之间切换,充分利用闲置的CPU资源或是了解不同线程绑定在不同CPU资源上的性能等等问题。这里我们可以使用pthread_setaffinity,pthread_getaffinity以及cpulimit配合使用来达到我们的目的。在linux系统下我们不希望某个线程完全占据了某一CPU的全部原创 2015-03-28 18:02:01 · 9436 阅读 · 1 评论 -
关于CUDA的编程模型的一些介绍
首先大概介绍下CUDA的编程模型,然后以示例程序对运行在GPU上的内核函数进行简单的介绍。1.一个完整的CUDA程序:主机端CPU的串行+一系列设备端kernel函数并行2.运行在GPU上的程序统称为Kernel也就是常讲的内核函数;内核函数必须通过 _global_函数类型限定符定义,并且只能在主机端代码中调用。3.CUDA在执行大量计算时,将计算任务映射为大量可以并行执行的线程原创 2015-05-27 10:45:10 · 705 阅读 · 0 评论 -
关于加速程式执行效率的几条方法
为了加速程式的执行效率,我们可以通过以下的方式来实现:A.通过pthread_setaffinity_np和pthread_create函数开多个线程,并将不同的线程绑定在不同的core上,充分利用硬件的性能,提高程式的执行效率。B.通过GPU处理器,使用CUDA的编程语言加速程式的执行;也就是利用CPU+GPU的构架,利用CUDAprogramming language来实现程式执行效率原创 2015-06-01 21:55:03 · 477 阅读 · 0 评论 -
在Ubuntu Desktop 14.04 64bit上安装CUDA
我们在安装CUDA的时候要留意不同的ubuntu系统对应不同的版本;同时需要注意我们的ubuntu系统要选用64bit的,我在使用32bit的桌面ubuntu时,出现了CUDA无法正常使用的问题。为了使用CUDA,我们首先得安装nVIDIA Driver驱动程式,然后安装CUDA Toolkit工具;最后我们可以通过CUDA Samples来检测CUDA是否可以正常工作。具体的安装步骤:转载 2015-05-18 21:27:50 · 463 阅读 · 0 评论 -
多核多线程——使用GDB进行Debuge
我们在编写程序,特别是大型程序的时候,如果某一个地方出现了一些小的bug,如果通过自己一行一行的排查显然不切实际。这时候我们就得求助于强大的调试工具。调试工具有很多种,比如DDD,Eclipse以及GDB,这里我们着重介绍下GDB的使用注意事项。绝大部分linux系统中都应该安装了gdb,如果没有的话可以使用指令$sudo apt-get install gcc先安装gcc。假设我们要对p原创 2015-03-28 18:53:50 · 2042 阅读 · 0 评论