2014-04-22 2 views
0

단순화 할 수없는 많은 변수에 대수 문제가 있습니다. 코드로 표현할 때 성능 고려 사항이 있습니까?수학 공식을 표현하는 데 성능 이점이 있습니까?

E=(X * (A-AC-F-M) * (1-L) - R)/(A)

나는 그것을 곱 A를 분할하고, 다른 보이게하기 위해 많은 것을 할 수 있지만 난 안 간단 : 공식이다. 코드로 작성할 때 고려해야 할 사항은 무엇입니까? 나는 자바 스크립트와 .NET에서 이것을 구현할 것이다.

+3

사실 ...... 사실, 이런 일이 반복됩니까? 루프의 일부가 해제 될 수 있습니까? –

+0

아니요, 루프가 아닙니다. –

답변

2

일반적으로 성능에 영향을 미치지 만 대개 병목 현상이 아닙니다. 이 경우에 A를 구하기 위해 out을 얻으려면

E = X * (1-C) * (1-L) - (X * (F + M) * (1-L) + R)/A

작업이 실제로 증가 할 수 있습니다.

일반적으로이 종류의 성능 조정은 마지막 단계에서 저장해야하며 항상 프로파일 링 및 타이밍과 결합해야합니다. 알고리즘과 데이터 구조를 최적화하는 것이 훨씬 더 중요합니다.

+0

이것이 표현 된 방식보다 성능이 좋은 이유를 설명해 주시겠습니까? –

+0

그렇지 않습니다. 약 6 사이클 더 오래 걸릴 것입니다. 그래서 그 방식으로 변경하지 않는 것이 좋습니다. – Charles

+0

두 방법으로 얼마나 많은 사이클이 소요되는지 결정하는 방법은 무엇입니까? –

1

이 경우 가장 중요한 고려 사항은 가독성과 명확성이어야한다고 생각합니다.

성능이 충분할 것입니다. 이것은 수십억 번 호출한다고해도 병목 현상이되지 않는 단순한 계산입니다. 반복하여 시간을내어 자신에게 증명하십시오.

관련 문제