int wby = ((by + nBlkY - 3) / (nBlkY - 2)) * 3;
이게
int wby = (by==0) ? 0 : (by==nBlkY-1) ? 6 : 3;
이거랑 동일한 코드거든?
위는 add, sub 연산이 3번
idiv, imul 각각 한번씩인데
아래는 그냥 조건분기 두번에 mov 연산1번정도인듯한데
성능상 차이 있을까?
이게
int wby = (by==0) ? 0 : (by==nBlkY-1) ? 6 : 3;
이거랑 동일한 코드거든?
위는 add, sub 연산이 3번
idiv, imul 각각 한번씩인데
아래는 그냥 조건분기 두번에 mov 연산1번정도인듯한데
성능상 차이 있을까?
분기 있으면 멀티코어에선 성능 떨어지긴 할텐데 신경 쓸 정도인가 싶고, 임베디드는 보통 멀티코어 아니지 않음? ㅇㅅㅇ
cpu환경이 여러가진데, 128코어 환경도 있어
쉐이더 코드면 성능 차이 있긴 하겠다 ㅇㅅㅇ...
조건문 없는게 좋다는거임?
ㅇㅇ
걍 가독성 위주로 짜는게 훨낫지않을까
저런연산식보다 구조적으로 개선
구조개선은 다른문제고, 혹여나 저런 코드 하나 때문에 딜레이 0.1초라도 차이날까봐 그런거지
by에 0 넣으면 결과가 다른데??
아냐 맞아
by = 0이고 nBlkY = 1이라고만 봐도
nBlkY는 무조건 3이상ㅇ임