System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術屬于低功耗電子產品ai,特別涉及一種低功耗電子產品加載ai模型的優化方法。
技術介紹
1、當前科技發展下各類終端產品對ai性能要求越來越高,ai需求已成為當下趨勢。以低功耗ai電子產品為例,由于市場需求,用戶對算法精準度以及種類要求越來越高。ai模型文件自然也很大,電子產品實際使用過程中對flash算法模型數據的下載和解壓時間較長,從而算法介入時間也較長,導致產品使用體驗差。
2、現有的方案為實現ai模型的快速加載一般會從存儲物料的選擇以及軟件模型加載方式兩個方向去優化。
3、物料選擇上一般選取讀取速度很快的nor型flash。優點是在非易失性存儲介質中其讀取的速度是比較快的,適合此類產品。其缺點是容量小且價格貴。
4、軟件加載方式上,模型文件不建議再進行壓縮。其本身就是已經經過處理的基本沒有冗余數據的二進制文件,即便使用壓縮最高的壓縮格式其壓縮后的數據大小也基本沒什么變化。另外模型文件的加載一般不建議使用文件系統。文件系統的存在是方便用戶來操作管理文件的。但對于ai模型文件來說一般是一個或者少數幾個文件組成,完全不需要文件系統來管理。最重要的是一旦介入了文件系統,由于文件系統復雜的管理機制和不同的文件系統可能存在的壓縮機制會導致根文件系統起來之后mount含有ai模型的文件系統時會比較耗時,文件系統類型選取的不同導致其耗時時間也有差異。針對這種基本無冗余數據的二進制文件的讀取,一般采取mtd裸分區的讀取方式,避免了由于文件系統的介入帶來的耗時。
5、現有的上述操作是在方
6、在其他低功耗類產品上,現有的上述操作基本能使產品滿足一定的市場需求,但在高端市場任然不具有優勢,現有的技術產生耗時最大的問題點在于模型數據的加載過程,從存儲設備把模型數據load到ddr上執行,無論軟件上如何優化都會受到存儲設備flash最大讀取速度的限制。即便以最大的讀取速度去load模型文件,也是需要一定的時間才能完成該操作。具體流程如圖1所示:
7、設備啟動,系統啟動,load?ai模型到ddr(耗時),ddr上執行ai算法,執行結束。等待下次啟動。
8、此外,現有技術常用的術語包括:
9、flash:存儲器屬,內存器件的一種,是一種非易失性(non-volatile)內存。也就是常說的非易失隨機訪問存儲器,特點是斷電之后數據不消失,其主要分為nor型和nand型,不同的存儲介質其讀取數據的速率不同。一般從容量成本以及讀操作時間作對比,相比nand?flash,nor?flash的容量要小,一般在1-16mbyte。價格方面nor相對nand要高。讀操作方面nor比nand要快。綜合考慮為提高產品性能一般選擇nor?flash。
10、冷啟動:如計算機只有在接通電源之后才能工作,任何電子設備都是如此,從設備接通電源到做好各種準備工作要經過一系列的初始化操作,這個過程被稱為冷啟動。
11、mtd子系統:(memory?technology?device)即常說的flash等使用存儲芯片的存儲設備,mtd子系統對應的是塊設備驅動框架中的設備驅動層,可以說mtd就是針對flash設備設計的標準化硬件驅動框架。使用mtd子系統寫flash設備驅動非常快捷。
12、嵌入式linux系統啟動過程:上電之后soc執行固化的bootrom代碼,從flash里加載bootloader段到ram上運行,bootloader階段再加載內核到ram上運行,nor和nand該過程是一致的。電池方案一般選擇nor?flash是因為nor?flash的讀取速度大于nand?flash,在啟動時間上能做到更快。
技術實現思路
1、為了解決上述問題,本申請的目的在于:通過設計zboost功能完全解決現有技術中的問題。
2、具體地,本專利技術提供一種低功耗電子產品加載ai模型的優化方法,所述方法利用低功耗設備休眠之后ddr不掉電,數據保留的特性,且設備啟動之后直接在ddr上尋址訪問數據,包括以下步驟:
3、s1,設備啟動;
4、s2,系統啟動;
5、s3,判斷是否第一次啟動?如果是,則進行步驟s4;如果否,則進行步驟s5;
6、所述判斷進一步包括:在存儲介質ddr上寫入標志位,在芯片啟動階段cpu會去讀取該標志位,如果標志位使能了則說明非第一次啟動,如果未使能則說明是第一次啟動;
7、s4,load?ai模型到ddr,此過程為需要耗時的;之后繼續進行步驟s6;s5,使用zboost功能,此過程為不需要耗時的,即在硬件上設計了命名為zboost的功能,該功能開啟之后,設備在休眠狀態下即待機狀態下cpu是處于斷電狀態,但是ddr不掉電,ddr上保留著上次設備啟動運行時的數據,在本次啟動過程中cpu啟動之后,直接在ddr對應的地址尋址訪問數據即可執行對應的程序;
8、s6,ddr上執行ai算法模型;
9、s7,執行結束,繼續等待下次啟動。
10、所述步驟s4中,設備第一次冷啟動時,cpu會通過flash控制器將模型文件從flash存儲器上load到ddr上。
11、所述步驟s5中,所述zboost功能,進一步包括:
12、zboost技術硬件設計時采用lp-ddr?ddr本身不掉電并保持自刷新,當設備掉電時,soc是處于掉電狀態,但是ddr不掉電,此時ddr上面的數據依舊存在,處于自刷新狀態,當設備再次啟動時,則不需要傳統的重新加載數據的方式到ddr這個過程,cpu可直接跳轉到ddr的對應地址上繼續執行指令。
13、所述步驟s5進一步包括:
14、在完成第一次啟動之后,ddr上面的數據只會隨著用戶程序去更新上面的數據,當該次啟動之后的業務執行結束之后,cpu會掉電設備進入休眠狀態,但此時的ddr是處于不斷電的自刷新狀態;當下次事件喚醒設備之后cpu上電直接到ddr上尋址執行,
15、在zboost設計下,當啟動時獲取到當前啟動是非第一次啟動時,cpu會恢復到休眠前的狀態繼續休眠前的指令,因為ddr是沒有掉電的,所以ddr上面的數據一直是存在,cpu是能夠正常運行的;
16、ai模型文件數據也如此即cpu只要到ddr的其指定位置去執行即可,對于開發者,操作系統上有文件系統來協助開發者管理文件,在開發該功能時將模型數據放在文件系統一個指定路徑目錄,當需要使用該文件時,到該目錄下去讀取該文件即可,從而省略了常規電子產品冷啟動之后再去flash存儲器上load對應的模型到ddr上的步驟過程。
17、所述隨著用戶程序去更新上面的數據包括更新ai模型文件的操本文檔來自技高網...
【技術保護點】
1.一種低功耗電子產品加載AI模型的優化方法,其特征在于,所述方法利用低功耗設備休眠之后DDR不掉電,數據保留的特性,且設備啟動之后直接在DDR上尋址訪問數據,包括以下步驟:
2.根據權利要求1所述的一種低功耗電子產品加載AI模型的優化方法,其特征在于,所述步驟S4中,設備第一次冷啟動時,CPU會通過Flash控制器將模型文件從Flash存儲器上load到DDR上。
3.根據權利要求1所述的一種低功耗電子產品加載AI模型的優化方法,其特征在于,所述步驟S5中,所述zboost功能,進一步包括:
4.根據權利要求1所述的一種低功耗電子產品加載AI模型的優化方法,其特征在于,所述步驟S5進一步包括:
5.根據權利要求4所述的一種低功耗電子產品加載AI模型的優化方法,其特征在于,所述隨著用戶程序去更新上面的數據包括更新AI模型文件的操作。
6.根據權利要求1所述的一種低功耗電子產品加載AI模型的優化方法,其特征在于,所述方法適用于硬件設計上有使用支持自刷新不掉電的DDR的芯片。
7.根據權利要求1所述的一種低功耗電
...【技術特征摘要】
1.一種低功耗電子產品加載ai模型的優化方法,其特征在于,所述方法利用低功耗設備休眠之后ddr不掉電,數據保留的特性,且設備啟動之后直接在ddr上尋址訪問數據,包括以下步驟:
2.根據權利要求1所述的一種低功耗電子產品加載ai模型的優化方法,其特征在于,所述步驟s4中,設備第一次冷啟動時,cpu會通過flash控制器將模型文件從flash存儲器上load到ddr上。
3.根據權利要求1所述的一種低功耗電子產品加載ai模型的優化方法,其特征在于,所述步驟s5中,所述zboost功能,進一步包括:
4.根...
【專利技術屬性】
技術研發人員:吳春雨,
申請(專利權)人:合肥君正科技有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。