2009-07-03 1 views
4

소프트웨어의 최소 요구 사항을 평가하는 방법이 있습니까? 내 응용 프로그램에 필요한 RAM의 최소량을 어떻게 발견 할 수 있습니까?소프트웨어 최소 요구 사항 평가

감사합니다.

+0

http://stackoverflow.com/questions/893329/determining-recommended-system-requirements 속는? – Brandon

+0

옙 ... 이전에 발견하지 못했습니다 ... 감사합니다! – Fernando

답변

3

여기에서는 프로파일 러가 도움이되지 않습니다. 어느 쪽도 데이터 구조의 크기를 예측하지 않습니다.

프로필러는 코드가 가장 많은 CPU 시간을 소비하는 위치를 확실히 알려줄 수 있지만 실적 목표가 누락 된 경우 알려주지 않습니다. 사용자가 만족 스럽거나 주어진 시스템에서 응용 프로그램의 성능에 불만이있는 경우.

데이터 구조의 크기를 계산하고 한 번에 몇 개를 할당해도 시간이 지남에 따라 메모리 사용에 대한 정확한 그림을 얻을 수는 없습니다. 그 이유는 메모리 사용량은 응용 프로그램이 수행하는 I/O의 양, 응용 프로그램이 사용하는 OS 서비스 및 가장 중요한 응용 프로그램이 메모리를 사용하는 방식의 시간적 특성을 비롯한 많은 다른 요인에 의해 결정되기 때문입니다. 최소 요구 사항을 이해하기

가장 효과적인 방법은

  • 에 당신이 사용자에 중요한 메트릭을 사용하여 성능을 측정하는 효과적인 방법이 있는지 확인합니다. 가장 좋은 척도는 응답 시간입니다. 앱에 따라 처리량 또는 초당 작업 수와 같은 비율이 적용될 수 있습니다. 귀하의 측정은 경험적 일 수 있습니다 (예를 들어 시도해보십시오). 그러나 그것은 가장 효과적이지 않습니다. 이것은 일종의 계기로 수행하는 것이 가장 좋습니다. 창에서, 선택은 [ETW] [1]입니다. 다른 운영 체제에는 다른 적합한 메커니즘이 있습니다.
  • 응용 프로그램을 자동으로 실행하는 방법이 있습니다. 이렇게하면 반복적이고 신뢰할 수있는 측정을 할 수 있습니다.
  • 다양한 메모리 크기를 사용하여 응용 프로그램을 측정하고 성능이 떨어지는 부분을 확인하십시오. 또한 응용 프로그램이 제대로 수행되지 못하게하는 성능 버그가 발생할 수 있습니다. 다양한 성능 수준의 플랫폼에 액세스 할 수있는 플랫폼을 사용하십시오. 앱의 기능을 나타내지는 않았지만 1GB 메모리가 장착 된 넷북에서 테스트하는 것은 모든 클라이언트 애플리케이션이 아닌 모든 클라이언트 애플리케이션에 적합합니다.

CPU, 디스크, 네트워킹 또는 GPU와 같은 다른 구성 요소에서도 동일한 작업을 수행 할 수 있습니다.

여기에 간단한 대답은 없다는 점에 유의하십시오. 최소한의 요구 사항을 설정하는 데 효과적인 작업은 실제 작업입니다. 이는 특히 응용 프로그램이 한 플랫폼 측면이나 다른 플랫폼 측면에 민감한 경우에 특히 그렇습니다.

다른 요인도 있습니다. 예를 들어, 사용자가 메모리가 부족하거나 CPU 돼지가 될 수있는 다른 응용 프로그램을 열 때까지 한 구성에서 응용 프로그램이 제대로 실행될 수 있습니다. 사용자는 거의 하나의 응용 프로그램 만 열 수 있습니다.

최소 요구 사항을 지정하는 것 외에도 사용자의 기대치를 설정하는 데 효과적인 작업을 수행해야합니다. 즉, 응용 프로그램이 언제 잘 수행되는지, 실행되지 않을 때 및 성능에 영향을주는 요소가 무엇인지를 설명해야합니다.

[1] : http://msdn.microsoft.com/en-us/library/ms751538.aspx강한 텍스트

0

스트레스 테스트 중에 소프트웨어에서 성능 프로파일 러를 사용해 볼 수 있습니다.

1

응용 프로그램에서 사용하는 데이터 구조가 주어지면 정상적인 사용에서 차지하는 공간을 예상하십시오. 이 추정치를 사용하여 서로 다른 시나리오 (즉, 서로 다른 대상 운영 체제, 서로 다른 가상 메모리 설정 등)에서 예상치를 테스트하기 위해 여러 가상 머신 또는 가상 머신을 설정하십시오.

그런 다음 다른 시나리오에서 응용 프로그램의 성능을 측정하십시오. 최소 설정은 수용 가능한 상태에서 가장 적게 수행하는 기계입니다.

3

이상적으로는 대상 사용자에 따라 소프트웨어의 최소 요구 사항을 결정한 다음 해당 구성에서 개발 중에 소프트웨어를 테스트하여 만족스러운 환경을 제공하는지 확인하는 것이 좋습니다.

소프트웨어를 실행하는 시스템을보고 응용 프로그램에서 사용중인 메모리 양을 확인하고이를 사용하여 얼마나 많은 메모리를 사용하는지 알 수 있습니다. CPU가 좀 더 복잡합니다. CPU 요구 사항을 모델링 할 수는 있지만 정확하게 수행하는 것은 어려울 수 있습니다.

하지만 궁극적으로 타겟팅하려는 기본 시스템에서 앱을 테스트해야합니다.

+0

+1 완료되면 앱이 필요한 것을 테스트하는 대신 대상 고객을 고려해야합니다. – OregonGhost

0

가상화를 사용하여 가상 컴퓨터의 RAM 용량이 다른 대표 테스트 스위트를 반복적으로 실행할 수 있습니다. 스와핑으로 인해 성능이 허용 수준 이하로 떨어지면 메모리 요구 사항을 발견했습니다.