2012-08-15 4 views
7

나는 관리하고 자신의 시나리오와 이벤트/자동화 순서를 설정할 수있는 몇 가지 서버에서 벤치 마크 테스트를 수행하려고합니다.C에서 사용할 수있는 벤치마킹 라이브러리

그래서 CPU, 디스크 IO 및 RAM과 같은 Windows 컴퓨터의 다양한 측면에 대한 벤치마킹을 수행하는 데 사용할 수있는 라이브러리가 있는지 궁금합니다.

업데이트 1 : 내가 또한 예제 또는 하나의 C#으로 CPU, 디스크 및 메모리 성능을 테스트 할 수있는 방법의 가이드를 가리키는 답변을 받아 들일 겁니다이 작업을 수행하는 사용 가능한 라이브러리 없을 것 같다입니다.

업데이트 2 모든 언어에서 어떤 좋은 라이브러리가 있습니까?

+0

나는 이것을 읽는 것이 좋습니다 : http://www.codeproject.com/Articles/8590/An-Introduction-To-Performance-Counters, [PerformanceCounter]에 대한 좋은 소개 (http://msdn.microsoft .com/en-us/library/system.diagnostics.performancecounter.aspx) 클래스를 사용하면 유용 할 것입니다. – Bridge

+0

재미있는 것 같지만 정확히 내가 아는 바가 아닐 수도 있습니다. codeproject에 대한 예제는 현재 성능을 측정하는 것이 아니라 시스템을 최대로 가져 가서 수행 할 수있는 것을 보는 것입니다. 아마 나는 그것의 한계에 cpu/disk/memory를 가져 가고 그것도 얻는 것을 보는 몇몇 코드와 함께 그것을 사용할 수있다. – JensB

+0

매우 흥미로운 질문입니다. 당신이 당신의 결과를 요약하고 여기에 대답 할 수 있다면 정말 최고 일 것입니다. :) Ahm은 Windows Server만을 목표로하고 있습니까? – Gero

답변

1

이것은 범위 밖일 수 있지만 단위 테스트 수준에서 비슷한 것을 찾고 있었고 this MSDN topic about Creating and Editing Load Tests을 발견했습니다.

+0

이것은 다른 요청으로 응용 프로그램을 망치질하는 데 사용할 수있는 것처럼 보입니다. 이론적으로는 이러한 유형의 리소스를 사용하는 코드를 테스트 해보면 이론적으로는 CPU/디스크/램을 포화 상태로 만들 수 있습니다. 마음에,하지만 팁 주셔서 감사합니다. – JensB

+0

@wokawaka 서버 환경에서 서버에 물건을 던지거나 서버가 어떻게 처리되는지 볼 수는 없습니다. 필요한 작업을 수행하는 프로그램을 작성한 다음 프로그램을 망치고 *** 느려짐이 발생하는 곳을 확인하십시오. 속도 저하가 최적화 된 루프에서 발생하면 코드를 수정하십시오. 디스크 I/O 속도가 느린 경우 속도가 느린 경우보다 빠른 드라이브로 디스크 I/O를 업그레이드하십시오. 이 방법으로 생각해 보면, "당신이"서버에 줄 직업이 무엇이든 최선을 다해 "최고"를 찾아야 할 때가 있습니다. –

+0

@ wokawaka 내 말을 더 생각하면, 나는 "내가 서버에 줄 직업에 대한 나의 필요를 채울 장비"라고 다시 말해야한다고 생각한다. $ 200 raptor 디스크 한 쌍의 RAID 0 설정이 잘 작동 할 때 [RAMSAN] (http://en.wikipedia.org/wiki/Texas_Memory_Systems)에 $ 15,000을 지출하고 내 직원이 어디에 있더라도 내 직원이 오래 있어야합니다. –

3

CPU 벤치마킹을 위해이 오픈 소스 프레임 워크 BenchmarkDotNet을 사용할 수 있습니다. 그것은 스톱워치, GC 사전 호출, 워밍업, 프로세스의 우선 순위 설정, 벤치 마크 경쟁을위한 ProcessorAffinity-mask, api 및 결과와 함께 멋진 콘솔 출력을 포함합니다.