FPGA ASIC CPU GPU 簡單對比 初識

2021-10-05 02:29:31 字數 1894 閱讀 3089

ai 領域 fpga、asic、cpu、gpu 簡單對比

簡介cpu:**處理器(central processing unit,cpu)是一塊超大規模的積體電路,是一台計算機的運算核心(core)和控制核心( control unit)。它的功能主要是解釋計算機指令以及處理計算機軟體中的資料。

gpu:圖形處理器(graphics processing unit,gpu),又稱顯示核心、視覺處理器、顯示晶元,是一種專門在個人電腦、工作站、遊戲機和一些移動裝置(如平板電腦、智慧型手機等)上影象運算工作的微處理器。

fpga:現場可程式設計門陣列(field programmable gate array,fpga)。其設計初衷是為了實現半定製晶元的功能,即硬體結構可根據需要實時配置靈活改變。

人工智慧領域的要求

人工智慧的基礎是演算法,深度學習是目前最主流的人工智慧演算法。深度學習又叫深度神經網路(dnn:deep neural networks),從之前的人工神經網路(ann:artificial neural networks)模型發展而來。這種模型一般採用電腦科學中的圖模型來直觀表達,深度學習的「深度」便指的是圖模型的層數以及每一層的節點數量。神經網路複雜度不斷提公升,從最早單一的神經元,到 2012 年提出的 alexnet (8個網路層),再到 2015 年提出的 resnet (150個網路層),層次間的複雜度呈幾何倍數遞增,對應的是對處理器運算能力需求的**式增長。深度學習帶來計算量急劇增加,對計算硬體帶來更高要求。

深度學習需要用到很高的並行和大量的浮點運算、矩陣運算能力。

以往的 cpu、gpu 等都不能很好的實現人工智慧的運算。所以需要針對人工智慧領域需要新的硬體處理支援。

cpucpu 有強大的排程、管理、協調能力。應用範圍廣。

開發方便且靈活。

但其在大量資料處理上沒有 gpu 專業,相對運算量低,但功耗不低。

gpu相比cpu,gpu由於更適合執行複雜的數學和幾何計算(尤其是並行運算),剛好與包含大量的並行運算的人工智慧深度學習演算法相匹配。

gpu 作為影象處理器,設計初衷是為了應對影象處理中需要大規模平行計算。因此,其在應用於深度學習演算法時,有三個方面的侷限性:

第一, 應用過程中無法充分發揮平行計算優勢。深度學習包含訓練和應用兩個計算環節,gpu 在深度學習演算法訓練上非常高效,但在應用時一次性只能對於一張輸入影象進行處理, 並行度的優勢不能完全發揮。

第二, 硬體結構固定不具備可程式設計性。深度學習演算法還未完全穩定,若深度學習演算法發生大的變化,gpu 無法像 fpga 一樣可以靈活的配置硬體結構。

第三, 執行深度學習演算法能效遠低於 fpga。學術界和產業界研究已經證明,執行深度學習演算法中實現同樣的效能,gpu 所需功耗遠大於 fpga,例如國內初創企業深鑑科技基於 fpga 平台的人工智慧晶元在同樣開發周期內相對 gpu 能效有乙個數量級的提公升。

其功耗高,目前常用於雲計算處理上。

asic

定製晶元成本最低,功耗低,而且適合量產。

但由於其研發成本(開模成本)高昂,開發周期和驗證周期長。對於很多廠商來說壓力巨大。目前在人工智慧領域風險高。

目前人工智慧演算法日新月異,變化快速,對於需要高成本,高研發週期的 asic 相對來說是不適用的。應用相對較少。

fpga

可以通過硬體程式設計實現功能。

fpga 同時擁有流水線並行和資料並行。可以實現比 gpu 更高的併發處理。

在密集處理和高併發上能力上佔優,而且功耗比 cpu,gpu 低。

但其缺點有:

第一,基本單元的計算能力有限。為了實現可重構特性,fpga 內部有大量極細粒度的基本單元,但是每個單元的計算能力(主要依靠 lut 查詢表)都遠遠低於 cpu 和 gpu 中的 alu模組。

第二,速度和功耗相對專用定製晶元(asic)仍然存在不小差距。

第三,fpga **比起 asic 較為昂貴,在規模放量的情況下單塊 fpga 的成本要遠高於專用定製晶元。

JS簡簡簡易時鐘

簡易時鐘 1 搭建html css部分 插入時鐘背景,使用子絕父相。把時針和分針 秒針的樣式放在時鐘的中心位置 2 js邏輯部分 1 獲取時針 分針 秒針 var hour document.getelementbyid hour var min document.getelementbyid mi...

Metasploit Framework 簡單介紹

1.簡介 metasploit framework 是乙個緩衝區溢位測試使用的輔助工具,也可以說是乙個漏洞利用和測試平台。它整合了各平台上常見的溢位漏洞和流行的shellcode,並且不斷更新,使得緩衝區溢位測試變得方便和簡單。2.主頁 1 選定使用的漏洞 use 2 設定漏洞利用的環境 targe...

android PagerAdapter簡單應用

pageradapter是android.support.v4包中的類,它的子類有fragmentpageradapter fragmentstatepageradapter,這兩個adapter都是fragment的介面卡,用於實現fragment的滑動效果 pageradapter主要是view...