本发明实施例涉及但不限于无线通信和计算机技术领域,尤指一种数据配置方法和装置。
背景技术:
随着无线通信技术的发展和用户对通信需求的日益增加,第五代移动通信(5thgeneration,简称为:5g)技术已成为未来网络发展的趋势。5g技术应用场景的重要特点是超密集和大规模,例如购物中心、密集城区信息社区、露天音乐会和体育场,以及大规模传感器和执行器的部署等。
5g技术针对不同的应用场景,可以采用不同的通信制式,即5g系统具有在多种通信制式共存的特点。为了解决传统运算设备内存不足和运算效率不支持的问题,目前通常采用分布式并行系统进行数据运算,具体的,将大规模的网络分割为多个子网络,即将复杂的计算进行分解,由多个中央处理器(centralprocessingunit,简称为:cpu)并行处理多个子网络中的数据运算,可以实现降低单个cpu的内存负荷和计算量负荷的效果。然而,上述分布式并行系统中并行cpu之间的通信时延对运算效率的影响,特别是在无线通信仿真系统中,由于并行cpu中的小区之间存在干扰、交互和协作等数据关系,即并行cpu之间存在大量的数据交互,而并行cpu之间的数据交互时延严重影响了分布式并行系统的计算效率,因此,如何提高分布式并行系统的计算效率成为目前亟需解决的问题。
技术实现要素:
为了解决上述技术问题,本发明实施例提供了一种数据配置方法和装置,本发明实施例通过合理配置分布式并行系统中各cpu间的数据处理关系来降低并行cpu之间的数据交互量,提高了分布式并行系统的计算效率。
第一方面,本发明实施例提供一种数据配置方法,包括:
为分布式并行系统中的每种通信制式的小区分配相应数量的处理器cpu;
根据每种所述通信制式的小区已分配的cpu,为每种所述通信制式中每个频点的小区分配相应数量的cpu;
根据每种所述通信制式中每个频点的小区已分配的cpu,分别将每组相同通信制式中相同频点的小区划分到已分配的cpu中,其中,划分到相同cpu中小区集合内的干扰大于划分到不同cpu中小区集合间的干扰。
在第一方面的第一种可能的实现方式中,所述相同通信制式中相同频点的小区为第一分组小区单元;所述根据每种所述通信制式中每个频点的小区已分配的cpu,分别将每组相同通信制式中相同频点的小区划分到已分配的cpu中,包括:
根据每个所述第一分组小区单元中小区间的干扰,分别建立每个所述第一分组小区单元的干扰权值矩阵,所述干扰权值矩阵用于体现每个所述第一分组小区单元中小区间的干扰关系;
根据所建立的每个所述第一分组小区单元的干扰权值矩阵和所述分配的cpu,分别将每个所述第一分组小区单元中的小区划分到所述已分配的cpu中。
在第一方面的第二种可能的实现方式中,分配了多个cpu的相同通信制式中相同频点的小区为第一分组小区单元,分配了一个cpu的相同通信制式中相同频点的小区为第二分组小区单元;所述根据每种所述通信制式中每个频点的小区已分配的cpu,分别将每组相同通信制式中相同频点的小区划分到已分配的cpu中,包括:
根据每个所述第一分组小区单元中小区间的干扰,分别建立每个所述第一分组小区单元的干扰权值矩阵,所述干扰权值矩阵用于体现每个所述第一分组小区单元中小区间的干扰关系;
根据所建立的每个所述第一分组小区单元的干扰权值矩阵和所述分配的cpu,分别将每个所述第一分组小区单元中的小区划分到所述已分配的cpu 中;
分别将每个所述第二分组小区单元中的小区划分到已分配的一个cpu中。
根据第一方面的第一种或第二种可能的实现方式,在第三种可能的实现方式中,所述根据每个所述第一分组小区单元中小区间的干扰,分别建立每个所述第一分组小区单元的干扰权值矩阵,包括:
根据所述分布式并行系统中配置的信道参数和小区位置,分别计算每个所述第一分组小区单元中每个小区到仿真区域中每个网格点的大尺度衰落值;
根据所述分布式并行系统中每个小区的配置功率和所计算的大尺度衰落值,分别计算每个所述第一分组小区单元中每个小区到每个所述网格点的参考信号接收功率rsrp;
根据所计算的rsrp,分别确定每个所述第一分组小区单元中每个小区的覆盖范围,每个所述小区的覆盖范围为多个网格点的集合,其中,每个所述小区到形成其覆盖范围的每个网格点的rsrp为,所属第一分组小区单元中到每个所述网格点的rsrp最大值;
根据所述计算的rsrp和每个所述小区的覆盖范围,分别建立每个所述第一分组小区单元的干扰矩阵;
根据配置的干扰阈值和每个所述第一分组小区单元的干扰矩阵,分别获取每个所述第一分组小区单元的干扰权值矩阵。
根据第一方面的第三种可能的实现方式,在第四种可能的实现方式中,所述根据配置的干扰阈值和每个所述第一分组小区单元的干扰矩阵,分别获取每个所述第一分组小区单元的干扰权值矩阵,包括:
根据所述干扰阈值和每个所述第一分组小区单元的干扰矩阵,分别计算每个所述第一分组小区单元的干扰标识矩阵和平均干扰小区数量;
分别将每个所述第一分组小区单元的平均干扰小区数与配置的第一小区阈值进行对比;
在对比结果不同时,对所述干扰阈值进行重新配置,并根据重新配置的 干扰阈值计算每个所述第一分组小区单元的干扰权值矩阵;
在所述对比结果相同时,获取每个所述第一分组小区单元的初始干扰权值矩阵,并根据每个所述第一分组小区单元中小区间的干扰关系对所述初始干扰权值矩阵进行修正得到每个所述第一分组小区单元的干扰权值矩阵,所述初始干扰权值矩阵为通过所述对比结果相同的干扰阈值和干扰矩阵计算出的干扰标识矩阵。
根据第一方面的第四种可能的实现方式,在第五种可能的实现方式中,所述在对比结果不同时,对所述干扰阈值进行重新配置,包括:
在所述第一小区阈值大于所述平均干扰小区数时,配置所述干扰阈值减少第一收敛阈值;
在所述第一小区阈值小于所述平均干扰小区数时,配置所述干扰阈值增加第二收敛阈值。
根据第一方面的第三种可能的实现方式,在第六种可能的实现方式中,所述根据所述计算的rsrp和每个所述小区的覆盖范围,分别建立每个所述第一分组小区单元的干扰矩阵,包括:
分别在每个所述第一分组小区单元内,遍历每个小区与其它小区的干扰得到每个所述第一分组小区单元的干扰矩阵;
其中,所述每个小区与其它小区的干扰为所述其它小区在所述小区覆盖范围内的rsrp最大值;或者,所述每个小区与其它小区的干扰为所述其它小区在所述小区覆盖范围内的rsrp平均值;或者,所述每个小区与其它小区的干扰为所述其它小区在所述小区覆盖范围内的rsrp大于rspr阈值的数量。
根据第一方面的第一种或第二种可能的实现方式,在第七种可能的实现方式中,所述根据所建立的每个所述第一分组小区单元的干扰权值矩阵和所述分配的cpu,分别将每个所述第一分组小区单元中的小区划分到所述已分配的cpu中,包括:
根据每个所述第一分组小区单元的干扰权值矩阵和所述分配的cpu,分别对每个所述第一分组小区单元中的小区进行初步划分;
在每个所述第一分组小区单元内,分别对被隔离cpu、小区数大于第二小区阈值的cpu和小区数小于所述第二小区阈值的cpu中的小区进行调整,其中,所述被隔离的cpu中的小区数小于所述第二小区阈值,且所述cpu中的小区与未划分的小区没有干扰关系;
分别在每个所述第一分组小区单元内,根据调整后每个所述cpu中已有的小区,将当前第一分组小区单元中的未分配小区划分到相应的cpu中;
分别在每个所述第一分组小区单元内,将遗留小区和孤立小区划分到相应地的cpu中。
根据第一方面的第七种可能的实现方式,在第八种可能的实现方式中,所述根据每个所述第一分组小区单元的干扰权值矩阵和所述分配的cpu,分别对每个所述第一分组小区单元中的小区进行初步划分,包括:
分别在每个所述第一分组小区单元内,获取每个未分配小区分别与当前第一分组小区单元中小区集合的第一干扰权值,并通过最大第一干扰权值获取干扰小区集合,所述干扰小区集合为所述最大第一干扰权值对应的小区和与所述小区具有干扰关系的小区;
计算所述干扰小区集合与当前第一分组小区单元的每个cpu中已划分的小区集合的第二干扰权值和公共小区数量;
根据所述公共小区数量、或者所述公共小区数量和所述第二干扰权值,将所述干扰小区集合划分到相应的cpu中。
根据第一方面的第八种可能的实现方式,在第九种可能的实现方式中,所述根据所述公共小区数量、或者所述公共小区数量和所述第二干扰权值,将所述干扰小区集合划分到相应的cpu中,包括:
在所述公共小区数量具有非0值时,将所述干扰小区集合中的小区划分到公共小区数量最大的cpu中,且合并所述干扰小区集合与所述cpu的公共小区;
在所述公共小区数量全为0,且所述第二干扰权值全为0时,将所述干扰小区集合中的小区划分到一个小区数量为0的cpu中;
在所述公共小区数量全为0,且所述第二干扰权值中具有非0值时,将 所述干扰小区集合中的小区划分到最大第二干扰权值对应的cpu中。
根据第一方面的第七种可能的实现方式,在第十种可能的实现方式中,所述在每个所述第一分组小区单元内,分别对被隔离cpu、小区数大于第二小区阈值的cpu和小区数小于所述第二小区阈值的cpu中的小区进行调整,包括:
分别在每个所述第一分组小区单元内,获取cpu中小区数小于所述第二小区阈值的第一cpu集合,所述第二小区阈值为当前所有cpu中小区数的平均值;
分别对所述第一cpu集合中每个被隔离cpu中的小区进行调整;
在所述第一cpu集合处理完成后,获取小区数大于第二小区阈值的第二cpu集合;
分别对所述第二cpu集合的每个cpu中的小区进行调整;
在所述第二cpu集合处理完成后,获取小区数小于第二小区阈值的第三cpu集合;
分别对所述第三cpu集合的每个cpu中的小区进行调整。
根据第一方面的第十种可能的实现方式,在第十一种可能的实现方式中,所述分别对所述第一cpu集合中每个被隔离cpu中的小区进行调整,包括:
根据所述第一cpu集合中每个cpu中的小区集合与当前第一分组小区单元中未分配小区集合的第三干扰权值,确定所述第一cpu集合中的被隔离cpu,其中,所述第三干扰权值为0的cpu为所述被隔离cpu;
计算每个所述被隔离cpu中每个小区分别与当前第一分组小区单元的其它cpu中小区集合的第四干扰权值;
在最大第四干扰权值不为0时,获取所述最大第四干扰权值对应的小区和cpu小区集合,并将所述小区从被隔离的cpu中删除,划分到所述最大第四干扰权值对应的cpu小区集合中;
在所述最大第四干扰权值为0时,计算当前第一分组小区单元中未分配小区集合中每个小区的第五干扰权值,并将最大第五干扰权值对应的小区和所述未分配小区集合中与所述最大第五干扰权值对应的小区有干扰关系的小 区,划分到所述最大第四干扰权值对应的被隔cpu中。
根据第一方面的第十种可能的实现方式,在第十二种可能的实现方式中,所述分别对所述第二cpu集合的每个cpu中的小区进行调整,包括:
计算所述第二cpu集合中每个cpu中每个小区的第六干扰权值;
将最小第六干扰权值对应的小区从当前cpu中删除,划分到当前第一分组小区单元的未分配小区集合中。
根据第一方面的第十种可能的实现方式,在第十三种可能的实现方式中,所述分别对所述第三cpu集合的每个cpu中的小区进行调整,包括:
计算当前第一分组小区单元中未分配小区集合中每个小区与所述第三cpu集合的每个cpu中小区集合的第七干扰权值;
在最大第七干扰权值不为0时,将所述最大第七干扰权值对应的未分配小区划分到所述第三cpu集合的对应cpu中。
根据第一方面的第七种可能的实现方式,在第十四种可能的实现方式中,所述分别在每个所述第一分组小区单元内,根据调整后每个所述cpu中已有的小区,将当前第一分组小区单元中的未分配小区划分到相应的cpu中,包括:
分别在每个所述第一分组小区单元内,获取cpu中小区数小于第三小区阈值的第四cpu集合,所述第三小区阈值为当前第一分组小区单元中小区总数除以cpu数量的取整值;
计算当前第一分组小区单元中未分配小区集合中每个小区与所述第四cpu集合的每个cpu中小区集合的第八干扰权值;
在最大第八干扰权值不为0时,将所述最大第八干扰权值对应的未分配小区划分到所述第四cpu集合的对应cpu中。
根据第一方面的第七种可能的实现方式,在第十五种可能的实现方式中,所述分别在每个所述第一分组小区单元内,将遗留小区、孤立小区划分到相应地的cpu中,包括:
分别在每个所述第一分组小区单元内,计算当前第一分组小区单元中未分配小区集合中每个小区与每个cpu中小区集合的第九干扰权值;
在最大第九干扰权值不为0时,将所述最大第九干扰权值对应的遗留小区划分到对应的cpu中;
在所述最大第九干扰权值为0时,将所述最大第九干扰权值对应的孤立小区划分到小区数最少的cpu中。
根据第一方面、第一方面的第一种和第二种可能的实现方式中任意一种,在第十六种可能的实现方式中,所述对分布式并行系统中的每种通信制式的小区分配相应数量的处理器cpu,包括:
分别测量每种通信制式的相同数量小区和ue规模仿真预置时间所消耗的运算时间;
根据测得的运算时间和每种所述通信制式中的小区数量,对每种所述通信制式的小区分配相应数量的cpu。
根据第一方面、第一方面的第一种和第二种可能的实现方式中任意一种,在第十七种可能的实现方式中,所述根据每种所述通信制式的小区已分配的cpu数量,对每种所述通信制式中每个频点的小区分配相应数量的cpu,包括:
根据每种所述通信制式的小区已分配的cpu数量和每种所述通信制式中每个频点的小区数量,对每种所述通信制式中每个频点的小区分配相应数量的cpu。
第二方面,本发明实施例提供一种数据配置装置,所述数据配置装置包括:相连接的数量分配模块和小区划分模块;
所述数量分配模块,配置为能够为分布式并行系统中的每种通信制式的小区分配相应数量的处理器cpu;
所述数量分配模块,还配置为能够根据每种所述通信制式的小区已分配的cpu,为每种所述通信制式中每个频点的小区分配相应数量的cpu;
所述小区划分模块,配置为能够根据所述数量分配模块为每种所述通信制式中每个频点的小区已分配的cpu,分别将每组相同通信制式中相同频点的小区划分到已分配的cpu中,其中,划分到相同cpu中小区集合内的干扰大于划分到不同cpu中小区集合间的干扰。
在第二方面的第一种可能的实现方式中,所述相同通信制式中相同频点的小区为第一分组小区单元;所述小区划分模块包括:相连接的干扰关系建立单元和小区分配单元;
所述干扰关系建立单元,配置为能够根据每个所述第一分组小区单元中小区间的干扰,分别建立每个所述第一分组小区单元的干扰权值矩阵,所述干扰权值矩阵用于体现每个所述第一分组小区单元中小区间的干扰关系;
所述小区分配单元,配置为能够根据所述干扰关系建立单元建立的每个所述第一分组小区单元的干扰权值矩阵和所述数量分配模块分配的cpu,分别将每个所述第一分组小区单元中的小区划分到所述已分配的cpu中。
在第二方面的第二种可能的实现方式中,分配了多个cpu的相同通信制式中相同频点的小区为第一分组小区单元,分配了一个cpu的相同通信制式中相同频点的小区为第二分组小区单元;所述小区划分模块包括:相连接的干扰关系建立单元和小区分配单元;
所述干扰关系建立单元,配置为能够根据每个所述第一分组小区单元中小区间的干扰,分别建立每个所述第一分组小区单元的干扰权值矩阵,所述干扰权值矩阵用于体现每个所述第一分组小区单元中小区间的干扰关系;
所述小区分配单元,配置为能够根据所述干扰关系建立单元建立的每个所述第一分组小区单元的干扰权值矩阵和所述数量分配模块分配的cpu,分别将每个所述第一分组小区单元中的小区划分到所述已分配的cpu中;
分别将每个所述第二分组小区单元中的小区划分到已分配的一个cpu中。
根据第二方面的第一种或第二种可能的实现方式,在第三种可能的实现方式中,所述干扰关系建立单元包括:
计算子单元,配置为能够根据所述分布式并行系统中配置的信道参数和小区位置,分别计算每个所述第一分组小区单元中每个小区到仿真区域中每个网格点的大尺度衰落值;
所述计算子单元,还配置为能够根据所述分布式并行系统中每个小区的配置功率和所计算的大尺度衰落值,分别计算每个所述第一分组小区单元中 每个小区到每个所述网格点的参考信号接收功率rsrp;
覆盖范围确定子单元,还配置为能够根据所计算的rsrp,分别确定每个所述第一分组小区单元中每个小区的覆盖范围,每个所述小区的覆盖范围为多个网格点的集合,其中,每个所述小区到形成其覆盖范围的每个网格点的rsrp为,所属第一分组小区单元中到每个所述网格点的rsrp最大值;
关系建立子单元,配置为能够根据所述计算子单元计算的rsrp和所述覆盖范围确定子单元为每个所述小区的覆盖范围,分别建立每个所述第一分组小区单元的干扰矩阵;
所述关系建立子单元,还配置为能够根据配置的干扰阈值和每个所述第一分组小区单元的干扰矩阵,分别获取每个所述第一分组小区单元的干扰权值矩阵。
根据第二方面的第三种可能的实现方式,在第四种可能的实现方式中,所述关系建立子单元配置为能够根据配置的干扰阈值和每个所述第一分组小区单元的干扰矩阵,分别获取每个所述第一分组小区单元的干扰权值矩阵,包括:
根据所述干扰阈值和每个所述第一分组小区单元的干扰矩阵,分别计算每个所述第一分组小区单元的干扰标识矩阵和平均干扰小区数量;
分别将每个所述第一分组小区单元的平均干扰小区数与配置的第一小区阈值进行对比;
在对比结果不同时,对所述干扰阈值进行重新配置,并根据重新配置的干扰阈值计算每个所述第一分组小区单元的干扰权值矩阵;
在所述对比结果相同时,获取每个所述第一分组小区单元的初始干扰权值矩阵,并根据每个所述第一分组小区单元中小区间的干扰关系对所述初始干扰权值矩阵进行修正得到每个所述第一分组小区单元的干扰权值矩阵,所述初始干扰权值矩阵为通过所述对比结果相同的干扰阈值和干扰矩阵计算出的干扰标识矩阵。
根据第二方面的第四种可能的实现方式,在第五种可能的实现方式中,所述在对比结果不同时,对所述干扰阈值进行重新配置,包括:
在所述第一小区阈值大于所述平均干扰小区数时,配置所述干扰阈值减少第一收敛阈值;
在所述第一小区阈值小于所述平均干扰小区数时,配置所述干扰阈值增加第二收敛阈值。
根据第二方面的第三种可能的实现方式,在第六种可能的实现方式中,所述关系建立子单元配置为能够根据所述计算子单元计算的rsrp和所述覆盖范围确定子单元为每个所述小区的覆盖范围,分别建立每个所述第一分组小区单元的干扰矩阵,包括:
分别在每个所述第一分组小区单元内,遍历每个小区与其它小区的干扰得到每个所述第一分组小区单元的干扰矩阵;
其中,所述每个小区与其它小区的干扰为所述其它小区在所述小区覆盖范围内的rsrp最大值;或者,所述每个小区与其它小区的干扰为所述其它小区在所述小区覆盖范围内的rsrp平均值;或者,所述每个小区与其它小区的干扰为所述其它小区在所述小区覆盖范围内的rsrp大于rspr阈值的数量。
根据第二方面的第一种或第二种可能的实现方式,在第七种可能的实现方式中,所述小区分配单元包括:
初步划分子单元,配置为能够根据所述干扰关系建立单元为每个所述第一分组小区单元的干扰权值矩阵,分别对每个所述第一分组小区单元中的小区进行初步划分;
小区调整子单元,配置为能够在每个所述第一分组小区单元内,分别对被隔离cpu、小区数大于第二小区阈值的cpu和小区数小于所述第二小区阈值的cpu中的小区进行调整,其中,所述被隔离的cpu中的小区数小于所述第二小区阈值,且所述cpu中的小区与未划分的小区没有干扰关系;
补充处理子单元,配置为能够分别在每个所述第一分组小区单元内,根据调整后每个所述cpu中已有的小区,将当前第一分组小区单元中的未分配小区划分到相应的cpu中;
所述补充处理子单元,还配置为能够分别在每个所述第一分组小区单元 内,将遗留小区、孤立小区划分到相应地的cpu中。
根据第二方面的第七种可能的实现方式,在第八种可能的实现方式中,所述初步划分子单元配置为能够根据所述干扰关系建立单元为每个所述第一分组小区单元的干扰权值矩阵,分别对每个所述第一分组小区单元中的小区进行初步划分,包括:
分别在每个所述第一分组小区单元内,获取每个未分配小区分别与当前第一分组小区单元中小区集合的第一干扰权值,并通过最大第一干扰权值获取干扰小区集合,所述干扰小区集合为所述最大第一干扰权值对应的小区和与所述小区具有干扰关系的小区;
计算所述干扰小区集合与当前第一分组小区单元的每个cpu中已划分的小区集合的第二干扰权值和公共小区数量;
根据所述公共小区数量、或者所述公共小区数量和所述第二干扰权值,将所述干扰小区集合划分到相应的cpu中。
根据第二方面的第八种可能的实现方式,在第九种可能的实现方式中,所述根据所述公共小区数量、或者所述公共小区数量和所述第二干扰权值,将所述干扰小区集合划分到相应的cpu中,包括:
在所述公共小区数量具有非0值时,将所述干扰小区集合中的小区划分到公共小区数量最大的cpu中,且合并所述干扰小区集合与所述cpu的公共小区;
在所述公共小区数量全为0,且所述第二干扰权值全为0时,将所述干扰小区集合中的小区划分到一个小区数量为0的cpu中;
在所述公共小区数量全为0,且所述第二干扰权值中具有非0值时,将所述干扰小区集合中的小区划分到最大第二干扰权值对应的cpu中。
根据第二方面的第七种可能的实现方式,在第十种可能的实现方式中,所述小区调整子单元配置为能够在每个所述第一分组小区单元内,分别对被隔离cpu、小区数大于第二小区阈值的cpu和小区数小于所述第二小区阈值的cpu中的小区进行调整,包括:
分别在每个所述第一分组小区单元内,获取cpu中小区数小于所述第二 小区阈值的第一cpu集合,所述第二小区阈值为当前所有cpu中小区数的平均值;
分别对所述第一cpu集合中每个被隔离cpu中的小区进行调整;
在所述第一cpu集合处理完成后,获取小区数大于第二小区阈值的第二cpu集合;
分别对所述第二cpu集合的每个cpu中的小区进行调整;
在所述第二cpu集合处理完成后,获取小区数小于第二小区阈值的第三cpu集合;
分别对所述第三cpu集合的每个cpu中的小区进行调整。
根据第二方面的第十种可能的实现方式,在第十一种可能的实现方式中,所述分别对所述第一cpu集合中每个被隔离cpu中的小区进行调整,包括:
根据所述第一cpu集合中每个cpu中的小区集合与当前第一分组小区单元中未分配小区集合的第三干扰权值,确定所述第一cpu集合中的被隔离cpu,其中,所述第三干扰权值为0的cpu为所述被隔离cpu;
计算每个所述被隔离cpu中每个小区分别与当前第一分组小区单元的其它cpu中小区集合的第四干扰权值;
在最大第四干扰权值不为0时,获取所述最大第四干扰权值对应的小区和cpu小区集合,并将所述小区从被隔离的cpu中删除,划分到所述最大第四干扰权值对应的cpu小区集合中;
在所述最大第四干扰权值为0时,计算当前第一分组小区单元中未分配小区集合中每个小区的第五干扰权值,并将最大第五干扰权值对应的小区和所述未分配小区集合中与所述最大第五干扰权值对应的小区有干扰关系的小区,划分到所述最大第四干扰权值对应的被隔cpu中。
根据第二方面的第十种可能的实现方式,在第十二种可能的实现方式中,所述分别对所述第二cpu集合的每个cpu中的小区进行调整,包括:
计算所述第二cpu集合中每个cpu中每个小区的第六干扰权值;
将最小第六干扰权值对应的小区从当前cpu中删除,划分到当前第一分组小区单元的未分配小区集合中。
根据第二方面的第十种可能的实现方式,在第十三种可能的实现方式中,所述分别对所述第三cpu集合的每个cpu中的小区进行调整,包括:
计算当前第一分组小区单元中未分配小区集合中每个小区与所述第三cpu集合的每个cpu中小区集合的第七干扰权值;
在最大第七干扰权值不为0时,将所述最大第七干扰权值对应的未分配小区划分到所述第三cpu集合的对应cpu中。
根据第二方面的第七种可能的实现方式,在第十四种可能的实现方式中,所述补充处理子单元配置为能够分别在每个所述第一分组小区单元内,根据调整后每个所述cpu中已有的小区,将当前第一分组小区单元中的未分配小区划分到相应的cpu中,包括:
分别在每个所述第一分组小区单元内,获取cpu中小区数小于第三小区阈值的第四cpu集合,所述第三小区阈值为当前第一分组小区单元中小区总数除以cpu数量的取整值;
计算当前第一分组小区单元中未分配小区集合中每个小区与所述第四cpu集合的每个cpu中小区集合的第八干扰权值;
在最大第八干扰权值不为0时,将所述最大第八干扰权值对应的未分配小区划分到所述第四cpu集合的对应cpu中。
根据第二方面的第七种可能的实现方式,在第十五种可能的实现方式中,所述补充处理子单元配置为能够分别在每个所述第一分组小区单元内,将遗留小区、孤立小区划分到相应地的cpu中,包括:
分别在每个所述第一分组小区单元内,计算当前第一分组小区单元中未分配小区集合中每个小区与每个cpu中小区集合的第九干扰权值;
在最大第九干扰权值不为0时,将所述最大第九干扰权值对应的遗留小区划分到对应的cpu中;
在所述最大第九干扰权值为0时,将所述最大第九干扰权值对应的孤立小区划分到小区数最少的cpu中。
根据第二方面、第二方面的第一种和第二种可能的实现方式中任意一种,在第十六种可能的实现方式中,所述数量分配模块包括:相连接的测量单元和数量分配单元;
所述测量单元,配置为能够分别测量每种通信制式的相同数量小区和ue规模仿真预置时间所消耗的运算时间;
所述数量分配单元,配置为能够根据所述测量单元测得的运算时间和每种所述通信制式中的小区数量,对每种所述通信制式的小区分配相应数量的cpu。
根据第二方面、第二方面的第一种和第二种可能的实现方式中任意一种,在第十七种可能的实现方式中,所述数量分配模块配置为能够根据每种所述通信制式的小区已分配的cpu,为每种所述通信制式中每个频点的小区分配相应数量的cpu,包括:
根据每种所述通信制式的小区已分配的cpu数量和每种所述通信制式中每个频点的小区数量,对每种所述通信制式中每个频点的小区分配相应数量的cpu。
本发明提供的数据配置方法和装置,通过为分布式并行系统中的每种通信制式的小区分配相应数量的cpu,基于每种通信制式的小区已分配的cpu,为每种通信制式中每个频点的小区分配相应数量的cpu,从而在每种通信制式中每个频点的小区所分配的cpu的基础上,分别将每组相同通信制式中相同频点的小区划分到已分配的cpu中,并且划分到相同cpu中小区集合内的干扰大于划分到不同cpu中小区集合间的干扰;本发明实施例中以通信制式和每种通信制式中的不同频点为原则对小区进行划分,并且实现将干扰关系较多的小区以及与这个小区有干扰关系的小区划分到相同cpu中,实现了降低并行cpu之间数据交互量的效果,即通过合理的分布式并行系统中各cpu间的数据处理关系来降低并行cpu之间的数据交互量,从而提高了分布式并行系统的计算效率。
附图说明
附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
图1为本发明实施例提供的一种数据配置方法的流程图;
图2为本发明实施例提供的另一种数据配置方法的流程图;
图3为本发明实施例提供的又一种数据配置方法的流程图;
图4为图3所示实施例提供的数据配置方法中一种建立干扰权值矩阵的流程图;
图5为图4所示实施例提供的数据配置方法中一种小区分布的示意图;
图6为图4所示实施例提供的数据配置方法中一种小区覆盖范围的示意图;
图7为图4所示实施例提供的数据配置方法中一种小区干扰关系的示意图;
图8为图3所示实施例提供的数据配置方法中一种小区划分方法的流程图;
图9为图3所示实施例提供的数据配置方法中一种小区初步划分方法的流程图;
图10为图3所示实施例提供的数据配置方法中一种小区调整方法的流程图;
图11为图10所示实施例提供的小区调整方法中部分流程的替代流程图;
图12为图3所示实施例提供的数据配置方法中一种小区扩展方法的流程图;
图13为图3所示实施例提供的数据配置方法中一种小区补充处理方法的流程图;
图14为本发明实施例提供的一种数据配置装置的结构示意图;
图15为本发明实施例提供的另一种数据配置装置的结构示意图;
图16为本发明实施例提供的又一种数据配置装置的结构示意;
图17为图16所示实施例提供的数据配置装置中一种干扰关系建立单元的结构示意图;
图18为图16所示实施例提供的数据配置装置中一种小区划分单元的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
5g系统对峰值和频谱效率的要求为4g系统的几十倍甚至上百倍,为了实现5g系统中峰值和频谱效率的目标,提出了一些新的通信技术的应用,例如大规模天线阵列等技术。传统运算设备难以实现5g系统应用场景、新通信技术的应用和仿真的数据运算,主要体现为:内存不足以支持大规模的应用场景,运算效率不足以支持大规模天线阵列的建模和高频无线信道精确建模仿真,由于超大规模天线阵列引入,可提供数十个独立的空间数据流,即数倍提升多用户系统的频谱效率,整个阵列上的传播条件可能发生变化,则需要对每根天线进行精确的信道建模;显然地,传统运算设备难以支持上述大规模的运算量。
上述背景技术中已经说明虽然分布式并行系统可以解决传统运算设备内存不足和运算效率不支持的问题,但是该分布式并行系统的计算效率仍然具有可提升空间。
下面通过具体的实施例对本发明的技术方案进行详细说明,本发明以下各实施例中的终端设备为分布式并行系统中配置cpu和小区的设备,例如为设计人员操作的服务器。本发明提供以下几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图1为本发明实施例提供的一种数据配置方法的流程图。本实施例提供 的数据配置方法适用于对分布式并行系统中各cpu的数据关系进行配置的情况中,该方法可以由数据配置装置执行,该数据配置装置通过硬件和软件结合的方式来实现,该装置可以集成在终端设备的处理器中,供处理器调用使用。如图1所示,本实施例的方法可以包括:
s110,为分布式并行系统中的每种通信制式的小区分配相应数量的cpu。
本发明实施例提供的数据配置方法,为分布式并行系统(以下简称为:并行系统)中的各cpu的数据关系进行配置,具体体现在对并行系统中不同类型的小区分配相应数量的cpu,该不同类型的小区例如为不同通信制式的小区,例如包括长期演进(longtermevolution,简称为:lte)制式的小区、全球移动通信系统(globalsystemformobilecommunication,简称为:gsm)制式的小区和通用移动通信系统(universalmobiletelecommunicationssystem,简称为:umts)制式的小区,即每种通信制式的小区使用分配的cpu进行数据处理。
本实施例考虑到不同通信制式间的小区的数据交互量较少,通常仅存在信令交互,并且不同通信制式的代码一起仿真会导致程序结构的复杂性,增加代码维护和开发的成本,不利于扩展,因此将这些不同通信制式的小区分别划分在不同的cpu中,即本实施例中每种通信制式的小区分配的cpu是不同的,从而适应分配在不同通信制式的cpu间具有较少的数据交互量。
s120,根据每种通信制式的小区已分配的cpu,为每种通信制式中每个频点的小区分配相应数量的cpu。
在本实施例中,以通信制式划分出不同类型的小区仅是粗略的划分,每种通信制式中通常存在多个频点,可以进一步以不同频点为划分单位将不同类型的小区划分的更细致,即在单通信制式的基础上,将每种通信制式的小区划分为每种通信制式中每个频点的小区。以lte制式为例予以示出,若lte制式中具有三个频点,即f1、f2和f3,则将lte制式的小区划分为:lte制式f1频点的小区,lte制式f2频点的小区和lte制式f3频点的小区,并且上述三种类型的小区分配有相应数量的cpu,且上述三种类型的小区分配的cpu总数之和为lte制式的小区分配的cpu数量。
s130,根据每种通信制式中每个频点的小区已分配的cpu数量,分别将每组相同通信制式中相同频点的小区划分到已分配的cpu中,其中,划分到相同cpu中小区集合内的干扰大于划分到不同cpu中小区集合间的干扰。
在本实施例中,相同通信制式相同频点的小区集合为划分小区的基本单元,即为不同类型小区的基本单元,对于每组相同通信制式中相同频点的小区集合,已经分配了该类型小区集合对应的cpu,此时,已经完成了数据的初步划分,将并行系统中数据交互量相对较大的小区,即相同制式相同频点的小区集合作为一个基本单元,每个基本单元分配了并行系统中的cpu,并且每个基本单元分配的cpu不同。
需要说明的是,本发明实施例中每组相同通信制式中相同频点的小区集合与分配的cpu数量的对应关系,可以为一对多的关系或一对一的关系,此处将每组相同通信制式中相同频点的小区集合作为一个整体。
本实施例在具体实现中,对每组相同通信制式中相同频点的小区进行划分时,该确定类型的小区已经具有相对确定的cpu,即该确定类型的小区在上述已经分配的cpu的范围内进行划分,上述划分原则为:并行系统中的小区以通信制式和频点为单位划分为不同类型的小区,使得每种类型的小区之间的数据交互量尽可能少;类似地,对相同制式中相同频点的小区划分cpu时,同样可以遵循上述原则,本实施例以小区间的干扰为依据来判断小区间的数据交互量,具体地,在相同制式中相同频点的小区中,认为任意两个相互干扰的小区间的数据交互量最多,任意两个单向干扰的小区间的数据交互量次之,任意两个没有干扰的小区间的数据交互量最少,根据上述原则,可以将干扰密集度较高的多个小区划分到不同cpu中,即划分到相同cpu中小区集合内的干扰大于划分到不同cpu中小区集合间的干扰,即降低了并行cpu之间数据交互量,从而实现提高分布式并行系统的计算效率的目的。
本实施例提供的数据配置方法,通过为分布式并行系统中的每种通信制式的小区分配相应数量的cpu,基于每种通信制式的小区已分配的cpu,为每种通信制式中每个频点的小区分配相应数量的cpu,从而在每种通信制式中每个频点的小区所分配的cpu的基础上,分别将每组相同通信制式中相同 频点的小区划分到已分配的cpu中,并且划分到相同cpu中小区集合内的干扰大于划分到不同cpu中小区集合间的干扰;本实施例中以通信制式和每种通信制式中的不同频点为原则对小区进行划分,并且实现将干扰关系较多的小区以及与这个小区有干扰关系的小区划分到相同cpu中,实现了降低并行cpu之间数据交互量的效果,即通过合理的分布式并行系统中各cpu间的数据处理关系来降低并行cpu之间的数据交互量,从而提高了分布式并行系统的计算效率。
可选地,图2为本发明实施例提供的另一种数据配置方法的流程图,在上述图1所示实施例的基础上,本实施例中提供一种对不同通信制式的小区分配cpu的具体方式,即上述实施例中的s110可以包括:
s111,分别测量每种通信制式的相同数量小区和ue规模仿真预置时间所消耗的运算时间。
s112,根据测得的运算时间和每种通信制式中的小区数量,对每种通信制式的小区分配相应数量的cpu。
举例来说,分布式并行系统中同样包括lte制式、gsm制式和umts制式,该三种通信制式的小区数量分别为:icellnumlte、icellnumgsm和icellnumumts,分布式并行系统中cpu的总数为icpunum。首先,测量lte制式的1个小区中10个ue、gsm制式的1个小区中10个ue和umts制式的1个小区中10个ue分别仿真10毫秒(ms)所消耗的运算时间为:tlte、tgsm和tumts;其次,已知上述运算时间和每种通信制式的小区数量,计算为每种通信制式的小区分配的cpu数量分别为:
lte制式:
gsm制式:
umts制式:
可选地,本发明实施例提供的数据配置方法中,对同一通信制式的不同频点的小区分配cpu的方式,即上述各实施例中的s120可以替换为:根据每种通信制式的小区已分配的cpu数量和每种通信制式中每个频点的小区数量,对每种通信制式中每个频点的小区分配相应数量的cpu。
本实施例在具体实现中,同样以lte制式中的三个频点f1、f2和f3为例予以说明,lte制式中频点f1、f2和f3中的小区数量分别为:icellnum1、icellnum2和icellnum3,该lte制式的小区已分配的cpu数量为icpunumlte,计算为lte制式中每个频点的小区分配的cpu数量分别为:
lte制式中频点f1:
lte制式中频点f2:
lte制式中频点f3:
需要说明的是,上述对s110和s120中分配cpu的具体方式和计算公式,为本实施例的一种示意性说明,本发明同样可以采用其它方式执行分配cpu的方式,只要是可以将并行系统中的cpu合理的分配给不同通信制式中不同频点的小区即可。
通过上述分配cpu的具体方式,可以为每种通信制式中每个频点的小区分配到具体数量的cpu,随后,需要对相同通信制式中相同频点的小区进行具体划分,也是本发明实施例对小区划分相应cpu的重点内容。
上述实施例中已经说明小区类型的基本单元为相同通信制式中相同频点的小区,该相同通信制式中相同频点的小区记为第一分组小区单元,本发明以下各实施例在划分小区的方式中,均是以第一分组小区单元为基本单位进 行划分的,以上述第一分组小区单元与分配的cpu数量的对应关系为一对多的关系为例予以说明,即每个第一分组小区单元均分配了多个cpu。如图3所示,为本发明实施例提供的又一种数据配置方法的流程图,在上述图1所示实施例的基础上,本实施例中的s130可以包括:
s131,根据每个第一分组小区单元中小区间的干扰,分别建立每个第一分组小区单元的干扰权值矩阵,该干扰权值矩阵用于体现每个第一分组小区单元中小区间的干扰关系。
s132,根据所建立的每个第一分组小区单元的干扰权值矩阵,分别将每个第一分组小区单元中的小区划分到已分配的cpu中。
在本实施例中,以每个第一分组小区单元为基本单位,考虑一个第一分组小区单元中所有小区间的干扰,建立针对每个第一分组小区单元的干扰权值矩阵,所建立的干扰权值矩阵的行和列为对应第一分组小区单元中的小区数量,其中,干扰权值矩阵中的每个元素用于体现对应第一分组小区单元中每个小区与其它小区的干扰关系,该干扰关系包括相互干扰、单向干扰和无干扰。该小区间的干扰关系是决定cpu间数据交互量的重要因素,以干扰关系为依据对每个第一分组小区单元中的小区进行划分,通常原则是将干扰权值较大的小区以及与该小区存在干扰关系的小区尽可能划分到一个cpu中,即划分到不同cpu中的小区集合之间干扰权值最小,这样就降低了cpu间的数据交互量,从而提高分布式并行系统的计算效率。
可选地,在图3所示实施例的基础上,第一分组小区单元与分配的cpu数量的对应关系还可以包括一对多的关系和一对一的关系,此时,将分配了多个cpu的相同通信制式中相同频点的小区记为第一分组小区单元,将分配了一个cpu的相同通信制式中相同频点的小区记为第二分组小区单元,即在s110和s120分配cpu的过程中,第二分组小区单元仅分配了一个cpu,若采用上述s131~s132的方式对第二分组小区单元中的小区进行划分,则带来了额外的处理量;因此,在图3所示实施例的基础上,还可以包括:
s133,分别将第二分组小区单元中的小区划分到已分配的一个cpu中。
本实施例对分配了多个cpu的第一分组小区单元和分配了一个cpu的第二分组小区单元进行区别处理,在具体应用中,例如gsm制式中的计算 量可能比较少,对该gsm制式中某个频点的小区分配一个cpu即可满足计算需要,即该类型的小区中的计算量可以在一个cpu中进行,有利于节省系统资源,并且具有更加便捷的分配方式。
需要说明的是,本实施例不限制s133与s131~s132的执行顺序,可以是依次执行的,也可以是并行执行的,图3以s133在s131~s132之后执行为例予以示出。
上述实施例在具体实现中,建立每个第一分组小区单元的干扰权值矩阵的方式如图4所示,为图3所示实施例提供的数据配置方法中一种建立干扰权值矩阵的流程图。本实施例提供建立干扰权值矩阵的方法包括以下步骤:
s210,根据分布式并行系统中配置的信道参数和小区位置,分别计算每个第一分组小区单元中每个小区到仿真区域中每个网格点的大尺度衰落值。
通常的,通过网格来离散化整个仿真范围,网格可以是正方形、长方形或六边形,网格点可以配置为所属网格的中心点,网格的大小和形状可以配置。如图5所示,为图4所示实施例提供的数据配置方法中一种小区分布的示意图,图5中的小区为其中一个第一分组小区单元中小区。若某一第一分组小区单元中的小区数量为m个,整个仿真范围内的网格点的数量为k*l个,则对于该第一分组小区单元需要计算出k*l*m个大尺度衰落值。
s220,根据分布式并行系统中每个小区的配置功率和计算的大尺度衰落值,分别计算每个第一分组小区单元中每个小区到每个网格点的参考信号接收功率(referencesignalreceivingpower,简称为:rsrp)。
本实施例中对于每个第一分组小区单元,需要计算的rsrp的数量同样可以为k*l*m个。
s230,根据所计算的rsrp,分别确定每个第一分组小区单元中每个小区的覆盖范围,每个小区的覆盖范围为多个网格点的集合,其中,每个小区到形成其覆盖范围的每个网格点的rsrp为,所属第一分组小区单元中到每个网格点的rsrp最大值。
在本实施例中,对于一个网格点来说,具有m个小区的rsrp,计算m个rsrp中最大值对应的小区,将此网格点作为此小区的覆盖范围之一。如 图6所示,为图4所示实施例提供的数据配置方法中一种小区覆盖范围的示意图,图6中的小区同样为其中一个第一分组小区单元中小区。
s240,根据计算的rsrp和每个小区的覆盖范围,分别建立每个第一分组小区单元的干扰矩阵。
本实施例在每个第一分组小区单元中,已知每个小区到每个网格点的rsrp和每个小区的覆盖范围,此时,可以建立每个第一分组小区单元的干扰矩阵。建立第一分组小区单元的干扰矩阵的具体方式为:在每个第一分组小区单元内,遍历每个小区与其它小区的干扰得到每个第一分组小区单元的干扰矩阵intvalue,该干扰矩阵的行和列为第一分组小区单元的小区数量,即干扰矩阵intvalue的大小为[icellnum,icellnum],该干扰矩阵中的每个元素体现该第一分组小区单元中小区间的干扰大小。
需要说明的是,在每个第一分组小区单元内,每个小区与其它小区的干扰为其它小区在该小区覆盖范围内的rsrp最大值;或者,每个小区与其它小区的干扰为其它小区在该小区覆盖范围内的rsrp平均值;或者,每个小区与其它小区的干扰为其它小区在该小区覆盖范围内的rsrp大于rspr阈值的数量,rspr阈值例如为可配置值。
s250,根据配置的干扰阈值和每个第一分组小区单元的干扰矩阵,分别获取每个第一分组小区单元的干扰权值矩阵。本实施例提供的方法中,s250具体包括:
s251,根据干扰阈值和每个第一分组小区单元的干扰矩阵,分别计算每个第一分组小区单元的干扰标识矩阵和平均干扰小区数量。
本实施例提供的方法中,干扰阈值为一可配置的值,在后面的处理可能还要发生变化,即初始时刻的干扰阈值可以是设计人员预先配置的经验值。具体将干扰阈值fintvaluethr的干扰矩阵intvalue中的每个元素进行对比,将干扰矩阵中大于等于fintvaluethr的元素设置为1,小于等于fintvaluethr的元素设置为0,得到针对每个第一分组小区单元的干扰标识矩阵intflag,该干扰标识矩阵intflag的大小同样为[icellnum,icellnum]。
进一步地,可以通过intflag计算当前第一分组小区单元中每个小区的干扰小区数量,从而获得该第一分组小区单元的平均干扰小区数量iintnumavg。
本实施例通过分别将每个第一分组小区单元的平均干扰小区数iintnumavg与配置的第一小区阈值iintcellnumthr进行对比,确定出计算干扰权值矩阵所需的最终干扰阈值,本实施例中配置的第一小区阈值iintcellnumthr为关于小区数量的阈值,对比iintcellnumthr和iintnumavg,在对比结果不同时,可以对干扰阈值进行动态调整,并根据动态调整的干扰阈值计算每个第一分组小区单元的干扰权值矩阵;若对比结果相同,则说明s251中的干扰阈值即为计算干扰权值矩阵所需的最终干扰阈值。具体地,s251之后的具体步骤包括:
s252,判断第一小区阈值与平均干扰小区数是否相等。若不等,则执行s253;若相等,则执行s256。
s253,判断第一小区阈值是否大于平均干扰小区数。若是,则执行s254;若否,则执行s255。
s254,将干扰阈值减少第一收敛阈值。也就是重新调整干扰阈值,即fintvaluethr=fintvaluethr-δy,其中,第一收敛阈值为δy,δy随abs(iintcellnumthr-iintnumavg)的大小动态变化,abs(iintcellnumthr-iintnumavg)较大时δy较大,abs(iintcellnumthr-iintnumavg)较小时δy较小,目的是加快算法收敛速度。随后返回重新执行s251,由于干扰阈值重新调整,因此需要根据重新调整的干扰阈值获取干扰权值矩阵。随后返回循环执行s251,直到s252中的判断结果为相等。
s255,将干扰阈值增加第二收敛阈值。同样是需要重新调整干扰阈值,即fintvaluethr=fintvaluethr+δx,其中,第二收敛阈值为δx,δx随abs(iintcellnumthr-iintnumavg)的大小动态变化,abs(iintcellnumthr-iintnumavg)较大时δy较大,abs(iintcellnumthr-iintnumavg)较小时δy较小,目的是加快算法收敛速度。随后同样返回重新执行s251,由于干扰阈值重新调整,因此需要根据重新调整的干扰阈值获取干扰权值矩阵。随后返回循环执行s251,直到s252中的判断结果为相等。
s256,获取每个第一分组小区单元的初始干扰权值矩阵。本实施例中获取初始干扰权值矩阵的方式与s251中获取干扰标识矩阵的方式相同,该初始干扰权值矩阵为通过对比结果相同时的干扰阈值和干扰矩阵计算出的干扰标识矩阵,也就是说,具体将最近一次执行s251中的干扰标识矩阵作为初 始干扰权值矩阵。
s257,根据每个第一分组小区单元中小区间的干扰关系对初始干扰权值矩阵进行修正,得到每个第一分组小区单元的干扰权值矩阵。
在初始干扰权值矩阵中找到互为干扰的小区,将他们之间的权值修改为2,另外小区对自己的干扰权值为0,即将初始干扰权值矩阵中对角线的值修正为0。干扰权值矩阵代表对应第一分组小区单元中小区之间的干扰关系,如图7所示,为图4所示实施例提供的数据配置方法中一种小区干扰关系的示意图,图7中的小区同样为其中一个第一分组小区单元中小区。
可选地,如图8所示,为图3所示实施例提供的数据配置方法中一种小区划分方法的流程图。本实施例具体说明图3所示数据配置方法中s132的执行方式,即图3所示实施例中的s132具体包括以下步骤:
s310,根据每个第一分组小区单元的干扰权值矩阵,分别对每个第一分组小区单元中的小区进行初步划分。
s320,在每个第一分组小区单元内,分别对被隔离cpu、小区数大于第二小区阈值的cpu和小区数小于第二小区阈值的cpu中的小区进行调整,其中,被隔离的cpu中的小区数小于第二小区阈值,且cpu中的小区与未划分的小区没有干扰关系。
本实施例中被隔离cpu的定义为:cpu中的小区数量小于第二小区阈值,且cpu中所有小区与未划分的小区没有任何干扰关系,可以将这类cpu中的小区移除,并划分到与之存在最大干扰权值的cpu中,然后在未分配的小区集合中找到最大干扰权值对应的小区以及与这个小区有直接干扰关系的小区,将他们组成的小区集合划分到当前被隔离的cpu中。
s330,分别在每个第一分组小区单元内,根据调整后每个cpu中已有的小区,将当前第一分组小区单元中的未分配小区划分到相应的cpu中。
s340,分别在每个第一分组小区单元内,将遗留小区和孤立小区划分到相应地的cpu中。
需要说明的是,为了以下实施例中各实例的描述进行如下定义:
定义1:对于某个第一分组小区单元来说,为其分配的第i个cpu中已 经划分小区的集合为si,该集合si的初始值为空,sremain为当前第一分组小区单元中所有为未分配的小区的集合,s为整网小区的集合,即当前第一分组小区单元中所有小区的集合。
定义2:对于某个第一分组小区单元来说,小区cj与小区集合si的干扰权值定义为小区cj与si中每个小区的干扰权值之和,记为fwgt(cj,si)。
定义3:对于某个第一分组小区单元来说,小区集合si与小区集合sj之间的干扰权值定义为si中每个小区与sj中每个小区干扰权值之和,记为fwgt(si,sj)。
图8所示实施例在具体实现中,初步划分的方式如图9所示,为图3所示实施例提供的数据配置方法中一种小区初步划分方法的流程图。本实施例具体说明图8所示流程中s310的执行方式,本实施例在以下具体说明中,以某个第一分组小区单元中的划分方式为例予以示出,图9所示流程中的所有步骤均需要对每个第一分组小区单元执行。
s311,判断当前第一分组小区单元中所有cpu是否均分配小区。若判断结果为“是”,则结束该流程;若判断结果为“否”,则执行s312。
s312,获取每个未分配小区分别与当前第一分组小区单元中小区集合的第一干扰权值,并获取最大第一干扰权值。本实施例中计算的第一干扰权值为fwgt(ci,s),ci代表每个未分配小区,fwgt(ci,s)中的最大值表示为fwgtmax。
s313,通过最大第一干扰权值获取干扰小区集合,该干扰小区集合为最大第一干扰权值对应的小区及其具有干扰关系的小区。本实施例中的干扰小区集合表示为spre_malloc。
s314,计算干扰小区集合与当前第一分组小区单元的每个cpu中已划分的小区集合的第二干扰权值和公共小区数量。
本实施例中的第二干扰权值表示为fwgt(spre_malloc,si),随后,可以根据上述公共小区数量、或者根据公共小区数量和第二干扰权值,将干扰小区集合划分到相应的cpu中,划分的具体方式如下,在s314之后包括:
s315,判断公共小区数量是否全为0。若公共小区数量中具有非0值,则执行s316;若公共小区数量均为0,则执行s317。
s316,将干扰小区集合中的小区划分到公共小区数量最大的cpu中,且合并干扰小区集合与该cpu的公共小区。随后返回循环执行s311,直到s311中的判断结果为“是”时,结束流程。
s317,判断第二干扰权值是否全为0。若全为0,则执行s318;若具有非0值,则执行s319。
s318,将干扰小区集合中的小区划分到一个小区数量为0的cpu中。随后返回循环执行s311,直到s311中的判断结果为“是”时,结束流程。
s319,将干扰小区集合中的小区划分到最大第二干扰权值对应的cpu中。随后返回循环执行s311,直到s311中的判断结果为“是”时,结束流程。
图8所示实施例在具体实现中,进行小区调整的方式如图10所示,为图3所示实施例提供的数据配置方法中一种小区调整方法的流程图。本实施例具体说明图8所示流程中s320的执行方式,本实施例在以下具体说明中,以某个第一分组小区单元中的划分方式为例予以示出,图10所示流程中的所有步骤均需要对每个第一分组小区单元执行。
在图10所示实施例中,首先对每个第一分组小区单元中被隔离cpu中的小区进行调整,具体包括:
s3210,获取cpu中小区数小于第二小区阈值的第一cpu集合{sseg}。本实施例中的第二小区阈值ithresh1为当前所有cpu中小区数的平均值,该{sseg}中的第j个cpu中小区的集合为sseg_j。随后需要遍历第一cpu集合中每个被隔离cpu,并对该些被隔离cpu中的小区进行调整,具体包括:
s3211,判断{sseg}是否处理完。若处理完,则执行s3220;若未处理完,则执行s3212,即处理下一个cpu中的小区集合。
s3212,判断sseg_j中小区与sremain是否被隔离。sremain为当前第一分组小区单元中未分配的小区集合,若被隔离,则执行s3213;若未隔离,则执行s3211。本实施例中的判断方式为即计算sseg_j与sremain的第三干扰权值fwgt(sseg_j,sremain),若该值为0,则说明sseg_j中小区与sremain中小区没有干扰关系,即被隔离,执行s3213;若该值大于0,则说明没有被隔离,返回循环 执行s3211。
s3213,计算sseg_j中每个小区与si的第四干扰权值。si为当前第一分组小区单元的其它cpu中小区集合,第四干扰权值为fwgt(cj,si)。
s3214,判断最大第四干扰权值是否为0。若不为0,执执行s3215;若为0,则执行s3216。
s3215,获取最大第四干扰权值对应的小区cmax和cpu小区集合smax,并将小区cmax从sseg_j中删除,划分到smax中。随后返回循环执行s3213。
s3216,计算sremain中每个小区的第五干扰权值fwgt(cinner,sremain)。
s3217,将最大第五干扰权值对应的小区和sremain中与该小区有干扰关系的小区,划分到sseg_j中。随后返回循环执行s3211。
在图10所示实施例中,其次对每个第一分组小区单元中小区数大于第二小区阈值的cpu中的小区进行调整,具体包括:
s3220,获取cpu中小区数大于第二小区阈值的第二cpu集合{sgreat}。该{sgreat}中的第j个cpu中小区的集合为sgreat_j。随后需要遍历第二cpu集合中每个cpu,并将这些cpu中的小区进行调整,直到这些cpu中的小区数不符合大于第二小区阈值的条件,具体包括:
s3221,判断{sgreat}是否处理完。若处理完,则执行s3230;若未处理完,则执行s3222,即处理下一个cpu中的小区集合。
s3222,判断sgreat_j中小区数量是否大于第二小区阈值。若是,则执行s3223;若否,则返回循环执行s3221。
s3223,计算sgreat_j中每个小区的第六干扰权值。该第六干扰权值为fwgt(cinner,sgreat_j)。
s3224,将最小第六干扰权值对应的小区从sgreat_j中删除,划分到sremain中。随后返回循环执行s3222。
在图10所示实施例中,最后对每个第一分组小区单元中小区数小于第二小区阈值的cpu中的小区进行调整,具体包括:
s3230,获取cpu中小区数小于第二小区阈值的第三cpu集合{sless}。 该{sless}中的第j个cpu中小区的集合为sless_j。随后需要遍历第三cpu集合中每个cpu,并将这些cpu中的小区进行调整,直到这些cpu中的小区数不符合小于第二小区阈值的条件,具体包括:
s3231,判断{sless}是否处理完。若处理完,则流程结束,即已遍历处理完所有cpu;若未处理完,则执行s3232,即处理下一个cpu中的小区集合。
s3232,判断sless_j中小区数量是否小于第二小区阈值。若是,则执行s3233;若否,则返回循环执行s3231。
s3233,计算sremain中每个小区与sless_j的第七干扰权值。该第七干扰权值为fwgt(ci,sless_j)。
s3234,判断最大第七干扰权值是否为0。若否,则执行s3235;若是,则返回循环执行s3231,即对下一个sless_j中的小区进行处理。
s3235,将最大第七干扰权值对应的未分配小区划分到sless_j中。随后返回循环执行s3232。
可选地,上述图10所示实施例中对每个第一分组小区单元中小区数小于第二小区阈值的cpu中的小区进行调整的具体方式,即s3230~s3235可以有替代方式,如图11所示,为图10所示实施例提供的小区调整方法中部分流程的替代流程图。即上述s3230~s3235可以替换为:
s410,获取cpu中小区数小于第二小区阈值的第三cpu集合{sless},该{sless}中的第j个cpu中小区的集合为sless_j。随后需要遍历第三cpu集合中每个cpu,并将这些cpu中的小区进行调整,直到这些cpu中的小区数不符合小于第二小区阈值的条件,具体包括:
s420,判断{sless}是否为空。若为“空”,则流程结束,说明当前第一分组小区单元中已不存在小区数小于第二阈值的cpu;若不为“空”,则执行s430,即处理下一个cpu中的小区集合。
s430,计算sremain中每个小区与sless_j的第七干扰权值。该第七干扰权值为fwgt(ci,sless_j)。
s440,判断最大第七干扰权值是否为0。若不为0,则执行s450;若为0,则流程结束。
s450,获取最大第七干扰权值对应的未分配小区cmax和小区集合sless_max,将cmax划分到sless_max中。随后返回循环执行s410,直到判断{sless}为空。
图8所示实施例在具体实现中,进行小区扩展的方式如图12所示,为图3所示实施例提供的数据配置方法中一种小区扩展方法的流程图。本实施例具体说明图8所示流程中s330的执行方式,本实施例在以下具体说明中,以某个第一分组小区单元中的划分方式为例予以示出,图12所示流程中的所有步骤均需要对每个第一分组小区单元执行。本实施例中扩展的目的是将每个第一分组小区单元中未分配的小区划分到与与其具有最大干扰权值的cpu中,本实施例的流程具体包括:
s331,获取cpu中小区数小于第三小区阈值的第四cpu集合{sless}。本实施例中的第三小区阈值为当前第一分组小区单元中小区总数除以cpu数量的取整值,该{sless}中的第j个cpu中小区的集合为sless_j。随后需要遍历第四cpu集合中每个cpu,并将这些cpu作为进行小区扩展的对象,直到这些cpu中的小区数不符合小于第三小区阈值的条件,具体包括:
s332,判断{sless}是否为空。若为“空”,则流程结束,即说明当前第一分组小区单元中已不存在小区数小于第三阈值的cpu;若不为“空”,则执行s333,即处理下一个cpu中的小区集合。
s333,计算sremain中每个小区与sless_j的第八干扰权值。该第八干扰权值为fwgt(ci,sless_j)。
s334,判断最大第八干扰权值是否为0。若否,则执行s335;若是,则流程结束。
s335,获取最大第八干扰权值对应的未分配小区cmax和小区集合sless_max,将cmax划分到sless_max中。随后返回循环执行s331,直到判断{sless}为空。
图8所示实施例在具体实现中,进行小区补充处理的方式如图13所示,为图3所示实施例提供的数据配置方法中一种小区补充处理方法的流程图。本实施例具体说明图8所示流程中s340的执行方式,本实施例在以下具体说明中,以某个第一分组小区单元中的划分方式为例予以示出,图13所示流程中的所有步骤均需要对每个第一分组小区单元执行。本实施例中补充处理是对前述过程中遗留的小区进行处理,上述遗留小区包括两类:第一,孤立 小区或孤立小区集合,这类小区和小区集合不同于上述方法对小区进行划分的方式,且这类小区和小区集合放在哪个cpu中对数据交互时延没有影响;第二,遗留小区,因为前述处理并不能保证将所有小区处理完成,本实施例的流程具体包括:
s341,判断sremain是否为空。若为“空”,则流程结束,即说明当前第一分组小区单元中已不存需要补充处理的小区;若不为“空”,则执行s342。
s342,计算sremain中每个小区与每个cpu中小区集合si的第九干扰权值。该第九干扰权值为fwgt(cj,si)。
s343,判断最大第九干扰权值是否为0。若否,则执行s344;若是,则执行s345。
s344,获取最大第九干扰权值对应的遗留小区cmax和小区集合sless_max,将cmax划分到sless_max中。随后返回循环执行s341,直到判断sremain为空。
s345,将最大第九干扰权值对应的孤立小区划分到小区数最少的cpu中。随后返回循环执行s341,直到判断sremain为空。
本发明上述各实施例中对小区进行划分的方式,在将干扰权值较大的小区以及与此小区存在干扰关系的小区尽可能划分到一个cpu中,同时,尽可能保证每个cpu中配置处理数据的均衡,即符合并行系统中负荷均衡的原则,并且可以充分利用每个cpu。
图14为本发明实施例提供的一种数据配置装置的结构示意图。本实施例提供的数据配置装置适用于对不同业务类型的数据进行传输的情况中,该数据配置装置通过硬件和软件结合的方式来实现,该装置可以集成在终端设备的处理器中,供处理器调用使用。如图14所示,本实施例的数据配置装置具体包括:相连接的数量分配模块11和小区划分模块12。
其中,数量分配模块11,配置为能够为分布式并行系统中的每种通信制式的小区分配相应数量的处理器cpu。
本发明实施例提供的数据配置装置,为并行系统中的各cpu的数据关系进行配置,具体体现在对并行系统中不同类型的小区分配相应数量的cpu,该不同类型的小区例如为不同通信制式的小区。
需要说明的是,本实施例考虑到不同通信制式间的小区的数据交互量较少,通常仅存在信令交互,并且不同通信制式的代码一起仿真会导致程序结构的复杂性,增加代码维护和开发的成本,不利于扩展,因此将这些不同通信制式的小区分别划分在不同的cpu中,即本实施例中每种通信制式的小区分配的cpu是不同的,从而适应分配在不同通信制式的cpu间具有较少的数据交互量。
数量分配模块11,还配置为能够根据每种通信制式的小区已分配的cpu,为每种通信制式中每个频点的小区分配相应数量的cpu。
在本实施例中,以通信制式划分出不同类型的小区仅是粗略的划分,每种通信制式中通常存在多个频点,可以进一步以不同频点为划分单位将不同类型的小区划分的更细致,即在单通信制式的基础上,将每种通信制式的小区划分为每种通信制式中每个频点的小区。每种通信制式中不同频点的小区分配的cpu总数等于该通信制式的小下分配的cpu数量。
小区划分模块12,配置为能够根据数量分配模块11为每种通信制式中每个频点的小区已分配的cpu,分别将每组相同通信制式中相同频点的小区划分到已分配的cpu中,其中,划分到相同cpu中小区集合内的干扰大于划分到不同cpu中小区集合间的干扰。
在本实施例中,相同通信制式相同频点的小区集合为划分小区的基本单元,即为不同类型小区的基本单元,对于每组相同通信制式中相同频点的小区集合,已经分配了该类型小区集合对应的cpu,此时,已经完成了数据的初步划分,将并行系统中数据交互量相对较大的小区,即相同制式相同频点的小区集合作为一个基本单元,每个基本单元分配了并行系统中的cpu,并且每个基本单元分配的cpu不同。
需要说明的是,本发明实施例中每组相同通信制式中相同频点的小区集合与分配的cpu数量的对应关系,可以为一对多的关系或一对一的关系,此处将每组相同通信制式中相同频点的小区集合作为一个整体。
本发明实施例提供的数据配置装置用于执行本发明图1所示实施例提供的数据配置方法,具备相应的功能模块,其实现原理和技术效果类似,此处不再赘述。
可选地,图15为本发明实施例提供的另一种数据配置装置的结构示意图,在上述图14所示实施例的基础上,本实施例中提供一种数量分配模块11包括对不同通信制式的小区分配cpu的具体方式,即上述实施例中的数量分配模块11包括可以包括:相连接的测量单元13和数量分配单元14;其中,测量单元13,配置为能够分别测量每种通信制式的相同数量小区和ue规模仿真预置时间所消耗的运算时间;数量分配单元14,配置为能够根据测量单元13测得的运算时间和每种通信制式中的小区数量,对每种通信制式的小区分配相应数量的cpu。
可选地,本发明实施例提供的数据配置装置中,数量分配模块11配置对同一通信制式的不同频点的小区分配cpu的方式,具体可以为:根据每种通信制式的小区已分配的cpu和每种通信制式中每个频点的小区数量,对每种通信制式中每个频点的小区分配相应数量的cpu。
需要说明的是,本实施例中测量单元13对每种通信制式的小区仿真预置时间所消耗的运算时间的测量方式和测量公式,以及计算不同通信制式的小区所需cpu数量和计算不同通信制式中不同频点的小区所需cpu数量的方式,与上述实施例中类似,故此处不再赘述。
本发明实施例提供的数据配置装置用于执行本发明图2所示实施例提供的数据配置方法,具备相应的功能模块,其实现原理和技术效果类似,此处不再赘述。
通过上述分配cpu的具体方式,可以为每种通信制式中每个频点的小区分配到具体数量的cpu,随后,需要对相同通信制式中相同频点的小区进行具体划分,也是本发明实施例对小区划分相应cpu的重点内容。
上述实施例中已经说明小区类型的基本单元为相同通信制式中相同频点的小区,该相同通信制式中相同频点的小区记为第一分组小区单元,以上述第一分组小区单元与分配的cpu数量的对应关系为一对多的关系为例予以说明,即每个第一分组小区单元均分配了多个cpu。如图16所示,为本发明实施例提供的又一种数据配置装置的结构示意,在上述各实施例所示数据配置装置的基础上,本实施例中小区划分模块12可以包括:相连接的干扰关系建立单元15和小区划分单元16。图16所示数据配置装置以在图15所 示装置的结构基础上为例予以示出。
其中,干扰关系建立单元15,配置为能够根据每个第一分组小区单元中小区间的干扰,分别建立每个第一分组小区单元的干扰权值矩阵,干扰权值矩阵用于体现每个第一分组小区单元中小区间的干扰关系。
小区划分单元16,配置为能够根据干扰关系建立单元15建立的每个第一分组小区单元的干扰权值矩阵和数量分配模块11分配的cpu,分别将每个第一分组小区单元中的小区划分到已分配的cpu中。
可选地,在图16所示实施例的基础上,第一分组小区单元与分配的cpu数量的对应关系还可以包括一对多的关系和一对一的关系,此时,将分配了多个cpu的相同通信制式中相同频点的小区记为第一分组小区单元,将分配了一个cpu的相同通信制式中相同频点的小区记为第二分组小区单元,本实施例中针对第二分组小区单元划分小区的方式为:小区划分单元16,还配置为能够分别将每个所述第二分组小区单元中的小区划分到已分配的一个cpu中。
需要说明的是,本实施例不限制对第一分组小区单元中的小区和对第二分组小区单元中的小区执行划分的先后顺序,可以是依次执行的,也可以是并行执行的。
本发明实施例提供的数据配置装置用于执行本发明图3所示实施例提供的数据配置方法,具备相应的功能模块,其实现原理和技术效果类似,此处不再赘述。
上述实施例在具体实现中,如图17所示,为图16所示实施例提供的数据配置装置中一种干扰关系建立单元的结构示意图。本实施例具体说明每个第一分组小区单元的干扰权值矩阵的建立方式,即干扰关系建立单元15可以包括:
计算子单元151,配置为能够根据分布式并行系统中配置的信道参数和小区位置,分别计算每个第一分组小区单元中每个小区到仿真区域中每个网格点的大尺度衰落值。
计算子单元151,还配置为能够根据分布式并行系统中每个小区的配置 功率和所计算的大尺度衰落值,分别计算每个第一分组小区单元中每个小区到每个网格点的rsrp。
覆盖范围确定子单元152,还配置为能够根据所计算的rsrp,分别确定每个第一分组小区单元中每个小区的覆盖范围,每个小区的覆盖范围为多个网格点的集合,其中,每个小区到形成其覆盖范围的每个网格点的rsrp为,所属第一分组小区单元中到每个网格点的rsrp最大值。
关系建立子单元153,配置为能够根据计算子单元151计算的rsrp和覆盖范围确定子单元152为每个小区的覆盖范围,分别建立每个第一分组小区单元的干扰矩阵。在本实施例中,可以分别在每个第一分组小区单元内,遍历每个小区与其它小区的干扰得到每个第一分组小区单元的干扰矩阵;其中,每个小区与其它小区的干扰为其它小区在该小区覆盖范围内的rsrp最大值;或者,每个小区与其它小区的干扰为其它小区在该小区覆盖范围内的rsrp平均值;或者,每个小区与其它小区的干扰为其它小区在该小区覆盖范围内的rsrp大于rspr阈值的数量。
关系建立子单元153,还配置为能够根据配置的干扰阈值和每个第一分组小区单元的干扰矩阵,分别获取每个第一分组小区单元的干扰权值矩阵。
本实施例在具体实现中,关系建立子单元153配置为能够根据配置的干扰阈值和每个第一分组小区单元的干扰矩阵,分别获取每个第一分组小区单元的干扰权值矩阵,包括:
根据干扰阈值和每个第一分组小区单元的干扰矩阵,分别计算每个第一分组小区单元的干扰标识矩阵和平均干扰小区数量。
分别将每个第一分组小区单元的平均干扰小区数与配置的第一小区阈值进行对比。
在对比结果不同时,对干扰阈值进行重新配置,并根据重新配置的干扰阈值计算每个第一分组小区单元的干扰权值矩阵。
具体地,对比结果不同包括以下两种情况:第一小区阈值大于平均干扰小区数时,配置干扰阈值减少第一收敛阈值;在第一小区阈值小于平均干扰小区数时,配置干扰阈值增加第二收敛阈值。
在对比结果相同时,获取每个第一分组小区单元的初始干扰权值矩阵,并根据每个第一分组小区单元中小区间的干扰关系对初始干扰权值矩阵进行修正得到每个第一分组小区单元的干扰权值矩阵,初始干扰权值矩阵为通过对比结果相同的干扰阈值和干扰矩阵计算出的干扰标识矩阵。
本实施例中涉及到的某个第一分组小区单元中的小区分布示意图,小区覆盖范围示意图和小区干扰关系示意图可以参照上述实例中的图5到图7。
本发明实施例提供的数据配置装置用于执行本发明图4所示实施例提供的数据配置方法,具备相应的功能模块,其实现原理和技术效果类似,此处不再赘述。
上述实施例在具体实现中,如图18所示,为图16所示实施例提供的数据配置装置中一种小区划分单元的结构示意图。本实施例具体说明每个第一分组小区单元中的小区如何划分到已分配的cpu中,该小区划分单元16可以包括:
初步划分子单元161,配置为能够根据干扰关系建立单元15为每个第一分组小区单元的干扰权值矩阵,分别对每个第一分组小区单元中的小区进行初步划分。
本实施例中初步划分子单元161的具体划分方式为:分别在每个第一分组小区单元内,获取每个未分配小区分别与当前第一分组小区单元中小区集合的第一干扰权值,并通过最大第一干扰权值获取干扰小区集合,干扰小区集合为最大第一干扰权值对应的小区及其具有干扰关系的小区。
计算干扰小区集合与当前第一分组小区单元的每个cpu中已划分的小区集合的第二干扰权值和公共小区数量。
根据公共小区数量、或者公共小区数量和第二干扰权值,将干扰小区集合划分到相应的cpu中。本实施例在具体实现中,在公共小区数量具有非0值时,将干扰小区集合中的小区划分到公共小区数量最大的cpu中,且合并干扰小区集合与cpu的公共小区;在公共小区数量全为0,且第二干扰权值全为0时,将干扰小区集合中的小区划分到一个小区数量为0的cpu中;在公共小区数量全为0,且第二干扰权值中具有非0值时,将干扰小区集合中的小区划分到最大第二干扰权值对应的cpu中。
需要说明的是,本实施例中初步划分子单元161对小区执行初步划分的具体方式可以参考上述图9所示流程。
小区调整子单元162,配置为能够在每个第一分组小区单元内,分别对被隔离cpu、小区数大于第二小区阈值的cpu和小区数小于第二小区阈值的cpu中的小区进行调整,其中,被隔离cpu中的小区数小于第二小区阈值,且cpu中的小区与未划分的小区没有干扰关系。本实施例中被隔离cpu的定义在上述实施例中已经说明,故在此不再赘述。
本实施例中小区调整子单元162的对不同类型cpu中小区进行调整的具体方式为:分别在每个所述第一分组小区单元内,首先,获取cpu中小区数小于所述第二小区阈值的第一cpu集合,所述第二小区阈值为当前所有cpu中小区数的平均值;分别对所述第一cpu集合中每个被隔离cpu中的小区进行调整。在具体实现中,对被隔离cpu中的小区进行调整的方式为:根据所第一述cpu集合中每个cpu中的小区集合与当前第一分组小区单元中未分配小区集合的第三干扰权值,确定第一cpu集合中的被隔离cpu,其中,该第三干扰权值为0的cpu为被隔离cpu,该第三干扰权值大于0的cpu未隔离;计算每个被隔离cpu中每个小区分别与当前第一分组小区单元的其它cpu中小区集合的第四干扰权值;在最大第四干扰权值不为0时,获取最大第四干扰权值对应的小区和cpu小区集合,并将小区从被隔离的cpu中删除,划分到最大第四干扰权值对应的cpu小区集合中;在最大第四干扰权值为0时,计算当前第一分组小区单元中未分配小区集合中每个小区的第五干扰权值,并将最大第五干扰权值对应的小区和未分配小区集合中与最大第五干扰权值对应的小区有干扰关系的小区,划分到最大第四干扰权值对应的被隔cpu中。
其次,在第一cpu集合处理完成后,获取小区数大于第二小区阈值的第二cpu集合;分别对第二cpu集合的每个cpu中的小区进行调整。在具体实现中,对小区数大于第二小区阈值的cpu中的小区进行调整的方式为:计算第二cpu集合中每个cpu中每个小区的第六干扰权值;将最小第六干扰权值对应的小区从当前cpu中删除,划分到当前第一分组小区单元的未分配小区集合中。
在此,在第二cpu集合处理完成后,获取小区数小于第二小区阈值的第三cpu集合;分别对第三cpu集合的每个cpu中的小区进行调整。在具体实现中,对小区数小于第二小区阈值的cpu中的小区进行调整的方式为:计算当前第一分组小区单元中未分配小区集合中每个小区与第三cpu集合的每个cpu中小区集合的第七干扰权值;在最大第七干扰权值不为0时,将最大第七干扰权值对应的未分配小区划分到第三cpu集合的对应cpu中。
需要说明的是,本实施例中初步划分子单元161对小区执行初步划分的具体方式可以参考上述图10所示流程。
补充处理子单元163,配置为能够分别在每个第一分组小区单元内,根据调整后每个cpu中已有的小区,将当前第一分组小区单元中的未分配小区划分到相应的cpu中。
本实施例中补充处理子单元163的对调整后的小区进行扩展处理的具体方式为:分别在每个第一分组小区单元内,获取cpu中小区数小于第三小区阈值的第四cpu集合,第三小区阈值为当前第一分组小区单元中小区总数除以cpu数量的取整值;计算当前第一分组小区单元中未分配小区集合中每个小区与第四cpu集合的每个cpu中小区集合的第八干扰权值;在最大第八干扰权值不为0时,将最大第八干扰权值对应的未分配小区划分到第四cpu集合的对应cpu中。
需要说明的是,本实施例中初步划分子单元161对小区执行初步划分的具体方式可以参考上述图12所示流程。
补充处理子单元163,还配置为能够分别在每个第一分组小区单元内,将遗留小区和孤立小区划分到相应地的cpu中。
本实施例中补充处理子单元163的对遗留小区和孤立小区进行补充处理的具体方式为:分别在每个第一分组小区单元内,计算当前第一分组小区单元中未分配小区集合中每个小区与每个cpu中小区集合的第九干扰权值;在最大第九干扰权值不为0时,将最大第九干扰权值对应的遗留小区划分到对应的cpu中;在最大第九干扰权值为0时,将最大第九干扰权值对应的孤立小区划分到小区数最少的cpu中。
需要说明的是,本实施例中初步划分子单元161对小区执行初步划分的 具体方式可以参考上述图13所示流程。
本发明图17所示实施例提供的干扰关系建立单元用于执行本发明图4所示流程中干扰权值矩阵的建立方法,具备相应的功能模块,其实现原理和技术效果类似,此处不再赘述。本实施例中各子单元的具体实施方式的流程图可以参照上述实施例中的图9到图13。
在具体实现中,本发明图14到图16所示各实施例中的数量分配模块11和小区划分模块12可以通过终端设备的处理器来实现,其中的各单元和子单元同样可以通过终端设备的处理器来实现,该处理器例如可以是一个中央处理器(centralprocessingunit,简称为:cpu),或者是特定集成电路(applicationspecificintegratedcircuit,简称为:asic),或者是完成实施本发明实施例的一个或多个集成电路。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可以通过程序来指令相关硬件(例如处理器)完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,例如通过集成电路来实现其相应功能,也可以采用软件功能模块的形式实现,例如通过处理器执行存储于存储器中的程序/指令来实现其相应功能。本发明实施例不限制于任何特定形式的硬件和软件的结合。
虽然本发明所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。