Polaris mit bis zu 1154 MHz und neuer Stromsparfunktion?

Unser fin­di­ger User BoM­bY hat eini­ge inter­es­san­te Infor­ma­tio­nen zu AMDs kom­men­den Pola­ris-Gra­fik­kar­ten gefun­den. In der Mai­ling­lis­te zu AMDs Linux-Gra­fik­trei­ber hat ein Mit­ar­bei­ter Code ein­ge­reicht, der ers­ten Sup­port für die Pola­ris-Fami­lie bie­ten soll. Dar­in fin­den sich ein paar inter­es­san­te Informationen.

Zum einen bestä­tigt sich, dass die nächs­ten AMD-Gra­fik­kar­ten 16 Bit pro Farb­ka­nal dar­stel­len kön­nen wer­den. Damit könn­ten sich die Pola­ris-Gra­fik­kar­ten auch für anspruchs­vol­le Anwen­dun­gen eig­nen. Des­wei­te­ren fin­den sich Infor­ma­tio­nen zum RAM. Bei Elles­me­re wer­den 8 Kanä­le und 8 Bän­ke mit 32 Bit ange­ge­ben, Baf­fin soll nur 4 Kanä­le bie­ten, kann aber den­noch mit 8 Bän­ken bestückt wer­den. Aus den Spe­zi­fi­ka­tio­nen lässt sich able­sen, dass AMD zunächst wei­ter­hin auf GDDR5-Spei­cher set­zen wird. Bei vier Kanä­len ergibt sich ein 128-Bit-Spei­cher­in­ter­face, bei acht Kanä­len fol­ge­rich­tig 256 Bit. In bei­den Fäl­len ergibt sich eine maxi­ma­le Spei­cher­be­stü­ckung von 8 GiB GDDR5. Als maxi­ma­ler Takt wird jeweils ein sehr hoher Wert von 6000 MHz ange­ge­ben. Die­ser ent­spricht der effek­ti­ven Takt­ra­te für den GDDR5-Spei­cher und ist so bereits bei Model­len wie AMDs Rade­on R9 380 oder NVI­DI­As GeForce GTX 960 zu sehen. Inwie­weit der momen­tan ange­ge­be­ne Maxi­mal­takt von 1154 MHz, der für bei­de Chips gel­ten soll, auch so in die Serie ein­flie­ßen wird, muss abge­war­tet wer­den. Bei ers­ten Engi­nee­ring Samples (Pro­to­ty­pen) gel­ten meist ande­re Takt­ra­ten als bei der Serienproduktion.

drm/amd/dal: add core support for Polaris family (v2):

[...]

+	switch (cntl->color_depth) {
+	case COLOR_DEPTH_888:
+		params.ucBitPerColor = PANEL_8BIT_PER_COLOR;
+		break;
+	case COLOR_DEPTH_101010:
+		params.ucBitPerColor = PANEL_10BIT_PER_COLOR;
+		break;
+	case COLOR_DEPTH_121212:
+		params.ucBitPerColor = PANEL_12BIT_PER_COLOR;
+		break;
+	case COLOR_DEPTH_161616:
+		params.ucBitPerColor = PANEL_16BIT_PER_COLOR;
+		break;
+	default:
+		break;
+	}

[...]

+	case BW_CALCS_VERSION_ELLESMERE:
+		vbios.number_of_dram_channels = 8;
+		vbios.dram_channel_width_in_bits = 32;
+		vbios.number_of_dram_banks = 8;
+		vbios.high_yclk = bw_int_to_fixed(6000);
+		vbios.mid_yclk = bw_int_to_fixed(3200);
+		vbios.low_yclk = bw_int_to_fixed(1000);
+		vbios.low_sclk = bw_int_to_fixed(300);
+		vbios.mid_sclk = bw_int_to_fixed(974);
+		vbios.high_sclk = bw_int_to_fixed(1154);

[...]

+ dceip.number_of_graphics_pipes = 6;

[...]

+	case BW_CALCS_VERSION_BAFFIN:
+		vbios.number_of_dram_channels = 4;
+		vbios.dram_channel_width_in_bits = 32;
+		vbios.number_of_dram_banks = 8;
+		vbios.high_yclk = bw_int_to_fixed(6000);
+		vbios.mid_yclk = bw_int_to_fixed(3200);
+		vbios.low_yclk = bw_int_to_fixed(1000);
+		vbios.low_sclk = bw_int_to_fixed(300);
+		vbios.mid_sclk = bw_int_to_fixed(974);
+		vbios.high_sclk = bw_int_to_fixed(1154);

[...]

+ dceip.number_of_graphics_pipes = 5;

[...]

Wei­ter­hin wird Baf­fin wohl bis zu 5 Dis­plays und Elles­me­re derer 6 ansteu­ern kön­nen. In einem wei­te­ren Bei­trag schreibt Alex Deu­cher etwas zu einem neu­en Strom­spar­me­cha­nis­mus, wel­cher erst ein­mal nur für Baf­fin zur Ver­fü­gung ste­hen soll. Wie es aus­sieht, bie­tet AMD bei der neu­en GCN-Gene­ra­ti­on Power­gating für ein­zel­ne CUs (Com­pu­te Units), wel­che meh­re­re Shader bün­deln. Die­se Funk­ti­on dürf­te vor allem im Mobil­seg­ment eini­ge Freun­de fin­den. Durch die Anpas­sung der akti­ven Rechen­clus­ter lässt sich der Ener­gie­ver­brauch gut steu­ern und die Akku­lauf­zeit verlängern.

drm/amd/powerplay: add GFX per cu powergating for Baffin:

[...]

+/* This function is for Baffin only for now,
+ * Powerplay will only control the static per CU Power Gating.
+ * Dynamic per CU Power Gating will be done in gfx.
+ */

[...]

Vie­len Dank BoM­bY für den Hin­weis im Forum.

 

Update [16.04.2016]: Lei­der ist uns ein klei­ner Feh­ler bei den Spei­cher-Inter­faces unter­lau­fen. Wie schon ange­merkt, han­delt es sich nicht um 256 und 512 Bit, son­dern um 128 respek­ti­ve 256 Bit. Wir bit­ten, die­sen Feh­ler zu entschuldigen.