비교 연산 (cmp)으로 인한 Blocking 문제는 프로그램이 실행 중 특정 조건을 비교할 때, CPU 파이프 라인의 효율성이 저하되거나 병렬 처리가 비효율적으로 이루어지는 상황을 의미합니다.

이 문제는 현대 프로세서에서 **분기 예측 실패(branch misprediction)**와 **메모리 동기화(memory synchronization)**에서 주로 발생합니다.


🧡 비교 연산(cmp)으로 인해 발생할 수 있는 문제

분기 예측 실패

비교 연산(cmp)은 분기 명령(jmp, je, jg 등)과 결합되어 사용됩니다.

비교 결과에 따라 코드 실행 경로가 나뉘는 경우, CPU는 어떤 경로를 실행해야 할지 분기 예측을 수행합니다.

🤔 파이프라인 중단(pipeline stall)이란**?**

메모리 동기화

다중 코어 환경에서 비교 연산(cmp)이 공유 메모리에 있는 데이터를 참조하려면 캐시 동기화가 필요합니다.

이때 동기화 비용으로 인해 cmp 연산이 지연될 수 있습니다.