ㅇㅇ
노노 - dc App
어셈블리 레벨에서 보면 다 똑같음
branch prediction 말하는 거 같은데 조건문 없이 goto 쓰면 direct jump 를 사용해서 파이프라인이 유지됨. 근데 조건문을 쓰면 무조건 indirect jump 를 사용해서 파이프라인이 정리됨
그래서 goto 만 특별하게 branch prediction을 저해시키는 게 아닌 그냥 조건문의 특성일 뿐임
이런건 어디서 배우는거냐..? - dc App
잠만 내가 잘못 말한 게 있음. 조건이 있으면 indirect 가 아닌 direct jump 만을 사용함. 그리고 조건문이 없더라도 indirect 일 때가 있음 (함수 포인터). 조건문이 파이프라인을 헤치는 건 맞음
csapp 읽다 보니 나오더라
고맙다.. - dc App
해치는건 맞는데 goto"만" 해치는건 아님
ㅇㅇ
노노 - dc App
어셈블리 레벨에서 보면 다 똑같음
branch prediction 말하는 거 같은데 조건문 없이 goto 쓰면 direct jump 를 사용해서 파이프라인이 유지됨. 근데 조건문을 쓰면 무조건 indirect jump 를 사용해서 파이프라인이 정리됨
그래서 goto 만 특별하게 branch prediction을 저해시키는 게 아닌 그냥 조건문의 특성일 뿐임
이런건 어디서 배우는거냐..? - dc App
잠만 내가 잘못 말한 게 있음. 조건이 있으면 indirect 가 아닌 direct jump 만을 사용함. 그리고 조건문이 없더라도 indirect 일 때가 있음 (함수 포인터). 조건문이 파이프라인을 헤치는 건 맞음
csapp 읽다 보니 나오더라
고맙다.. - dc App
해치는건 맞는데 goto"만" 해치는건 아님