개발 🛠💻/멀티쓰레드1 C++ False Sharing 1. false sharing 이란?? false sharing은 멀티 쓰레드 환경 + CPU의 멀티 코어에서 발생됩니다. cpu 내부의 코어와 코어간의 메모리 정보가 공유되어 하드웨어 적으로 병목현상이 일어나는 것을 뜻합니다. 설명하기에 앞서 false sharing이 일어난 코드를 보겠습니다. #include #include #include long long num1 = 0; long long num2 = 0; long long num3 = 0; void fun1() { for (long long i = 0; i < 1000000000; i++) num1 += 1; } void fun2() { for (long long i = 0; i < 1000000000; i++) num2 += 1; } void.. 2022. 7. 18. 이전 1 다음