본문 바로가기

C++ 최적화3

C# 처리 속도 개선과 최적화 9가지 방법, 성능 튜닝 팁 C# 속도 최적화 9가지, 성능 튜닝 방법 타입 유추 일반적으로 C#에선 아래와 같이 (최적화 되기 전) 정의합니다. 1string MyString = “Hello World”;cs =의 우측에 하나의 데이터 타입(string)을 적어 선언하는 건 일반적입니다. (속도 또한 일반적) 근데, 이런 작업을 컴파일러가 대신하여 개선할 순 없을까요? 1var MyString = “Hello World”;cs 바로 위의 코드 또한 〈MyString〉라는 C# 문자열 변수를 생성합니다. 일반적인 상황에서 유추(inference)를 통해 처리 성능이 향상되진 않습니다. 컴파일 시, 어떤 작업 과정이든 데이터 타입을 먼저 생각하진 않습니다. 아래 예를 통해 유추를 알아볼 수 있습니다. 1234var SeniorStaf.. 2018. 10. 7.
[C++ 최적화] Const, 가상함수, 변수 등으로 속도 최적화 [C++ 최적화] Const, 가상함수, 변수 등으로 속도 최적화 C++ 최적화 : 속도 최적화(Speed Optimizations)모든 애플리케이션은 CPU 사이클이 시간 때문에 중요하다. 이 포스팅에선 C++ 최적화 중 속도를 위한 몇 가지 지침을 제시한다. C++ 최적화 : 긴 인수 리스트를 압축하기 위해 클래스 사용함수의 인수 리스트가 길 때, 함수 호출 오버헤드가 증가한다. 런타임 시스템은 스택을 인수들의 값으로 초기화해야 한다. 당연히 이 동작은 인수가 많을수록 오래 걸려 C++ 최적화에 방해된다. 예를 들어, 아래 함수를 100,000,000번 수행하면 내 컴퓨터에서는 평균 8.5초가 소요된다. 123456void retrieve(const string& title, //5 arguments.. 2017. 12. 1.
인라인함수로 프로그램 코드 최적화 (C++ inline함수) 인라인함수로 프로그램 코드 최적화 (C++ inline함수) C++ 코드 최적화를 할 때 프로그램 코드엔 인라인함수가 있어야 합니다. C++ 객체지향 프로그래밍에 인라인함수가 갖는 장점을 적극적으로 활용하기 위함이죠. 이 포스트에선 함수 호출할 때 발생하는 오버헤드를 해결하는 인라인함수를 설명합니다. 프로그램 코드 최적화로 실행 속도를 개선하려면 반드시 인라인함수 사용이 필요합니다. 10.4 인라인함수들(Inline Functions) 인라인함수들은 함수 호출 때문에 초래되는 오버헤드를 제거할 수 있으며 여전히 보통의 함수들의 장점들을 제공한다. 그러나, 인라인화 하는 것은 만병통치약이 아니다. 어떤 상황들에서, 그것은 프로그램의 성능을 저하할 수도 있다. 이러한 특징을 현명하게 사용하는 것이 중요하다... 2017. 9. 8.