2014-09-19 5 views
4

저는 Xcode에 비교적 익숙하지 않습니다. 우리는 들어오는 데이터를 표시하는 앱을 테스트하고 있으며 가능한 한 빨리해야합니다. 다른 플랫폼을 사용하려면 최적화를 시작하고 제거 할 디버그 코드를 변경하기 위해 "디버그"에서 "릴리스"로 변경해야하며 속도에 상당한 영향을 미칠 수 있습니다. 빨리/릴리스 모드로 빌드하려면 Xcode에서해야 할 동일한 기능은 무엇입니까?Xcode에서보다 빠른 "릴리스"빌드?

감사합니다 (I이 인터넷 검색 및 일반 근처에있을 것 같다 안타를 많이 볼 수 있지만 내가 약간의 용어에 의해 던져진 될 수 있어요, 나는 그것이 조금 :) 아래 무식해야 할 수도 있습니다) 도움을 청합니다.

+2

릴리스 구성을 사용하도록 구성표를 편집하십시오. – dasdom

+0

글쎄 쏘지 ... 나는 편집 체계 대화 상자의 왼쪽에 빌드 유형을 선택하려고 노력했지만 계속 "붙어 다니지"않았다. 이제 "실행/테스트/분석/아카이브"유형마다 디버그/릴리스를 선택할 수 있습니다. 감사! – Chris

+0

확인하고 싶으면 답변으로 추가하십시오. – dasdom

답변

2

릴리스 구성을 사용하도록 구성표를 편집하십시오.

3

먼저 또한 JPEG로 PNG를 선호한다 Xcode optimization

(엑스 코드 (6)에 동일한 엑스 코드 5의 스크린 샷 만) 엑스 코드에서이 부분을 살펴 가지고 (JPEG 더 많은 계산을 필요로 -하지만 측면에서 일반적으로 작은 네트워크를위한 더 나은 크기 ...) 마지막으로 멀티 스레딩을 사용하십시오. 그것들은 (뮤 겸손한 견해에) 보는 첫 단계입니다.

+0

잘 알아두면 좋겠다 ... 대단히 감사합니다! – Chris

3

첫 번째 단계는 위에서 설명한대로 최적화를위한 최적화 수준을 설정하는 것입니다. 여기에는 많은 옵션이 있습니다. - 매우 빠르고, 다소 위험

Code Generation Options 
    -O0 -O1 -O2 -O3 -Ofast -Os -Oz -O -O4 
     Specify which optimization level to use: 

     -O0 Means "no optimization": this level compiles the fastest and 
      generates the most debuggable code. 

     -O1 Somewhere between -O0 and -O2. 

     -O2 Moderate level of optimization which enables most 
      optimizations. 

     -O3 Like -O2, except that it enables optimizations that take longer 
      to perform or that may generate larger code (in an attempt to 
      make the program run faster). 

     -Ofast 
      Enables all the optimizations from -O3 along with other 
      aggressive optimizations that may violate strict compliance 
      with language standards. 

     -Os Like -O2 with extra optimizations to reduce code size. 

     -Oz Like -Os (and thus -O2), but reduces code size further. 

     -O Equivalent to -O2. 

     -O4 and higher 
      Currently equivalent to -O3 

당신은 'Ofast'옵션을 알 수 있습니다 : - 그 소리의 LLVM 컴파일러 man 페이지 (남자 CC)에서 (-Os 릴리스의 기본이다).

두 번째 단계는 "루프 풀기"를 사용할지 여부를 고려하는 것입니다. 나는 이것이 어떤 코드에서 15 %의 속도 증가를 가져올 수 있음을 읽었다. (디버깅을 희생 시키지만 릴리즈 빌드에서는 문제가되지 않는다.)

다음으로 최적화 프로필을 작성하고 사용할 것인지 고려하십시오. 자세한 내용은 Apple를 참조하지만, 요점이다 :

프로파일 활용 최적화 (PGO)는 응용 프로그램의 컴파일러 최적화를 향상시킬 수있는 방법이다. PGO는 특별히 장착 된 빌드를 사용하여 가장 일반적으로 사용되는 코드 경로 및 방법에 대한 프로필 정보를 생성합니다. 그런 다음 컴파일러는이 프로파일 정보를 사용하여 가장 자주 사용되는 코드에 최적화 작업을 집중시키고 프로그램에서 이 일반적으로 더 나은 최적화 작업을 수행하는 방법에 대한 추가 정보를 활용합니다.

프로파일을 정의하고 빌드 설정 -> Apple LLVM 6.0 - 코드 생성 -> 최적화 프로파일 사용에서 사용 여부를 정의하십시오.