K-means算法并行实现与性能优化
摘要 | 第4-5页 |
Abstract | 第5页 |
第一章 绪论 | 第8-12页 |
1.1 课题的研究目的和意义 | 第8-9页 |
1.2 国内外研究现状分析 | 第9-10页 |
1.3 目前国内外研究中所存在的问题 | 第10页 |
1.4 本文的研究工作 | 第10-11页 |
1.5 本文的结构 | 第11-12页 |
第二章 相关工作 | 第12-18页 |
2.1 算法介绍 | 第12-13页 |
2.1.1 聚类分析 | 第12页 |
2.1.2 K-means算法 | 第12页 |
2.1.3 K-means算法缺点 | 第12-13页 |
2.2 GPU并行计算 | 第13-14页 |
2.2.1 GPU | 第13页 |
2.2.2 GPGPU | 第13页 |
2.2.3 CUDA | 第13-14页 |
2.3 CUDA相关介绍 | 第14-18页 |
2.3.1 CUDA简介 | 第14-16页 |
2.3.2 硬件映射 | 第16页 |
2.3.3 计算能力与硬件架构 | 第16-18页 |
第三章 系统设计 | 第18-30页 |
3.1 系统总体结构 | 第18-20页 |
3.1.1 数据处理模块 | 第18-19页 |
3.1.2 算法执行模块 | 第19-20页 |
3.1.3 结果输出模块 | 第20页 |
3.1.4 测试模块 | 第20页 |
3.2 系统执行总流程 | 第20-22页 |
3.2.1 数据读取方式 | 第21-22页 |
3.3 算法流程 | 第22-23页 |
3.4 数据的组织 | 第23-25页 |
3.4.1 host端 | 第23-24页 |
3.4.2 device端 | 第24-25页 |
3.5 算法执行方式 | 第25-29页 |
3.5.1 小数据集处理方式 | 第25-27页 |
3.5.2 大数据集处理方式 | 第27-29页 |
3.6 程序文件结构 | 第29-30页 |
第四章 系统实现 | 第30-42页 |
4.1 算法实现思路 | 第30页 |
4.2 实现细节介绍 | 第30-37页 |
4.2.1 CUDA C介绍 | 第30-31页 |
4.2.2 常用API介绍 | 第31-32页 |
4.2.3 CUDA线程 | 第32-33页 |
4.2.4 存储器 | 第33-34页 |
4.2.5 存储器优化 | 第34-35页 |
4.2.6 同步 | 第35-36页 |
4.2.7 CUDA流 | 第36页 |
4.2.8 异步并行执行 | 第36-37页 |
4.3 实现过程介绍 | 第37-42页 |
4.3.1 串行测试版本 | 第37页 |
4.3.2 并行测试版本 1 | 第37-38页 |
4.3.3 并行测试版本 2 | 第38-39页 |
4.3.4 并行测试版本 3 | 第39-40页 |
4.3.5 最终版本 1 | 第40页 |
4.3.6 最终版本 2 | 第40-42页 |
第五章 实验与结果测试 | 第42-48页 |
5.1 CUDA安装与配置 | 第42-43页 |
5.1.1 Windows下CUDA安装与配置 | 第42页 |
5.1.2 安装测试 | 第42-43页 |
5.2 设备参数 | 第43-44页 |
5.3 测试结果及说明 | 第44-48页 |
5.3.1 针对小数据集测试 | 第44-46页 |
5.3.2 针对大数据集测试 | 第46-48页 |
第六章 总结与展望 | 第48-49页 |
6.1 总结 | 第48页 |
6.2 展望 | 第48-49页 |
参考文献 | 第49-52页 |
发表论文和科研情况说明 | 第52-53页 |
致谢 | 第53页 |