【技术实现步骤摘要】
基于申威芯片架构并行文件读取的数据预处理方法
本专利技术涉及科学计算领域中的并行IO技术,尤其涉及一种基于申威芯片架构并行文件读取的数据预处理方法。
技术介绍
科学及工程应用计算对计算资源的需求较大,且随着求解问题规模的不断增大,后摩尔时代的单机处理能力难以为继。为解决科学应用中所需计算力紧缺的问题,一种可行的方案是将科学应用移植到超算平台,借助超算平台提供大规模并行计算的优势。神威太湖之光是世界首台峰值运算速度超过10亿亿次量级的超级计算机,基于此平台并行优化的高性能应用已经连续两年夺得高性能应用领域最杰出的奖项——戈登贝尔奖。将科学计算应用程序移植到国产平台神威太湖之光,不仅可以利用神威太湖之光的超高计算能力,而且有助于建设国产超算平台的软件生态环境。神威太湖之光采用的芯片为国产申威芯片,其内存架构为:一块申威处理器拥有32G内存,并提供两种内存运行模式,全片内存共享模式以及内存私有模式。在全片共享模式中,芯片中的四个核组共享32G内存;在私有模式中,每个核组拥有各自对应的8G内存。移植到神威平台上的科学计算应用程序通常采用内存私有模式,即每个核组独占8G内存 ...
【技术保护点】
1.一种基于申威芯片架构并行文件读取的数据预处理方法,其特征在于,包括以下步骤:(1)将内存运行模式设置为全片共享模式;(2)预处理进程读取数据文件的元数据信息,根据所述的元数据信息对计算进程进行分组;(3)预处理进程根据计算进程分组信息,建立对应的MPI模型,调用MPI‑IO并行读取函数读取数据文件;(4)对预处理进程所读取的数据进行维度转化,使对应计算进程组中每个计算进程所对应的数据块连续排布;将维度转化后的数据写回到对应的计算进程组对应的数据文件中,并建立对应的元数据文件。
【技术特征摘要】
1.一种基于申威芯片架构并行文件读取的数据预处理方法,其特征在于,包括以下步骤:(1)将内存运行模式设置为全片共享模式;(2)预处理进程读取数据文件的元数据信息,根据所述的元数据信息对计算进程进行分组;(3)预处理进程根据计算进程分组信息,建立对应的MPI模型,调用MPI-IO并行读取函数读取数据文件;(4)对预处理进程所读取的数据进行维度转化,使对应计算进程组中每个计算进程所对应的数据块连续排布;将维度转化后的数据写回到对应的计算进程组对应的数据文件中,并建立对应的元数据文件。2.根据权利要求1所述的基于申威芯片架构并行文件读取的数据预处理方法,其特征在于,步骤(2)中,所述元数据信息包括数据文件的维度、每个维度的长度以及数据类型,还包括计算进程数以及每个计算进程需要读取的数据大小;所述数据大小包括数据对应在每个维度上的长度。3.根据权利要求1所述的基于申威芯片架构并行文件读取的数据预处理方法,其特征在于,步骤(2)包括:(2-1)预处理主进程读取数据文件的元数据信息;(2-2)将一个计算进程需要读取的数据作为一个数据块,将数据文件划分成若干个数据块,将数据文件抽象成一个网格;该网格每个维度上数据块的个数作为该网格维度的长度;(2-3)对计算进程进行分组:(a)确定计算进程组数:设计算进程总数为k,预处理进程总数为M;从M到1,按照从大到小的方式逐步调整m值,每次调整幅度为1,直至m为k的约数,停止,将此m值作为计算进程组数;(b)对计算进程组数m做质因数分解,并按降序排列分解出的质因数;(c)将质因数分配至合适的网格维度上:每次寻找长度最大的网格维度,按照从大到小的顺序依次选择质因数;若最大网格维度的长度是该质因数的倍数,则将该网格维度的长度更新为该网格维度的长度与该质因数的商,将该质因数置为0;若最大网格维度的长度不是该质因数的倍数,则按照从大到小的顺序选择下一质因数;(d)重复步骤(c),直至将所有...
【专利技术属性】
技术研发人员:陈建海,周宇,张淼,何钦铭,沈钦仙,
申请(专利权)人:浙江大学,
类型:发明
国别省市:浙江,33
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。