"/>
  • 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    一種支持海量公式并行計算的方法技術

    技術編號:39870463 閱讀:10 留言:0更新日期:2023-12-30 12:58
    本發明專利技術提供一種支持海量公式并行計算的方法,包括以下步驟:

    【技術實現步驟摘要】
    一種支持海量公式并行計算的方法


    [0001]本專利技術涉及計算機
    ,尤其涉及一種支持海量公式并行計算的方法
    。

    技術介紹

    [0002]企業稅務申報表的數值計算涉及復雜的業務知識,需要通過公式引擎賦予業務人員自主配置公式來進行稅務申報的數值計算
    。
    公式引擎支持定義變量和常量

    使用自然語言描述計算步驟

    引用其他公式等功能;公式引擎為業務人員提供了一個高度靈活且易用的平臺,能夠更高效地處理業務數據并迅速做出準確的決策

    [0003]公式引擎通過將常見的計算步驟封裝為一個公式并在其他公式中重復使用,實現業務人員在一個公式中引用其他公式的功能;但現有技術中這種在一個公式中引用其他公式的方法存在以下弊端:
    1、
    一張企業稅務申報表往往需要執行上萬次公式,公式之間存在復雜的依賴關系時,難以確認公式正確的執行順序;
    2、
    無法充分利用計算機的并行計算能力實現海量公式并行計算,效率低下;

    技術實現思路

    [0004]本專利技術的目的是為了解決現有技術中存在的缺點,而提出的一種支持海量公式并行計算的方法
    。
    [0005]為實現上述目的,本專利技術采用了如下技術方案:一種支持海量公式并行計算的方法,包括以下步驟:
    S1
    :將公式間的依賴關系描述成有向無環圖;企業進行稅務申報表數值計算時,將涉及到的存在依賴關系的公式描述為有向無環圖;所述有向無環圖包括節點和有向邊,有向無環圖的各個節點對應涉及到的各個公式,有向無環圖的有向邊從被依賴節點指向依賴節點;進一步的,一條有向邊中,被依賴節點為依賴節點的前驅節點,依賴節點為被依賴節點的后繼節點;進一步的,每個節點所對應的后繼節點和前驅節點不唯一;進一步的,檢查各個節點和有向邊的指向關系,確保不會形成環路;
    S2
    :定義執行順序存儲數組;定義一個執行順序存儲數組
    readyNodes
    ;所述執行順序存儲數組
    readyNodes
    中的元素類型同樣為數組,即執行順序存儲數組
    readyNodes
    由一系列內部數組組成;進一步的,定義一個哈希表類型的變量
    checkNodes
    ,將遍歷過的節點對應的公式存儲到變量
    checkNodes
    中;
    S3
    :篩選入度為0的節點作為源點;
    遍歷有向無環圖中所有的節點,獲取各個節點的入邊數,篩選出所有入邊數為0的節點即入度為0的節點作為源點;
    S4
    :遍歷所有源點;通過廣度優先搜索
    BFS
    對步驟
    S3
    中篩選出的所有源點進行遍歷;遍歷完成后,將所有源點對應的公式保存到一個初始分組中,將這個初始分組添加到執行順序存儲數組
    readyNodes
    中,作為執行順序存儲數組
    readyNodes
    的第一個內部數組;同時將初始分組中包含的公式保存到變量
    checkNodes
    中;
    S5
    :遍歷每個后繼節點并檢查前驅節點;所有源點遍歷完成后,對所有源點對應的后繼節點進行逐個遍歷;具體的遍歷方法包括如下子步驟:
    S51
    :創建當前分組;
    S52
    : 依次遍歷所有源點對應的后繼節點并進行判斷;具體的判斷方法如下:
    S521
    :檢查當前遍歷節點的所有前驅節點,判斷當前遍歷節點的所有前驅節點是否都已存在于
    checkNodes
    中,如果是,則表示當前遍歷節點的所有前驅節點是否都已存在執行順序存儲數組
    readyNodes
    的分組中且已經都執行過;如果不是,則繼續遍歷其他節點;
    S522
    :判斷當前遍歷節點本身是否存在于
    checkNodes
    中,如果不在,則將當前遍歷節點對應的公式添加到創建的當前分組中;如果在,則繼續遍歷其他節點;
    S523
    :保存當前遍歷狀態;依次遍歷,直至所有源點的后繼節點全都遍歷完成;
    S53
    :所有源點對應的后繼節點遍歷完成;將當前分組保存到執行順序存儲數組
    readyNodes
    中,為初始分組的后的第二個內部分組;同時將第二個內部分組中包含的公式同步添加到
    checkNodes
    中;
    S6
    :繼續遍歷;檢查有向無環圖中是否存在還未分組的節點,如果不存在,則遍歷完成;如果存在,則創建新的當前分組,并對執行順序存儲數組
    readyNodes
    的第二個內部分組中所包含節點的后續節點進行遍歷;具體的遍歷方法為步驟
    S5
    中提供遍歷方法;直至有向無環圖中所有節點遍歷完成;
    S7
    :輸出節點分組的執行順序;所述各個內部分組在執行順序存儲數組
    readyNodes
    中的順序為分組的執行順序;進一步的,每個內部分組中節點對應的公式可以并行執行;與現有技術相比,本專利技術的有益效果為:本專利技術所提供的支持海量公式并行計算的方法通過將公式之間的依賴關系描述為有向無環圖的形式,通過廣度優先搜索
    BFS
    對有向無環圖中的節點對應的公式進行分組,從而確認公式的執行順序,高效解決了公式之間存在復雜的依賴關系時,難以確認公式正確的執行順序的問題;
    本專利技術提供的方法利用廣度優先搜索
    BFS
    對有向無環圖中的公式進行分組和并行計算,充分利用了現在計算機的并行處理能力,避免了傳統拓撲排序算法中的多次遞歸和重復計算的問題,能夠高效地解決公式間存在復雜依賴關系或存在大規模公式的情況;本方法通過檢查前驅節點是否都存在于之前的分組中確保了數據的正確性和一致性,避免了并發執行導致的數據沖突和錯誤,提高了計算的準確性

    附圖說明
    [0006]圖1為本專利技術一種支持海量公式并行計算的方法的步驟流程圖;圖2為本專利技術一種支持海量公式并行計算的方法的示例圖;
    實施方式
    [0007]為使對本專利技術的目的

    構造

    特征
    、
    及其功能有進一步的了解,茲配合實施例詳細說明如下

    實施例
    [0008]如圖1所示,一種支持海量公式并行計算的方法,包括以下步驟:
    S1
    :將公式間的依賴關系描述成有向無環圖;企業進行稅務申報表數值計算時,將涉及到的存在依賴關系的公式描述為有向無環圖;所述有向無環圖包括節點和有向邊,有向無環圖的各個節點對應涉及到的各個公式,有向無環圖的有向邊從被依賴節點指向依賴節點;進一步的,一條有向邊中,被依賴節點為依賴節點的前驅節點,依賴節點為被依賴節點的后繼節點;進一步的,每個節點所對應的后繼節點和前驅節點不唯一;進一步的,檢查各個節點和有向邊的指向關系,確保不會形成環路;通過確保節點和有向邊之間不形成環路,避免公式之間循環依賴的問題;將公式本文檔來自技高網
    ...

    【技術保護點】

    【技術特征摘要】
    1.
    一種支持海量公式并行計算的方法,其特征在于:包括以下步驟
    S1
    :將公式間的依賴關系描述成有向無環圖;企業進行稅務申報表數值計算時,將涉及到的存在依賴關系的公式描述為有向無環圖;所述有向無環圖包括節點和有向邊,有向無環圖的各個節點對應涉及到的各個公式,有向無環圖的有向邊從被依賴節點指向依賴節點;一條有向邊中,被依賴節點為依賴節點的前驅節點,依賴節點為被依賴節點的后繼節點;
    S2
    :定義執行順序存儲數組;定義一個執行順序存儲數組
    readyNodes
    ;所述執行順序存儲數組
    readyNodes
    中的元素類型同樣為數組,即執行順序存儲數組
    readyNodes
    由一系列內部數組組成;進一步的,定義一個哈希表類型的變量
    checkNodes
    ,將遍歷過的節點對應的公式存儲到變量
    checkNodes
    中;
    S3
    :篩選入度為0的節點作為源點;遍歷有向無環圖中所有的節點,獲取各個節點的入邊數,篩選出所有入邊數為0的節點即入度為0的節點作為源點;
    S4
    :遍歷所有源點;對步驟
    S3
    中篩選出的所有源點進行遍歷;遍歷完成后,將所有源點對應的公式保存到一個初始分組中,將這個初始分組添加到執行順序存儲數組
    readyNodes
    中,作為執行順序存儲數組
    readyNodes
    的第一個內部數組;同時將初始分組中包含的公式保存到變量
    checkNodes
    中;
    S5
    :遍歷每個后繼節點并檢查前驅節點;所有源點遍歷完成后,對所有源點對應的后繼節點進行逐個遍歷;
    S6
    :繼續遍歷;檢查有向無環圖中是否存在還未分組的節點,如果不存在,則遍歷完成;如果存在,則創建新的當前分組,并對執行順序存儲數組
    readyNodes
    的第二個內部分組中所包含節點的后續節點進行遍歷;具體的遍歷方法為步驟
    S5
    中提供遍歷方法;直至有向無環圖中所有節點遍歷完成;
    S7
    :輸出節點分組的執...

    【專利技術屬性】
    技術研發人員:慕傳偉,
    申請(專利權)人:云帳房網絡科技有限公司
    類型:發明
    國別省市:

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 国产丰满乱子伦无码专| 中文字幕av无码无卡免费| av色欲无码人妻中文字幕| 中文字幕亚洲精品无码| 国产成年无码v片在线| 亚洲AV人无码激艳猛片| 免费A级毛片无码久久版 | 色噜噜综合亚洲av中文无码| 亚洲一区二区无码偷拍| 亚洲国产一二三精品无码| 亚洲欧洲无码一区二区三区| 亚洲AV人无码综合在线观看| 亚洲v国产v天堂a无码久久| 精品国产一区二区三区无码| 亚洲人成人无码网www电影首页| 亚洲精品无码成人| 精品人妻大屁股白浆无码| 中文字幕无码日韩专区| 国产精品无码久久久久| 无码一区二区三区在线| 无码高潮爽到爆的喷水视频app| 色窝窝无码一区二区三区色欲 | 国产成人无码av在线播放不卡| 无码人妻精品一区二区| 天堂Aⅴ无码一区二区三区| 少妇中文无码高清| 国产精品无码一区二区三区在| 亚洲精品自偷自拍无码| 无码人妻精品一区二区三区99仓本| 最新国产精品无码| 国产精品无码专区| 亚洲成AV人片天堂网无码| 伊人久久无码中文字幕| 亚洲AV无码一区二区三区DV| 亚洲成AV人片在线播放无码| 亚洲精品无码永久在线观看你懂的| 成年免费a级毛片免费看无码| 日韩人妻无码一区二区三区久久99| 亚洲精品无码AV中文字幕电影网站| 国产爆乳无码视频在线观看3 | 无码国内精品人妻少妇|