當前位置: 華文問答 > 數碼

英特爾和輝達以及amd為什麽不做手機GPU?

2023-11-19數碼

恰恰相反,NV、ATI和Intel三家在本世紀初就開始做移動GPU了。

不過這句話有點不嚴謹,當年流動通訊器材裏面的那顆芯片嚴格來說還不配叫GPU,頂多叫媒體/圖形加速器,主要功能是給MPEG和H.263/264影片做解碼加速的,但也有一定3D圖形加速能力。

NV這邊,當年市面上常見的搭載了NV圖形加速器的手機有摩托羅拉V3xx和L6i、三星P910、HTC Forseer和O2 XDA Flame。其中V3xx和Forseer是GeForce 4800,P910和XDA Flame是Geforce 5500,L6i是Geforce 2150。

不過這個Geforce 2150有點意思。它並不是一顆單獨的圖形加速芯片,而是內建在一顆SoC裏面的。這顆SoC叫PP5024。

而PP是PortalPlayer的縮寫,這是一家提供音訊處理SoC的公司,2007年被NV收購了,所以這顆PP5024就算是NV的芯片了,NV也在裏面整合了Geforce 2150。之後,PortalPlayer的音訊處理部份又被整合進了NV的Tegra處理器,叫PortalPlayer APX,後來更名為Tegra APX,一直用到了Tegra X1。

但這不是最有意思的地方。PortalPlayer的第一個客戶,是蘋果。而蘋果用PortalPlayer芯片的產品,是iPod。從第一代iPod開始,一直到iPod Video,以及iPod Mini和第一代iPod Nano都用了PortalPlayer的芯片。下面這張照片是我手裏這台iPod二代拆機實拍:

說回正題,Geforce 5500的效能放在當年絕對是流動通訊器材裏面最強的,沒有之一,參數如下:

  • H.264 decode at D1 resolution [720x480 @ 30fps or 720x576 @ 25fps]
  • WMV9 decode QVGA at 25fps
  • MPEG4 encode or decode D1 resolution at 30fps
  • MPEG4 codec D1 at 30fps
  • MPEG4 Simple Profile, Levels 0 to 5 (ISO/IEC 14496-2)
  • H.263 Profile 0, Level 50 and lower
  • Video post-processing including hardware color space conversion and image scaling
  • De-blocking and de-ringing filters to reduce the visibility of compression artifacts during playback
  • OpenGL® ES with NVIDIA Pixel Shading Extensions
  • 200 million pixels/second 3D fill rate
  • 2.67 million drawn triangles/second
  • 128-bit interface to internal memory
  • 32-bit interface to stacked memory
  • Transform engine
  • 40-bit color pipeline
  • 5 simultaneous textures
  • Signed, overbright color
  • 7 surfaces (color, Z, texture 1..5)
  • 16 4-bit palettes or one 8-bit palette
  • Transform engine
  • Setup engine
  • Programmable pixel shading engine
  • Bilinear/Trilinear texture filtering
  • Fixed point & floating point data
  • 3D rendering to XGA [1024x768] and smaller displays
  • Intel當年的「GPU」效能稍弱,手機上用得很少,但Pocket PC的高端產品上倒是比較常見,比如Dell的x50v/x51v就用了Intel 2700G5:

    Intel 2700G分了三個檔次,G3、G5、G7,其中G5和G7在效能上沒區別,但G7整合了16MB的SDRAM作為視訊記憶體。

    2700G其實並不是Intel自己獨立研發的,而是以PowerVR MBX Lite為基礎。而PowerVR MBX是世嘉DC的GPU PowerVR2的後續型號。而MBX又是後來廣泛被用在各種iPhone和安卓手機SoC上的SGX系列的前任型號。

    Intel 2700G5的效能參數:

  • MPEG2, 720x480.
  • MPEG4, 640x480.
  • WMV, 640x480.
  • 150 million pixels per second.
  • 900 thousand triangles per second.
  • Screen tiling
  • Texture compression
  • Flat shading and gourad shading
  • Perspective correct texturing
  • Vertex fogging
  • Pixel Alpha Blending
  • Bilinear , trilinear , and anisotropic filtering
  • Dot3 Bump Mapping.
  • Full-screen AA (supersampling )
  • Z-buffer
  • Internal ARGB rendering
  • Hardware converter of integer values into floating point
  • 這裏多提一句,當年Pocket PC/Windows Mobile 6上有少部份遊戲是專門針對Intel 2700G的,比如DoomGLES、Quake3GLES等等。

    三家裏面效能最弱的是ATI的Imageon。是的,當年GPU市場還沒AMD什麽事。

    Imageon效能弱,但功耗也低,並且ATI甚至是這三家裏面最早開始推出獨立圖形加速器的廠商(2002年),型號也非常多,所以很多非智能機用了這個系列芯片,主要作用是給Java程式做2D圖形加速,以及做影片解碼用。比如摩托羅拉V3i就用了Imageon 2262:

    Imageon的效能參數不是特別詳細,這裏從維基百科截個表格:

    至於問為什麽現在這三家不做移動端GPU了。

    第一,AMD還在做:

    2022年初釋出的三星Exynos 2200就整合了AMD RDNA2架構的GPU,甚至還支持光追和VRS可變著色渲染。但根據極客灣實測,這玩意兒的效能更適合洗洗睡了。

    但三星沒能力跟蘋果和高通一樣,自己搞定GPU,所以Exynos 2400繼續找AMD合作,GPU部份升級到了RDNA3架構。但實測依然打不過8Gen3:

    另外,AMD跟Intel這對臥龍鳳雛在很多方面確實很相似。比如早年間因為看不到流動通訊器材芯片的前景,所以自廢武功把相關部門賤賣了。

    Imageon在2009年的時候被賣給了高通,高通在MSM7x27和QSD8x50系列SoC上面整合了Imageon Z4xx。後來Imageon在高通手裏變成了如今的Adreno。第一款搭載Adreno GPU的移動SoC,是高通驍龍S1,但S1裏面的Adreno 200其實就是Imageon Z430改名。

    第二,NV其實也在做,Tegra SoC跟同時期其他SoC相比,GPU部份的效能都是大幅領先的。

    只不過NV自己的SoC,CPU部份一直都很弱,或者說能效很低,要麽是Tegra這種相對低功耗但效能也不咋樣的CPU,要麽是Xavier和Orin這種效能雖然還行,但功耗方面完全沒考慮過流動通訊器材需求的產物。

    再加上NV已經很多年沒授權過自己的GPU IP用在其他SoC上了,所以並不是NV不做移動GPU,而是NV不授權別人做而已。

    第三,Intel。Intel在移動芯片上的騷操作,跟AMD相比只能說有過之而無不及。

    雖然早早就推出了2700G,但之後很長一段時間內都不思進取,拿PowerVR的方案來魔改,然後再用到自家的x86 CPU上,也就是Intel CPU的HD/UHD整合顯卡,效能也基本僅限於能點亮螢幕,能播放影片。直到去年,Intel才在Arc系列顯卡上用上了自研的Xe-HPG架構GPU。

    但Intel最虧的還是賣掉了自己的ARM CPU部門。在PDA/PocketPC還流行的年代,飛思卡爾的SoC通常是低端器材才會用,德州儀器的SoC通常是低端~中端器材,或者叫市場主流器材會用。而Intel的xScale基本都是高端器材用,並且頻率高,效能強,功耗表現也不差。

    現在的小朋友可能沒什麽概念,覺得手機SoC動不動3GHz主頻很正常,GPU部份更是時不時就要吊打桌面的GTX1060級別顯卡。

    但早在2004年,Intel的PA270就能做到624MHz預設頻率,預設電壓下超個頻就能到720MHz。

    相比之下,2007~2008年時,HTC G1的CPU主頻只有528MHz,初代iPhone只有412MHz。

    後來Intel在2006年把xScale打包賣給了Marvell,後者把xScale用在了硬碟控制器和網絡控制器上。Intel這波操作完美避開了2007~2008年的智能機爆發期,說它是49年入國軍都是擡舉它了。

    沒有了自己的SoC,再加上GPU長期以來又是拿PowerVR魔改的,沒什麽太多有價值的經驗和實力。何況如今無論是蘋果還是高通Adreno,還是ARM自己的Mali,本身實力就不差,Intel自然沒動力去搞個外掛GPU去幫別人做嫁衣。