ysw's blog

    Thread

    10 Jan 2019 |

    포스팅

    쓰레드(Thread)란?



    쓰레드란 데이터의 실행 흐름으로, 데이터가 지나다니는 통로라고 보면 된다. 쉽게 말해 코어가 일을 수행할 때 팔과 다리의 역할을 한다.

    과거에는 4코어 4쓰레드처럼 1코어당 1쓰레드로 데이터를 처리했다. 코어를 회사에 있는 하나의 훌륭한 인재라고 한다면, 인재가 회사의 업무를 처리하는 방식이 한 가지인 것이다. 즉, 1코어가 데이터를 처리할 때 하나의 길로 송신하고 수신하고 하는 것이다. 그러나 요즘은 4코어 8쓰레드처럼 1코어당 2쓰레드로 데이터를 처리한다. 즉 송신하고 수신하는 길이 다른 것이다.


    <내용>

    CPU와 쓰레드의 관계

    1코어당 2쓰레드가 좋은 것인가? 쓰레드를 도로에 비유한다면, 1차선 도로와 2차선 도로를 생각해보자. 1차선 도로는 지나갈 때 반대편의 차가 오면 기다렸다가 다 지나가고 자신의 차량이 지나갈 수 있다. 그러나 2차선 도로는 반대편의 차가 온다 해도 자신은 가던 길을 갈 수 있다. 더 간단한 예로, 고속도로에 차선이 여러 개인 이유를 생각해보자. 온종일 수많은 차들이 지나다니는데 차선이 하나라면 오가는데 시간이 많이 걸릴 것이다. 이처럼 여러 차선으로 인해 교통 체증이 안생기니 시간이 절약되는 것이다.

    2코어 4쓰레드, 4코어 8쓰레드처럼 1코어당 2쓰레드란 개념은 CPU 최적화를 위해 만들어진 것으로 실제 성능이 15%정도 향상된다고 한다.

    메모리와 쓰레드의 관계


    <내용>


    <내용>


    <내용>


    <내용>


    <내용>

    가져온곳: http://itblogpro.tistory.com/52
    https://12bme.tistory.com/65