从MATLAB运行的GPUParallyized粒子群优化器。粒子来自来自提供的MATLAB文件调用的CUDA / C MEX文件同时启动。此MATLAB / CUDA框架允许用户轻松实现,优化和可视化其CUDA / C型号。
这个框架有两个更详细的组件:
1)MATLAB中的GPUParallated粒子群优化器,其基于研究验证的粒子群变体(*)。优化器还允许用户通过MATLAB直接测试所有不同类型的CUDA发射界限,以便于分析和元优化。
2)连接Matlab的CUDA/C mex文件。它包含一个包装器内核,其中包含cuRand随机数生成和数据缩减例程。它也包含了一个主要的函数与所有的mexc -specific-code和gpu错误检查例程在适当的地方。这允许与用户特定的模型轻松集成并快速调试。
享受可视化和舒适的Matlab,同时获得CUDA/C的速度!
查看完整的描述http://parallelpso.blogspot.com/
(*)史永强:粒子群算法中惯性权值与压缩因子的比较。见:2000年IEEE进化计算大会论文集,皮斯卡塔威,NJ, IEEE出版社(2000)84-88
乔丹(2021)。并行粒子群优化CUDA/C Mex模型(//www.tatmou.com/matlabcentral/fileexchange/51120-parallel-particle-swarm-optimizer-for-cuda-c-mex-models), MATLAB中央文件交换。检索.
我遇到一个错误标识符"__shfl_xor"是未定义的编译。我的GPU是GT755M,compute_30,我设置arch=compute_30,code=sm_30,但是,它是没有用的。
无缝工作
新版本在Ubuntu 14.04和R2015a上运行良好
重要的:
请下载正确的Parallel_Particle_Swarm_Optimization的最新压缩包。m文件。
你使用的是NVidia的GPU吗?它的架构是sm_30或更高?
当我按照您的自述文件,我不能创建您的示例mex文件。
Ubuntu 14.04 x64,R2015A,CUDA 6.5,全GCC包。
谢谢你的反馈,我很快会给出一个例子和一个mex教程。同时,如果您能弄清楚如何编译mex文件(互联网上有很多资源),您就可以运行已经硬编码的优化,看看它是如何工作的。
没有例子,没有描述如何在windows/linux操作系统上创建mex文件…没有合适的帮助文件!
这个项目需要大量的工作,以供除作者以外的任何人使用。