当前位置:文档之家› 项目研究工作进展报告(按季度)

项目研究工作进展报告(按季度)

10月份我们开始在此处理器上编写并行程序。这一阶段我们的任务主要是数据并行算法,也就是让64个处理器核可以同时响应请求,每个处理器核运行相同的签名算法。我们首先用RSA公钥加密算法作为练习,编写了并行化的RSA加密算法,并且与单线程的RSA做了时间的对比。此后,我们开始着手解决我们的目标:并行化的ECC数字签名算法。目前,我们能够完成ECC签名算法的数据并行,并且进行了简单的调度和进程间通信控制。
另外我们在原有的实验计划上加入了动态调度算法的设计与实现环节。因为调度算法在很大程度上决定了整个并行计算系统的性能,这点我们在立项的时候考虑的并不到位。而且,调度算法的设计与实现也是我们整个项目的核心内容,我们也阅读了相关的很多论文,积累了一些想法和经验。相比于静态调度,动态调度往往能更加有效地利用系统资源,因此能获得更好的系统性能。但是设计的复杂性要远高于动态调度。调度问题一直都是并行计算领域的热点方向。
项目研究工作进展报告(按季度)
(内容包括工作进展情况,完成项目的内容及比例,是否按计划进行,如果未按时完成说明原因,并制定下一步工作计划等)
2009年第三季度
一、研究工作主要进展和结果
我们项目基本上能够按照计划进行。在7月底的时候,我们拿到了实验平台:Tilera64众核处理器,并且参加了Tilera公司的相关技术培训。在这一阶段,我们还阅读了多篇相关的国内外论文。9月份我们主要的工作是搭建实验运行环境,较为详细的阅读了随板子附带的30多篇技术资料,对整个实验平台有了比较深入的了解,并且学习了相关的多线程编程,为接下来的项目设计奠定了基础。
二、项目调整和下阶段工作计划
起初,我们的初衷更偏向于理论,设计一个并行化的ECC算法。但是通过后来对并行计算和多核处理器领域的学习,以及对Tilera64核处理器的特性了解,我们决定更偏重做ECC算法在Tile64处理器上的并行实现。主要原因有:
由于ECC算法的特殊性,每一步之间的数据有较大的依赖,并不适合做理论上的算法拆分,也不适合做纯任务并行的签名运算。所以我们计划设计一个混合并行的ECC算法,而不是先前的纯任务并行。因为经证明,混合并行往往比纯任务并行能达到更好的系统性能。我们的难度并没有降低,反而加大了,而且混合并行现在也是国际上学术界的一个热点问题。
目前我们完成的程序有:
ECDSA Elliptic Curve Digital Signature Algorithm(ECDSA,椭圆曲线签名算法)
ECDSA_process:多核多进程ECDSA签名
RSA公钥加密算法
RSA_pthread:多核多线程RSA加密
RSA_process:多核多进程RSA加密
最后我们更加细化了项目的考核指标,这是随着整个项目的进行逐渐根据需要加入的。
项目负责人签名:
年月日
指导教师意见:
进展顺利,有自己的想法,下一步应注意结合算法和众核处理器的特点.
指导教签名:
年月日
11月份,我们目前正在解决的问题:一个是设计负载均衡算法。另一个重要的问题是开始着手设计一个数据并行和任务并行的混合并行系统,另外解决动态调度问题。这也是我们整个项目的核心内容。
总的说来,我们项目大体上完成了三分之一左右,随后的工作是完成算法的优化,主要包括混合并行,动态调度,片上网络三个方面。最后的工作是完成相关的测试的性能评估,以及做一个系统级的优化设计。
相关主题