칩이나 연결 장치가 두 배 빨라졌다는 발표를 보면 전체 시스템도 비슷하게 좋아질 것 같다. 그러나 실제 작업에는 계산·전송·저장과 여러 대기 시간이 섞여 있다.
새 기술이 바꾸는 부분이 전체 시간에서 작은 비중이라면 개선 효과도 제한될 수 있다. 성능의 배율을 읽기 전에 무엇을 얼마나 빠르게 했는지부터 확인해야 한다.
일부의 개선 배율을 전체의 개선 배율로 옮기려면, 그 부분이 원래 차지하던 시간과 다른 단계의 변화를 알아야 한다.
1. 부품 성능과 완료 시간을 나누어 측정한다
전송 대역폭이 높아졌다는 설명과 같은 결과를 얻는 시간이 짧아졌다는 설명은 다르다. 실제 작업이 그 대역폭을 얼마나 활용하는지, 다른 곳에서 얼마나 기다리는지에 따라 결과가 달라진다.
비교할 작업의 입력·규모·결과 품질과 측정 범위를 같게 맞춘다. 일부 연산만 잰 시간인지, 데이터를 준비하고 결과를 검증하는 과정까지 포함했는지도 적는다.
성능이 좋아졌다는 문장에는 무엇을 어떤 조건으로 측정했는지 붙어 있어야 한다. 서로 다른 작업이나 품질을 비교한 배율을 같은 업무의 시간 절약으로 읽지 않는다.
2. 가속한 부분의 시간 비중으로 전체 효과를 계산한다
가상 작업 A와 B가 각각 100초 걸린다고 하자. 단계가 순서대로 실행되고 겹치지 않으며, 개선한 부분만 두 배 빨라지고 나머지는 그대로다. 추가 비용이나 새로운 대기도 없다는 단순 조건이다.
항목 | 작업 A | 작업 B |
|---|---|---|
개선 대상의 기존 시간 | 80초 | 20초 |
나머지 시간 | 20초 | 80초 |
개선 대상의 변경 후 시간 | 40초 | 10초 |
전체 변경 후 시간 | 60초 | 90초 |
전체 가속 배율 | 약 1.67배 | 약 1.11배 |
A는 100초에서 60초로, B는 100초에서 90초로 줄었다. 같은 부분 가속 2배라도 전체 효과는 다르다.
전체 가속 배율은 기존 전체 시간 ÷ 변경 후 전체 시간이다. A의 40% 시간 절약을 40%의 가속 배율 증가와 같은 말로 쓰지도 않는다. 시간과 그 역수인 처리 속도는 변화율이 다르다.
3. 남은 단계가 개선 효과의 한계를 만든다
NVIDIA의 Amdahl 법칙 설명은 고정한 작업에서 일부를 병렬화해도 나머지 부분이 전체 가속의 한계를 만든다고 설명한다.
위 A에서 개선 대상의 시간을 0에 가깝게 줄여도 나머지 20초는 남는다. 이 조건에서는 전체가 원래보다 5배 빠른 한계에 가까워질 뿐, 개선한 부분의 배율을 끝없이 따라가지는 않는다.
다만 실제 시스템은 단계가 겹쳐 실행되거나 작업량·알고리즘 자체가 바뀔 수 있다. 단순 시간 합계를 모든 구조에 그대로 적용하지 않는다. 계산의 한계는 고정한 조건의 결과이며, 실제 측정을 대신하는 약속이 아니다.
4. 개선 때문에 새로 생기는 시간도 넣는다
새 장치나 도구를 붙이면 데이터 이동·변환·초기화·통합과 검증이 추가될 수 있다. 일부 연산의 절약 시간보다 이 추가 시간이 크면 전체 작업은 오히려 느려질 수도 있다.
한 번의 작은 작업과 많은 작업을 묶어 처리하는 경우도 다를 수 있다. 평균 완료 시간뿐 아니라 지연이 커지는 조건과 실패·재시도까지 확인한다.
이후 측정에서는 병목이 다른 단계로 옮겨갔는지도 살핀다. 처음 가장 오래 걸리던 부분을 개선했다면 다음에는 다른 부분의 상대적 비중이 커질 수 있다.
5. 성능 개선과 사업의 이익을 연결한다
시간이 줄었다면 같은 자원으로 더 처리할 수 있는지, 필요한 장비·전력·사람의 비용이 달라지는지 조사한다. 고객에게 필요한 품질·안정성·가격과 기존 시스템의 전환 비용도 함께 읽는다.
기술 발표의 최고 성능과 고객의 실제 업무 성능, 고객이 비용을 줄이는 정도와 공급자가 받을 수 있는 가격은 각각 확인한다. 좋은 개선이 곧 높은 공급자 이익이나 적절한 주가를 뜻하지는 않는다.
병목을 해결했다는 평가에는 전체 작업에서 확인한 효과와 그 효과를 얻는 총비용이 필요하다. 부품의 큰 숫자보다 같은 결과를 얼마나 빨리, 안정적으로, 경제적으로 만들었는지가 실제 가치를 설명한다.
