(개발) 요즘 모던 C++ 살펴보는데 지독하다 싶은 구석이 있네요
M
massei85 (122.♡.245.206)
2024년 4월 29일 AM 11:29 · 수정됨(18:25)
조회 1,252 공감 0

분기문의 컴파일러 최적화를 돕기 위해 쉽게 선택될만한 브랜치에 [[likely]]를, 선택 드물 것 같은 브랜치에 [[unlikely]]를 붙일 수 있군요
살펴보니 비판적인 의견도 많고 gcc에 버그도 있다고 하고 잘 안 쓰이는 것 같지만
새삼 각종 최적화 요소에 목숨거는 언어란 생각이 확 들었네요 ㅋㅋ
진짜 별의 별걸 다 해놓으니 구현체와 표준간의 시간 격차가 자꾸 늘어나는게 아닐까 하는 생각...
댓글 (8)
-
JJava
24.04.29 · 172.♡.94.0
- M
massei85
→ Java 작성자
24.04.29 · 122.♡.245.206
분기 자체는 코드상 흐름에 맞게 작성해놓고 최적화는 별도로 분리해서 생각할 수 있게 해주는 듯합니다 ㅎㅎ -
김김재귀
24.04.29 · 121.♡.214.216
좋은것 같은데요. effective c++같은걸 읽어야 알수 있을법한 팁들이 언어안에 내장시켜버리니 - M
massei85
→ 김재귀 작성자
24.04.29 · 122.♡.245.206
비판글들 읽어보면 의도는 좋은데 막상 썼을 때 혼란을 야기할만한 부분이 있는 것 같더군요.. https://blog.aaronballman.com/2020/08/dont-use-the-likely-or-unlikely-attributes/ - 다
다시머리에꽃을
24.04.29 · 106.♡.69.166
java 같은 경우 실행 중 실시간으로 프로파일링해서 지속적으로 최적화를 해주기도 하죠
아마 c 나 c++ 같은 콘크리트한 컴파일 언어의 경우 실행시의 최적화을 돕기 위한 방법인거 같습니다 -
블블루모카
24.04.29 · 118.♡.27.201
C나 C++은 속도가 생존의 의의가 되버렸으니 별개 다 나오네요 -
이이름모를잡초야
24.04.29 · 211.♡.163.50
하위 호환성은 유지하면서 모던해지고 싶은 마음은 이해하지만...
점점 <와 이건 좀...> 하는 게 많아지고 있죠. ㅎㅎ
전 std::initializer_list 에다가 폴딩 자동처리 기능 넣어둔거 보고 학을 뗐습니다...
일단 안되는 것보단 되는게 좋긴 한데.. 너무 비명시적이죠;; 딱 <정수타입> 에서만 작동하더라구요 와... 뭔 짓을 한겨!! - M
massei85
→ 이름모를잡초야 작성자
24.04.29 · 175.♡.138.140
지고가야하는 짐이 산더미인데 하고 싶은 일은 밑도 끝도 없이 많아서 괴랄해진 것 같습니다 ㅋㅋ
댓글을 작성하려면 이 필요합니다.
저는 의도적으로 확률이 높은 것을 위에(앞예) 위치시키곤 하는데요.
그럴 필요가 없겠네요.