일단 unsafe는 성능을 위해서 쓰는게 아님 대부분의 경우 이미 제공되는 safe 함수들이 다 그에 맞게 최적화 돼있음
하지만 한번씩 그 safe 함수를 직접 로우레벨에서 unsafe로 부터 만들어야할 경우가 존재함
그럴때 컴파일러 정적 체크의 세계에서 잠시 벗어나서 로우레벨 컨트롤을 빌려쓰는거지 성능을 위해서 안전을 희생한다 같은 개념이 절대 아님
실제 예시를 두개 들어봄
위는 tokio라는 비동기 런타임 라이브러리고 밑은 redox라는 OS의 커널임
둘다 성능을 요구하는건 같지만 커널은 특성상 더 로우레벨 컨트롤이 필요한 경우가 많아서 훨씬 비율이 높음
그리고 그렇게 unsafe를 많이 필요로 하는 커널조차 고작 6.88%밖에 안됨 대부분은 있지도 않음
참고로 성능딸이라면 누구에게도 지지않는 rust 컴파일러도 0.55%밖에 없음
꽃게추 - dc App
근데 생각보다 신기하네 꿈파일러가 저거밖에안먹는거보면 - dc App
성능딸이라면 누구에게도 지지 않는다니... 러스트 컴파일러는 지옥 같이 느린데
혹시 C++ 아십니까?
난 러스트 컴파일러가 C++보다 느린 것 같던데
ㄴㄴ 훨씬 빠름