음수, 양수
모두 적용하게 만드는게 빠르냐?
둘다 어떻게 짜느냐에 따라 다르겠지?
Math.Abs()도 결국 분기로 구현되어 있을 거임. 부동 소수점인 경우 코세 성님이 글 올린 적 있는 sign bit 날려버리는 방식으로 무분기로 짜는 게 제일 효율적임. 정수는 어쩔 수 없이 분기 처리해야 하지만.
글 다시 읽어보니 abs() 구현하는 질문이 아니었네. 어차피 Math.Abs() 자체가 분기니깐 양수, 음수 나눠서 분기 처리하는 게 제일 빠를 거다. 근데 유지보수 측면에서 보면 Math.Abs() 쓰는 게 더 나을 거임. 코드량이 주니깐.
http://dblack.tk커뮤니티 사이트 입니다 많은 이용 부탁 드립니다.
Math.Abs()도 결국 분기로 구현되어 있을 거임. 부동 소수점인 경우 코세 성님이 글 올린 적 있는 sign bit 날려버리는 방식으로 무분기로 짜는 게 제일 효율적임. 정수는 어쩔 수 없이 분기 처리해야 하지만.
글 다시 읽어보니 abs() 구현하는 질문이 아니었네. 어차피 Math.Abs() 자체가 분기니깐 양수, 음수 나눠서 분기 처리하는 게 제일 빠를 거다. 근데 유지보수 측면에서 보면 Math.Abs() 쓰는 게 더 나을 거임. 코드량이 주니깐.
http://dblack.tk
커뮤니티 사이트 입니다 많은 이용 부탁 드립니다.