Přizpůsobte vaši WPF aplikaci výkonu počítače

Možná víte, že WPF aplikace jsou renderovány na grafické kartě, čímž nejen že jsou “rychlejší”, ale zároveň méně zatěžují CPU … to ale neplatí vždy. Renderování neprobíhá pokaždé na grafické kartě, záleží totiž co všechno daná grafická karta umí, někdy se může jednat o staší kousek hardwaru, jindy zase ne všechno, co WPF potřebuje, grafická karta nabízí a což způsobí, že na některých počítačích vaše aplikace bude pouze z části renderována na grafické kartě, v tom horším případě celá procesorem počítače. Proto rozlišujeme 3 stupně renderování:

  1. aplikace je renderována na CPU (nejpomalejší)
  2. část je renderována na grafické kartě, část na CPU
  3. renderována na grafické kartě (samozřejmě nejrychlejší)

Jak zjistíme jak je aplikace renderována a na čem to závisí?

Způsob renderování je, jak už jsem napsal, závislé na schopnostech grafické karty počítače. Aby celá aplikace byla renderována grafikou, musí podporovat všechny funkce od DirectX 7 po DirectX 9 “hardwarově”. Také záleží na verzi Vertex a Pixel shaderu karty.

Jak zjistíme na jaké úrovni je vaše WPF aplikace renderována?

Slouží k tomu staticka vlastnost RenderCapability.Tier.

Ukázka použití:

MessageBox.Show((RenderCapability.Tier >> 16).ToString());

Více informací o jednotlivých úrovních zde …

http://msdn2.microsoft.com/en-us/library/ms742196.aspx

Leave a Reply