ãã®æç« ã®åçããç
½ãã¨ãã¨ãããã¨ããææã¯ãã£ã¨ãã ã¨æãã¾ãã®ã§ï¼ä¿®æ£ããè©«ã³ç³ãä¸ãã¾ãï¼(id:NyaRuRu:20061202#p1)
ã【速報】Windows Vista製品版の処理性能をチェックãåã³ãPC ãªã³ã©ã¤ã³ãã§ã®ãã®è©³ç´°è¨äºãVistaの製品版で性能をチェックãããï¼
Vista ãXPã«å¾ããåã£ãã®ã¯ã2Dã®æç»æ§è½ãé常ã®ä½æ¥ããã¦ããç¯å²ã§ã¯ç¹ã«é ãã¯æããªãã®ã ããExcelã®ãã¯ãã«ãããã¹ããå®æ½ããã¨ãããç»é¢ã®æç»ã¯XPã®åå以ä¸ã®æ§è½ã¨ãªã£ããåå ã¨ãã¦ãéæãªã¦ã¤ã³ãã¦æ ãªã©ãç¹å¾´ã¨ããæ°ã¦ã¼ã¶ã¼ã¤ã³ã¿ãã§ã¼ã¹ãWindows Aeroãã®å¦çè² è·ãå½±é¿ãã¦ãããã¨ãèãããããå®éãAeroãç¡å¹ã«ããã¨2ã3å²æ§è½ãåä¸ããããããããã§ãXPã«ã¯åã°ãªããã¨ããããã以å¤ã®è¦ç´ ãé¢ä¿ãã¦ããå¯è½æ§ãããããªãã3DMark 06ãã使ã£ã3Dã®æç»ãã¹ãã®çµæã¯ãXPã¨å¤§ããªå·®ã¯ãªãã£ãã
ベンチマーク結果のグラフ
(追è¨)çµæèªä½ã¯ Vista ã®æ°ãããã©ã¤ãã¢ãã«ã§ãã WDDM ãï¼Aero ã®æ ¹å¹¹ã§ãã Desktop Window Manager (DWM) ã®æ§é ãèããã°å¦¥å½ãªãã®ã ã¨æãã¾ãï¼ãã ï¼çç±ã¥ãã®æ¹ãè¿·èµ°æ°å³ãªã®ã§ã¡ãã£ã¨ãã©ãã¼ãã¦ããã¾ãããï¼
(追è¨2)Windows Vista WDDM ç°å¢ã§ã¯ï¼GDI å¦çãå®å
¨ã½ããã¦ã§ã¢åãããã®ã§ããï¼ããã©ã¼ãã³ã¹ã®ä½ä¸ã«ã¤ãã¦ã¯ã¾ããã®å½±é¿ãçãã¹ããã¨æãã¾ãï¼ããã確ãããã«ã¯ï¼ãã³ããã¼ã¯ã¹ã³ã¢ã CPU é度ã«å¼·ãç¸é¢ã示ããã©ããã調ã¹ãã®ãå¹æçã§ãããï¼
æ¨æ¥ç´¹ä»ãã WinFS ã®è¨äº(id:NyaRuRu:20061130#p2)ã§ã¯ãªããªãé¢ç½ãã¨ããã«æ³¨ç®ããã¦ããå
«æ¨ç²åæ°ã§ããï¼å年以ä¸åã«éçºè
èªèº«ãã¡ããã¨èª¬æããã¦ãããこの記事ãã¯ãåããªãããã§ããï¼
ã¡ããã©å
æ¥ã® VSUG ã¤ãã³ãã§åã£ã¦ããã°ãããªã®ã§ãã(id:NyaRuRu:20061108:p1)ï¼å¾©ç¿ãå
¼ãã¦ã¡ãã£ã¨ã°ããæ¸ãã¦ããã¾ãããï¼
Windows Vista ã§ã® GDI/GDI+ ã«ã¤ãã¦
å¾æ¥ã® Windows ã§ã¯ï¼GDI å½ä»¤ã¯ã対å¿ãããã©ã¤ããã¡ã³ã¯ã·ã§ã³ãã¨ããã®ãåå¨ãã¾ããï¼ãã©ã¤ããã¡ã³ã¯ã·ã§ã³ã¯ï¼3 ã¤ã«å¤§å¥ã§ãã¾ã
- Required Graphics Driver Functions
- Conditionally Required Graphics Driver Functions
- Optional Graphics Driver Functions
ãªãã·ã§ãã«ãã¡ã³ã¯ã·ã§ã³ã¯ï¼ãããã©ã¤ãã¬ãã«ã§æä¾ãããªããã°ï¼ã½ããã¦ã§ã¢ã§ã¨ãã¥ã¬ã¼ããããã¨ãããã®ã§ãï¼
ä¸æ¹ï¼Windows Vista ã® WDDM ã¯ï¼ãã¯ãä¸åã® GDI ãã¡ã³ã¯ã·ã§ã³ã®å®è£
ããã©ã¤ãã«æ±ãã¾ããï¼ã¤ã¾ãï¼å
¨ã¦ã® GDI æç»ã¯ã½ããã¦ã§ã¢ã¬ã³ããªã³ã°ããã¾ãï¼VSUG ã¤ãã³ãã§ã強調ãã¾ãããï¼Windows Vista WDDM ç°å¢ã§ï¼GDI ã®æç»ãã³ããã¼ã¯ã¨ããã®ã¯ï¼æ¬è³ªçã«ã¯ CPU ãã³ããã¼ã¯ã¨ä½ã代ããã¯ããã¾ãã*1
ã¾ãï¼ãã®è¾ºãã¯èª¤è§£ã®å
ã«ãªããããªã®ã§äºãæ¸ãã¦ããã¾ããï¼DWM ã WPF ã¯ï¼ææ°ã® 3D ãã¼ãã¦ã§ã¢ã®æ©è½ã 100 % å¼ãåºãããã§ã¯ãªãï¼ã¨ç§ã¯èãã¦ãã¾ãï¼PIX for Windows ã§è¦ã WPF ã®åä½ã¯ï¼åçé ç¹ãããã¡ã¨å¤§éã®ãã¯ã¹ãã£ã«ããåæ¥ã®æç»ã§ãã*2ï¼ã¢ã«ã´ãªãºã çã«ã¯ï¼10 å¹´åã®ã²ã¼ã ã§æ¢ã«ç¢ºç«ãã¦ãããã®ããã«ã¼ããã©ã¼ã¹åãããã®ã¨è¨ããã§ããã*3ï¼ãããï¼ããã§ãä»ã¾ã§ã«æ¯ã¹ãã°éãã«ã¬ã¹ãã³ã¹ã¿ã¤ã ãåä¸ãï¼ã¹ã±ã¼ã©ããªãã£ãæ¹åããï¼ã¨ããã®ãç§ã«ã¨ã£ã¦ã® Vista ã®æ義ã§ãï¼
DWM ã®ã¢ã¼ããã¯ãã£ã§ã¯ï¼GDI æç»ãããå¾æ¥ã®ã¢ããªã±ã¼ã·ã§ã³ã¯ï¼ããªããã¡ã¤ã³ã¡ã¢ãªä¸ã«ãµã¼ãã§ã¤ã¹ãæã¡ï¼ä¸æ¦ãã®ã·ã¹ãã ã¡ã¢ãªãµã¼ãã§ã¤ã¹ä¸ã§ GDI æç»ãå®æããã¾ãï¼DWM ã¯ï¼ä¸åã® GDI æç»ããã¼ãã¦ã§ã¢ã¢ã¯ã»ã©ã¬ã¼ãããã¾ããï¼ãVista ã§ã¯ææ°ã® GPU ã使ã£ã¦æç»ãé«éåããããã¨ãã表ç¾ã¯ï¼æ³¨ææ·±ã使ããªãã¨å¤§æ¥ããããã¨ã«ãªãã¾ãï¼
DWM ã®å½¹ç®ã¯ï¼ã·ã¹ãã ã¡ã¢ãªãµã¼ãã§ã¤ã¹ã®æ´æ°ãæ¤ç¥ãï¼é©å½ãªã¿ã¤ãã³ã°ã§ Direct3D ãµã¼ãã§ã¤ã¹ã¨åæãè¡ãï¼ãã㦠Direct3D ãµã¼ãã§ã¤ã¹ãå
ã«ã³ã³ãã¸ã·ã§ã³ãè¡ããã¨ã§ãï¼ãã®ä»çµã¿ã¯æããã«ã¡ã¢ãªã¤ã¼ã¿ã¼ã§ãï¼ãããã¬ãã«ã¦ã£ã³ãã¦ã¨åãµã¤ãºã®ã·ã¹ãã ã¡ã¢ãªãµã¼ãã§ã¤ã¹ã¨ Direct3D ãµã¼ãã§ã¤ã¹ã«ããããã«ãããã¡ã¯ä½æ
å¿
è¦ãªã®ã§ããããï¼
ãã®çç±ã¯ãRedirecting GDI, DirectX, and WPF applicationsãã§èªããã¦ãã¾ãï¼
ã¦ã£ã³ãã¦ãã¨ã®ããã«ãããã¡ - Yesï¼GDI ã¦ã£ã³ãã¦ãã·ã¹ãã ã¡ã¢ãªã¨ãããªã¡ã¢ãªä¸¡æ¹ã¸ã®æç»ãå¿ è¦ã¨ããã¨ããã®ã¯æ£ããï¼çããªããããè¡ãã«ã¯ã¡ã¢ãªã³ã¹ãããããï¼1 ã¤ã®æãããªä»£æ¿æ¡ã¯åç´ã«ãããªã¡ã¢ãªã¸ã®æç»ã®ã¿ãæã¡ï¼ãã® (ãããã¡ã®ãã¯ã»ã«) ãã©ã¼ãããã§æç»ãè¡ã GDI ãªãã¤ã¬ã¯ãã¡ã«ããºã ãæã¤ãã¨ã ï¼ããã«ã¯ 2 ã¤ã®ä¸»è¦ãªåé¡ãããï¼ãããã® (ãã¯ã»ã«) ãã©ã¼ãããã¯åãã§ã¯ãªãï¼ãã㦠GDI 㯠DirectX (ã®ãã¯ã»ã«) ãã©ã¼ãããã§ã®æç»ããµãã¼ãããªã*4ï¼ä»®ã«ãã®åé¡ã解決ããã¨ãã¦ãï¼ããæ ¹æ¬çãªåé¡ãæ®ãï¼å¤ãã® GDI ãªãã¬ã¼ã·ã§ã³ (ä¾ã¨ã㦠XOR æç»ï¼ã¢ã«ãã¡ãã¬ã³ãã£ã³ã°ï¼ããã¹ãæç») ã¯ï¼read-modify-write ãªãã¬ã¼ã·ã§ã³ (ã¡ã¢ãªããèªã¿åã£ã¦ï¼å¤æ´ãï¼æ¸ãè¾¼ãä½æ¥) ã§ããï¼ãã¤ãã£ããããªã¡ã¢ãªãµã¼ãã§ã¤ã¹ã«ãããè¡ããã¨ã¯ï¼ãããªã¡ã¢ãªãã CPU (ãã£ã¦ããã«ã·ã¹ãã ã¡ã¢ãªã«) ã«èªã¿åºãï¼å¦çãè¡ãï¼ããã¦æ¸ãæ»ããã¨ãå¿ è¦ã¨ããï¼ããã¯æ¦ãã¦ã²ã©ãé ãï¼ãã¤ãã©ã¤ã³ãã¹ãã¼ã«ãããå¦çã§ããï¼
ããè¨ãæå³ã§ã¯ï¼ãsteps to phantasienãã®ããã¾ã©ãã®ãã¹ã¯ãããå¦çç³»ããè¥å¹²èª¤è§£ãæã表ç¾ã«ãªã£ã¦ãã¾ãï¼
Window Management ã®ä¸ã« Drawing ã®ã¬ã¤ã¤ããã. ãã®å±¤ã¯ã¦ã£ã³ãã¦ã¸ã®æç»æ©è½ãæä¾ãã. ç´ç·, æ²ç·, å, ããããããã®è²¼ãã¤ããªã©. æ§è½ã®é½åã§ãã©ã¤ããç´æ¥å©ç¨ãããã¨ããããã. ã¡ãã£ã¨ä¸ã«ã¯ã¿åºãå³ã«ãã. Win32 ã® GDI, Mac OS ã® Quartz, freedesktop ã® cairo ããããããã«ããã.
ããã¾ã©ãã®ãWindows Vista WDDM ç°å¢ã§ï¼ãã©ã¤ããç´æ¥å©ç¨ããã¨è¨ããã®ã¯ï¼Direct3D 㨠OpenGL ã®ã¿ã§ãï¼Direct3D ã« æ²ç·, åï¼ããã¹ãã®æç»å½ä»¤ãªã©ããã¾ããããï¼ãããã®å¦çã¯å
¨ã¦ä½ããã®ç¿»è¨³è
ãå¿
è¦ã¨ãã¾ãï¼
ãã® 1 ã¤ãï¼GDI ãªãã¤ã¬ã¯ã·ã§ã³ã®ããã«ï¼ãããã¬ãã«ã¦ã£ã³ãã¦ã¨ããæ¯è¼ç大ããªå¦çåä½ã§ã½ããã¦ã§ã¢ã¬ã³ããªã³ã°ãè¡ãï¼Direct3D ãåãªã転éè£
ç½®ã«ä½¿ç¨ããã¨ãããã®ã§ãï¼ã½ããã¦ã§ã¢å¦çã«ãã£ã¦(çä¼¼)åéææç»ã¾ã§è¡ã£ã¦ãã DirectDraw å¾æã®ã²ã¼ã *5ã¨ï¼æ¬è³ªçã«ã¯åãã¨è¨ããããããã¾ãããï¼
ä¸æ¹ã§ï¼Direct3D API ã®ä¸ã«ãªãããªæç» API ãç¬èªå®è£
ããã®ã WPF ã§ãï¼ã ããããï¼Direct3D9 ãåä½ãã Windows XP ã§ã WPF ã¯åä½ãããã¨ãã§ãã¾ãï¼
ã¨ã¾ãé示æ å ±ã ãããã§ããã®ãããã¾ã§ã¯ååå°éå¯è½ã§ãï¼å¯ä¸ã®é£ç¹ã¯ï¼éçºè blog ãè±èªã¨ããï¼ãã®ä¸ç¹ã§ããããï¼
åå ã¨ãã¦ãéæãªã¦ã¤ã³ãã¦æ ãªã©ãç¹å¾´ã¨ããæ°ã¦ã¼ã¶ã¼ã¤ã³ã¿ãã§ã¼ã¹ãWindows Aeroãã®å¦çè² è·ãå½±é¿ãã¦ãããã¨ãèãããããå®éãAeroãç¡å¹ã«ããã¨2ã3å²æ§è½ãåä¸ããããããããã§ãXPã«ã¯åã°ãªããã¨ããããã以å¤ã®è¦ç´ ãé¢ä¿ãã¦ããå¯è½æ§ãããã
ä½ã¯ã¨ãããï¼æè§ã®æ¥æ¬èªè¨äºãªã®ã§ï¼é å¼µã£ã¦ãã ãããï¼ã¨ï¼
(追è¨3) 以åã«ãç´¹ä»ãã¾ããã(id:NyaRuRu:20060930#p2)ï¼ãWindows Vistaに足りないものãã¨ããè¨äºã§ï¼ãå°å³ãªæè¡ããåããããã解説ãããã¨ã®å¤§äºããè¿°ã¹ããã¦ããå «æ¨ç²åæ°ã§ãã®ã§ï¼ä»å¾ãã詳細ãªè§£èª¬è¨äºãæ¸ããããã¨ãæå¾ ãããã¨æãã¾ãï¼
é¢é£è¨äº
id:NyaRuRu:20061004#p1
id:NyaRuRu:20060925#p1
*1:ããã確ãããæå³ã§ãï¼å ã»ã©ã®è¨äºã§ã¯ãããªã«ã¼ãã ãã交æãã¦åããã³ããã¼ã¯ãã¨ã£ã¦æ¬²ããã£ãã¨ããã§ããï¼
*2:èå³ãããæ¹ã¯ï¼milcore.dll ã® export é¢æ°ãçºãã¦ã¿ãã®ãé¢ç½ãã§ããã
*3:ãã ãï¼æçµçãªç»é¢æ´æ°ã«ããæ´æ°ç©å½¢ãç¨ãï¼å ¨ä½ãåæç»ããªãç¨åº¦ã«ã¯å¹ç´å®¶ã®å¿ãæã£ã¦ãã¾ã
*4:GDI 㯠0xXXBBGGRR ã§ï¼Direct3D 㯠0xAARRGGBB ã主æµãªãã