2014-06-12 1 views
0

는의는 다음과 같은 상황을 가정 해 봅시다 : 나는 4 코어 CPU를 사용하는 데이터베이스 서버가멀티 스레드 성능 테스트 MS SQL 서버 DB

  1. 을;
  2. 내 컴퓨터에는 2 개의 코어 CPU가 있습니다.
  3. 그들은 GHZ의 관점에서 같은 속도라고 가정합니다.
  4. 시스템은 네트워크를 통해 연결됩니다 (두 줄은 각각 200MB/s).

테스트 도구는 # of threads 매개 변수를 제공하며 서버와 병렬로 명령을 실행합니다.

질문 :

  1. 가 어떻게 병렬/읽기 테스트 할 저장 프로 시저를 통해 기록? 어떤 충고라도 환영 받으면 브레인 스토밍하십시오.
  2. 많은 스레드가 서버에서 쿼리를 실행하고 있다는 것을 어떻게 증명할 수 있습니까? (또는이 서버와 DB의 책임으로 고려하지 않아야합니까?)
  3. 주로 SQL 서버의 경우 언제든지 실행되는 스레드 수를 제어합니다. "서버 속성"> 프로세서> 프로세서 및 스레드 섹션 수를 확인했습니다. 더 확인해야합니까?
  4. 응용 프로그램이 실제로 모든 내 컴퓨터 코어에서 실행되는지, 즉 가상 컴퓨터 대신 실제 스레드를 사용하는지 어떻게 확인할 수 있습니까? 아니면 가상의 사람들에게만주의를 기울여야합니까?
  5. 네트워크 대역폭에주의해야합니까? 병목 현상이 될 수 있습니까? (저는 큰 데이터 만 보내고 변수 만있는 명령은 보내지 않습니다).
+1

SQL Server는 일반적으로 CPU 바인딩이 아닌 I/O 바인딩입니다. 성능을 테스트하는 중이면 I/O에 집중하십시오. –

+0

@ElectricLlama 응답 해 주셔서 감사합니다. 내 컴퓨터에서 저장 프로 시저를 호출하는 스레드 수를 늘릴 지 여부를 확인하기 위해 실제로 수행 할 작업을 추측합니다. SQL 서버 측에서도 마찬가지입니다. 로컬 컴퓨터에서 수행하는 경우 개발 환경에서 이러한 현상이 발생한다고 확신 할 수 있습니까? –

답변

1
  • 1) 확인 아마도 다른 사람이 SQL 센트리 당신이 (당신의 SQL 활동을 모니터링 무료 평가판을 사용하고 당신이 그것을 좋아하는 경우에
  • 3) 구입 할 수 있습니다)
  • 2. 대답 할 수 없습니다.) 최대 DOP는) 내가
  • 5
  • 을 이해 확실하지 않다, 프로세서 &의 수 또한 비용 임계 값은 아마도 2와 동일) parrallelism에게
  • 4. 영향을 미칠 것입니다 제어 당신이 보는 곳입니다 무슨 일을에 따라 달라집니다 문제가있는 SQL 보초는 그가 알 수있는 대기 상태를 보여줍니다. lp