10.3969/j.issn.1006-9348.2022.04.044
基于Linux的多核并行可伸缩函数式编程研究
现有编程模型在面向多核并行计算时,通常表现出线程安全和数据同步控制困难,以及通用性差等问题.在函数可以摆脱状态信息的特点基础上,提出基于Linux平台的多核并行可伸缩函数式编程模型.利用函数的复合和嵌套来描述应用程序任务,完成编程过程中的数据传递和问题拆分,考虑到语法解析与编译过程对模型构建的约束,采用运行时构建动态树,并将动态树的并行处理转化为求解NP问题,根据动态树节点特征进行任务排序.动态树的NP问题又可进一步转化为对资源的访问,设计乘法级数增长的任务窃取策略,充分考虑窃取目标和规模以及窃取时机.最后为保证Linux平台应用涉及的数据和通信完整性和安全性,设计了一种64bits定长哈希并行计算,并验证了上述算法的分布随机性与均匀性.基于Linux平台对所设计的编程模型进行性能测试,实验结果证明函数式编程模型能够显著降低应用程序的执行时间,在提高多核利用率的情况下,显著提升多核并行编程的可伸缩性.
多核并行、函数式编程、任务窃取、可伸缩性
39
TP391(计算技术、计算机技术)
河北省教育厅教改项目;河北师范大学科技类科研基金项目
2022-05-20(万方平台首次上网日期,不代表论文的发表时间)
共5页
223-226,432