14.13.9 InnoDB 스핀 루프에서 PAUSE 명령 사용
InnoDB 내부 동기화는 스핀 루프가 자주 사용됩니다. InnoDB는 대기 중에 InnoDB 프로세스 나 스레드 가 운영 체제에 따라 일정이 변경되지 않도록 명령의 긴밀한 루프를 반복합니다. 스핀 루프의 실행이 너무 빠르면 시스템 자원이 낭비되고, 그에 따라 트랜잭션 처리량 성능이 저하됩니다. 최신 프로세서는 스핀 루프에서 사용하는 PAUSE
명령을 구현하고 있기 때문에 프로세서를보다 효율적으로 할 수 있습니다.
InnoDB는 이러한 명령이 사용 가능한 모든 플랫폼의 스핀 루프에서 PAUSE
명령을 사용합니다. 이 방법으로 CPU에 의존하는 워크로드의 전반적인 성능을 향상시킬뿐만 아니라 스핀 루프 실행중인 소비 전력이 최소화된다는 장점도 추가됩니다.
이 성능 향상을 이용하기 위해 아무것도 할 필요가 없습니다.
InnoDB 잠금 작업에 대한 성능 고려 사항은 섹션 8.10 "잠금 작업의 최적화" 를 참조하십시오.