所以它看起来像多核,所有相关的复杂功能都存在.我正在计划一个肯定会受益于并行性的软件项目.问题是我编写并发软件的经验很少.我在大学学习并很好地理解了概念和理论,但是从学校开始就没有掌握在多个处理器上运行软件的有用经验.
所以我的问题是,开始使用多处理器编程的最佳方法是什么? 我熟悉C/C++中的Linux开发和Mac OS X上的Obj-C,几乎没有Windows经验.此外,我计划的软件项目将需要FFT并且可能需要对大量数据进行浮点比较.
有OpenCL,OpenMP,MPI,POSIX线程等......我应该从哪些技术开始?
以下是我正在考虑的几个堆栈选项,但不确定他们是否会让我尝试实现我的目标:
在此先感谢您的帮助.
我在svn:30Gb中继承了一个超过30万个文件的单个项目.大量的二进制文件主要存在于图像文件夹中.更新整个项目等操作可能会非常缓慢.
该团队已经发展了一个流程,只对他们正在处理的特定文件夹运行更新/切换,并最终检查损坏的代码,因为"它可以在我的计算机上运行".任何一个人的工作副本都可以包含过时的代码,切换的代码和遗忘 - 从未提交过的代码.此外,发生最小的分支.
我的个人解决方案是每天凌晨5点发布一个小的bash checkout/build脚本,但并不是每个人都有命令行勇气甚至复制我的解决方案,而宁愿选择toverise svn和破坏过程.
有没有人试图调整这么大的存储库并提供建议?我是否可以使用最佳实践来处理大型存储库,以便让每个人都能轻松应对?
PS externals似乎不是一个好主意,SVN优化以保持大型存储库响应不适用于此,因为我正在处理单个项目
PPS目前正在研究这个问题:http://www.ibm.com/developerworks/java/library/j-svnbins.html