Windows 7의 「Windows 경험 인덱스」엔지니어링
전세계에서 Windows 7 베타를 다운로드 및 설치해 주신 많은 분들에게서 많은 보고가 들어와 처리에 분주합니다. 사용하기 시작한 여러분의 흥분이 전달되어 저희들도 매우 기뻐하고 있습니다. 베타에 참여하시는 고 있는 분들의 상당수는 자신이 사용하고 있는 하드웨어에 정통하고 조정도 가능하여, Windows 7 의 Windows 경험 인덱스 (Windows Experience Index = WEI) 나, Windows 7에서 WEI 가 어떻게 변경 또는 개선 되었는지에 대한 질문은 많지 않습니다. 이 글에서는 Michael Fortin 이 WEI 엔지니어링의 세부 사항에 대해 말씀 드리겠습니다.
WEI 는 PC 의 주요 하드웨어 구성요소 성능을 상대적으로 측정하기 위한 방법으로, Windows Vista에서 도입되었습니다. 벤치마크의 인덱스와 같이 상대적인 평가로 사용되는 것으로, 수치가 다른 수치들과 비교되는 것은 아닙니다. 다른 측정과는 달리, WEI는 단지 구성요소의 성능을 측정하는 것입니다. 또, WEI 는 단시간만 실행되어, 소프트웨어 실행 중에 구성요소의 interaction를 측정하는 것이 아니고, 하드웨어 특징을 측정하는 것입니다. 따라서 시스템이 자신만의 사용법에 의해서 어떻게 동작하는지 측정하지 않고, 측정 할 수 없습니다. 즉, WEI 는 시스템 성능을 측정하는 것이 아니라, 단지 Windows 7 실행 시,하드웨어의 상대적인 성능을 측정하는 것입니다.
특정 개인에게 필요한 「절대적인」 WEI 를 일반화하려는 분들은 주의가 필요하다는 말씀을 드립니다. 우리는 PC 성능에 대해서 각각 다른 허용범위나 기대를 가지고 있기 때문에, WEI 값이 같아도 다른 사람에게는 완전히 다른 의미를 가지는 경우가 있습니다. 저의 경우, 업무의 약 90%는 WEI 가 2.0 인 (게임용 그래픽 구성요소의 점수가 비교적 낮다) 매우 싼 노트북 PC 에서 합니다. PC 에서 Outlook (2GB 정도의 전자 메일 교환 포함), Internet Explorer (10이상의 탭을 연 상태), Excel (개발 팀 멤버의 긴 목록을 연 상태),PowerPoint, 메신저 (비디오 첨부), 또 .NET 에서 쓰여진 기간 업무 (LOB) 응용 프로그램을 실행하기도 합니다. 이 정도의 작업부하와 Windows 7이 실행되는 PC 에서는 지금도 「병목 상태」는 자기 자신의 뇌와 손가락의 WEI 는 아닐까 생각합니다. 그 극단에 있는 것이 제가 크리스마스 선물로 산 25 인치 일체형 머신으로,WEI 는 5.1 입니다 (서브 스코어는 7.2, 7.2, 6.2, 5.1, 5.9 , 역시 게임용 그래픽이지만).이 머신에서는 64 비트판 Windows 7 이여서, 언제나 윈도우에서 MediaCenter 를 실행하여, 데스크톱에는 개지트가 가득하고, 프린트 서버로 사용하고 있음에도 불구하고, 쾌적하게 동작하고 있습니다 (탑재된 RAM 의 약 25% 를 사용하여,CPU 사용율은 10% 를 넘지 않습니다. )
--Steven
Windows 경험 인덱스 (WEI)의 기본 점수는 5 개의 최상위 WEI 항목별 점수 가운데, 가장 낮은 항목별 점수에 의해서 결정됩니다. 각각의 항목별 점수는 규칙이나 일련의 시스템 평가 테스트를 사용하여 계산됩니다. Windows 7에서 채점되는 것은 Vista 와 같은 다음 5개 영역입니다:
- 프로세서
- 메모리 (RAM)
- 그래픽 (일반적인 데스크톱)
- 게임용 그래픽 (주로 3D)
- 프라이머리 하드 디스크
채점 영역은 같지만, 채점 폭이 바뀌었습니다. Vista에서는 WEI 점수는 1.0에서 5.9 의 범위였지만, Windows 7에서는 상한이 7.9 로 올라갔습니다. 장치 채점의 규칙도 Vista 와 바뀌었고, 세심하게 등급 설정된 장치와 실제 사용의 다른 품질을 비교한 경험과 피드백을 반영시켰습니다 (즉, 등급설정을 보다 실제 사용할 때의 환경을 보여줍니다). 베타 버전을 설치하고, 시스템이 있는 구성요소 점수가 (Vista 와 비교해서) 바뀐 것을 알고 계신 분도 계실지 모르지만, 다음과 같은 이유 때문입니다.
점수 범위는 특정 PC 에 요구되는 경험을 상대적으로 이해하기 위한 일반적인 가이드 라인이 되도록 기대하고 있습니다. Vista 시대에서 계속되는 시스템에 대한 1.0에서 5.0 까지의 일반적인 가이드 라인은 Windows 7에 대해서도 적용됩니다. 그러나, 앞에서 말한 것처럼, Windows 7에서는 수준 6.0에서 7.0 이 추가되었습니다. 즉, 7.9 가 최고 점수가 됩니다. 새로운 수준은 반도체 디스크나 멀티 코어 프로세서, 고급 지향 그래픽 어댑터로 대표되는 주요한 기술의 대폭적인 향상을 반영하기 위해서 설계되었습니다. 또한 시스템 메모리 탑재량도 결정적 수단이 됩니다.
새롭게 추가된 수준에 가이드 라인을 설정할 수 있도록 작업 중입니다. 예를 들어, 게임 사용자는 게임용 그래픽 점수가 6.0에서 6.9 사이이면, DX10 를 지원하고, 일반적인 해상도보다 뛰어난 frame rate를 구현하는 시스템 (1280x1024 로 40-50 fps 등) 입니다. 그리고, 점수가 7.0에서 7.9 의 사이에서는 보다 고해상도의 화면에서 보다 뛰어난 frame rate를 요구합니다. 당연, 각 게임 스펙은 이것들과 밀접한 관계가 있으므로, 게임 개발자들도 WEI 점수가 특정 시스템에서 어느 정도의 경험을 가져올 지가 기준이 될 수 있도록 하기 위해서 입니다. 그래픽은 하드웨어 중에서 가장 점수의 폭이 넓고, 또, 사용자의 기대 값의 폭도 가장 넓은 것입니다. CAD, HD 비디오, 사진, 그래픽에 중점을 두는 게이머가 요구하는 최고급품과 평균적인 비즈니스 사용자나 (업무보다는 취미로서 이것들을 실시한다) 일반 사용자가 요구하는 것에서는 상당한 차이가 있습니다.
물론, 새로운 수준의 추가는 왜 Vista 에서는 4.0 이상의 점수이지만, 지금은 2.9 밖에 안 되는 것에 대한 설명이 되지는 않습니다. 많은 경우에서는 점수가 큰폭으로 내리는 것은 흥미로운 실제 학습과 하드웨어 상황의 큰 변화를 볼 수 있던 새로운 디스크 테스트가 Windows 7에서 추가되었기 때문에입니다.
디스크 점수에 대해, 최근 Windows 성능에 관한 글에서 이야기한 것처럼, 오래 전부터 포괄적인 성능을 피드백하는 루프를 개발해 왔습니다. 이 루프에 의해, 컴퓨터의 현재 사용자가 응용 프로그램 또는 Windows 의 중대한 응답 문제에 직면하는 것을 나타낸 시간대를 커버하는 몇천개의 세부 사항 트레이스를 캡 처할 수 있었습니다. 이러한 트레이스를 분석한 결과, 디스크 I/O 와의 관계를 찾아내 표준적인 4KB 디스크가 로드하는데 생각했던 것보다도 긴 시간, 실제로는 훨씬 길게 (10배~30배) 걸린 다는 것을 알 수 있었습니다. 개개의 디스크가 로드하는데, 완료까지 수십 밀리초 대신, 수백 밀리초 걸리는 시퀀를 많이 볼 수 있습니다. 이러한 시퀀스가 쌓이면, 높은 수준의 응용 프로그램의 응답은 현저하게 영향을 받게 됩니다.
인식된 문제에 의해, 많은 I/O 시퀀스를 합성하여, 반도체 드라이브를 포함한 많은 디스크 드라이브에 대한 대규모 연구를 했습니다. 그 결과, 많은 뛰어난 디스크를 발견했지만, 유감스럽지만 로드에 있어 중대한 과제가 있는 것도 많이 찾아냈습니다. 특히, 반도체 드라이브의 제일 세대는 잘 볼 수 있는 클라이언트 I/O 의 시퀀스에 직면할때, 대체로 과제가 있는 것을 알았습니다.
일례로서 문제가 있는 시퀀스는 하나 이상의 플러시가 섞인 일련의 순차적 및 랜덤 I/O에서 완성되어 있습니다. 이러한 시퀀스중에서 많은 랜덤 기입은 현실과 동떨어진 짧은 시간 (예를 들어 500 밀리초)에 완료합니다. 매우 단시간의 I/O 완료는 캐싱을 시사하는 것으로, 실제 회전하는 미디어나 플러시 셀에 비트를 이동시키는 작업은 뒷전이 됩니다. 성공이 매우 빠르게 되돌아 온 후, 연기된 작업의 백로그가 쌓여서 갑니다. 다음에 무엇이 일어날지는 드라이브에 따라서 다릅니다. 드라이브는 먼저 발행 또는 연기된 것이 아무리 기입이나 플러시를 실시하려고, 기대 대로 항상 로드 응답을 계속합니다. 그리고, 좋은 성능을 덕분에 PC 를 사용하는 사람이 문제를 느낄 것은 없습니다. 그런데 있는 드라이브에서는 작업의 백로그를 삭제하려고 하여, 매우 오랜 시간 재고되어 그 결과 지각할 수 있는 「블로킹」상태 또는 거의 「잠근 시스템」이 되어 버립니다. 이것을 검증 하기 위해, 시스템에서 성능이 나쁜 디스크를 기존의 좋은 디스크와 바꿔 넣어 관찰했는데, 성능의 극적인 향상을 볼 수 있었습니다. 몇가지의 경우에서는 드라이브의 컴퓨터 데이터 보존부분을 업데이트하는 것만으로 응답을 현저하게 향상시키는데 충분했습니다.
실제로 학습을 반영시키기 위해, Windows 7 의 베타 버전의 코드에서는 (채점 중에) 문제가 있는 동작을 보이는 드라이브에 대해서 점수의 상한을 정하고 이러한 결과를 한층 더 평가하기 위해서 피드백 시스템을 사용하여 정보를 우리에게 되돌리도록 했습니다. 점수가 1.9, 2.0, 2.9 및 3.0 의 시스템 디스크는 이 새로운 상한 규칙에 의할 가능성이 큽니다. 베타 디스크 사정이나 지금까지 관찰한 데이터에 근거하는 이러한 상한에 대해, 우리는 내부적으로 자신을 가지고 있습니다. 물론, 한층 더 광범위한 베타 참여자에서의 데이터나 피드백, 드라이브 배급업체와의 교환에서 배워 갈 것입니다.
디스크 점수가 낮아도 성능에 불만이 없으면, 아무것도 할 필요는 없습니다 (물론 WEI 는 하드웨어 변경을 권장하는 도구가 아닙니다).일반적인 작업 부하나 응용 프로그램용으로 발행된 I/O 의 시퀀스가 지금까지 말한 것 같은 문제에 조우한다고는 할 수 없습니다. 반복이지만, WEI 는 측정 기준이지만, 사용자 본인만이 자신의 PC 요구에 맞추어 적용할 수 있는 측정 기준입니다.
먼저, 새로운 수준의 6에서 7 은 새로운 하드웨어, 특히 SSD, 그래픽 어댑터, 멀티 코어 프로세서 등에 의해 향상한 경험을 측정하기 위해서 추가되었다고 언급했습니다. SSD 에 관해서는 새로운 테스트는 랜덤 I/O 비율과 먼저 말한 긴 대기 시간의 문제의 회피에 초점을 맞히고 있습니다. 다만, 테스트는 접속되고 있는 저장소 장치가 SSD 일지 어떨지는 특히 체크하지 않습니다. 테스트는 장치의 종류에 관계없이 실행되어 매우 높은 랜덤 I/O 비율에 견딜 수 있는 장치는 점수가 높아집니다.
그래픽 어댑터는DX9 와 DX10 을 평가 대상으로 했습니다. Vista에서는 테스트는 DX9에 대해서만 했습니다. 6 에서 7 점대의 점수를 내려면, 그래픽 어댑터가 뛰어난 성능의 점수를 내고, DX10 를 지원하여, 드라이버가 WDDM 1.1 대응의 드라이버(Windows 7 의 베타로, 그것이 다운로드 되도록 한 것을 알아차리셨을지도 모르지만)일 필요가 있습니다. WDDM 1.0 드라이버의 경우, DX9 평가만 실행되어 전체 점수의 상한이 5.9 가 됩니다.
멀티 코어 프로세서에 관해서는 싱글 스레드 및 멀티 스레드의 두가지 시나리오로 실행됩니다. 수준 6 및 7에서는 시스템의 CPU 는 너무 일반 용도 대상 대신, 가혹한 프로세스나 멀티 태스킹에 적절하다는 것을 의미하는 것을 목적으로 합니다. 예를 들어, 쿼드 코어 프로세서의 상당수는 6 점대 후반에서 7 점대 전반의 점수로, 8 코어 시스템은 7.9 가까운 점수가 나온다고 전망합니다. 채점에서는 최신 마이크로프로세서도 고려합니다.
주요한 하드웨어 파트너에 대해서도, 변경에 관한 세부 사항이나 이유에 대해 설명했습니다. 앞으로도 피드백을 적절히 도입하기 위해 적극적으로 협업해 갈 것입니다.
--Michael Fortin
Published Monday, February 09, 2009 3:27 AM by e7blog
Filed under: Perf