Swift 컴파일 최적화 옵션

2015-11-13
15 Views

Build Setting에서 [Swift Compiler(Apple LLVM 7.0) – Code Generation] – [Optimization Lebel]에서 “-Onone”, “-O”, “-O -whole-module-optimization” 3단계로 설정할 수 있고 초기값으로 Debug에서는 -Onone, Release에서는 -O가 설정되어 있습니다.

최적화 차이를 확인하려면 100만건 Int형 배열에 랜던값을 넣고 정렬할 경우 -Onone과 -O는 상당한 차이가 있습니다. 실제 기기에 가깝게 디버깅하려면 Debug에서도 -O를 설정해도 무방합니다. 또한 Dynamic Dispatch가 발생할 수 있는 상태에서는 -O보다는 -O -whole-module-optimization이 빠른 결과를 보여주지만 그런 일은 크게 일어나지 않기 때문에 -O만으로도 충분하다고 생각됩니다.

Facebook Comments

You may be interested

[Swift3] 폐쇄(Closure)에 대해 살짝 이해할 수 있는 팁
Swift 3.0
shares7 views
Swift 3.0
shares7 views

[Swift3] 폐쇄(Closure)에 대해 살짝 이해할 수 있는 팁

MJ Kim - 4월 29, 2017

몇몇 개발자를 만나 개발을 하다보면, 폐쇄(Closure)에 대해 이해를 하지 못해서 간단하게 바로 이해할 수 있는 팁을 정리해본다. 앱을 개발하다보면 https통신을…

[Swift3] UITextview의 keyboard 닫기
Swift 3.0
shares1 views
Swift 3.0
shares1 views

[Swift3] UITextview의 keyboard 닫기

MJ Kim - 4월 29, 2017

스토리보드에서 델리게이트를 선언하고 class에 UITextViewDelegate를 상속받아서 delegate=self를 viewDidLoad에서 설정하면 간단하게 해결되는데 가끔 헷깔려 하는 경우가 있어 적어본다. [crayon-59043ff564681510373952/] [crayon-59043ff564685773014411/] [crayon-59043ff564687539996068/]…

스토리보드에서 다국어 지원 및 Xcode 8.3이상에서 이슈
Swift 3.0
shares4 views
Swift 3.0
shares4 views

스토리보드에서 다국어 지원 및 Xcode 8.3이상에서 이슈

MJ Kim - 4월 29, 2017

다국어 지원은 우선 Localizable.strings파일을 생성한 다음 언어를 지정한다. 그리고 필자가 자주 사용하는 일부 컨트롤들에 대한 확장(extension)을 추가한 다음 스토리보드에서 사용하는…