곱셈
-
[사소한 테스트] 곱셉/나머지 연산의 로직을 덧셈/뺄셈으로 변경한다면?개발/C·C++ 2024. 8. 28. 17:43
사소해서 코드까지 올릴 문제는 아니다. 문자열로 표현된 숫자를 가지고 더하기 연산을 할 때, 올림값(carry) 관련해서 곱셉과 나머지 연산을 이용하면 간결한 코드를 작성할 수 있다. 이를 조건문, 덧셈, 뺄셈으로도 표현할 수 있는데 코드가 조금 길어진다. 문득 이 두 로직 간의 성능 차이가 얼마일지 궁금해서 100만 번 테스트를 했다.나노초 단위로 표현된 차이이며 백만 번 수행했을 때 속도 차이는 0.1초였다. CPU 기준에선 꽤 큰 차이라고 할 수 있다. 라이브 중인 서비스라면 결코 무시할 수 없는 수치라고 생각한다. 어느 정도 예상했겠지만 Test_2() 함수가 조건문, 덧셈, 뺄셈으로 구현된 함수다. 곱셈, 나눗셈, 나머지 연산이 느리다는 건 알고 있었지만 테스트로 직접 눈으로 확인해보니까 조금 ..