로그인 해주세요.

미니기기 / 음향 게시판 *스마트폰과 PC, 카메라, 스피커 등 IT 미니기기와 음향기기에 관해 교류하는 게시판입니다.

WayBack

미니 로제타 2 작동 방식

  • WayBack
  • 조회 수 881
  • 2020.08.11. 11:49

좋은 글이 있어서 한 번 가져와봅니다. 많은 분들이 로제타 2가 모든 상황에서 AOT로 돌아간다고 생각하시는 것 같네요. ㄷㄷ;

 

x86 인텔 바이너리를 ARM 맥에서 구동할 수 있게 해 주는 Rosetta 2에서는 조금 더 이야기가 복잡해진다. Microsoft조차도 Windows 10에 x86-to-ARM Simulator를 집어넣었지만, 성능이 극도로 저하되는 문제로 사용자들의 외면을 받고 있는 처지이기 때문이다. 애플은 이 문제를 좀 더 똑똑하게 해결하는데, Universal 2와 마찬가지로 LLVM 컴파일러의 힘을 빌려 AOT (Ahead-of-Time)과 JIT (Just-in-Time) 기법을 모두 사용하는 것이다.

 

먼저 Mac App Store에서 배포되는 앱들은, ARM 맥이 본격적으로 출시되고 난 이후 시점부터는 Universal 2 바이너리의 형태로 강제로 ARM 바이너리를 지원해야 업데이트가 가능해질 것이기 때문에 크게 신경쓸 필요가 없다. 그럼 오랫동안 업데이트가 안 된 앱들은? 크게 두 가지 방법이 있다. App Store 서버에서 AOT Translation을 거쳐 ARM 바이너리를 생성해 제공하는 방법, 그리고 로컬에서 처리하는 방법이다. 서버에서의 AOT Translation은 재컴파일에 필요한 컴퓨팅 요구사항이 bitcode의 경우와는 달리 꽤나 크기 때문에, 실험적으로만 지원할 것으로 보이나 아직 확실치는 않다 (이와 관련된 상세한 내용들은 WWDC 이후 세션들에서 공개될 예정이므로, 상세 사항이 업데이트되는 대로 본 글을 수정할 예정이다).

 

App Store 바깥에서 배포되는 x86 앱들은, 마찬가지로 AOT Translation을 통해 설치 시 자동으로 ARM 바이너리로 변환된다. 다만 AOT 기법이 먹히지 않는 경우가 있으니, 바로 앱 그 자체가 JIT를 사용하는 경우다 (런타임, 가상화 등등). 이렇게 되면 바이너리 자체가 고정되지 않고, 프로세서에 전달하는 명령 옵코드가 매번 변경되기 때문에 사전에 ARM 바이너리를 생성하는 것이 불가능하다. 이러한 경우에만 제한적으로 실시간 x86 Translation을 사용하겠다는 것이다 (JIT를 위한 JIT). 즉 성능 저하가 상당히 있겠으나, 이런 류의 앱들의 경우 그 수가 많지는 않고 대부분 Universal 2를 통해 발빠르게 ARM 바이너리를 지원할 것이기 때문에 실제 ARM 맥이 소비자들에게 판매되는 시점에서는 크게 문제가 되지 않을 것으로 보인다.

WayBack
Remember 416
일본불매/NO JAPAN

MacBook Pro Early 2015 13"
iPhone 11 White
Mac Pro 2019
iPad Pro 12.9 Space Grey (2021, M1)
AirPods Pro (2nd generation)
MacBook Pro 14" Silver (M2 Max)
iPhone 15 Pro Natural Titanium
댓글
3
1등 id4thomas
2020.08.11. 12:00

AOT,JIT 보다 더 중요한게 LLVM 컴파일러 일겁니다. 컴파일러쪽은 잘 모르지만 JIT로 비트코드 변환을 하더도 x86 로우레벨 적인 부분만 변환해서 효율적인 것으로 알고있습니다. 한번 공부해보면 재밌을거같아보이더라고요  "애플이 LLVM 컴파일러의 개발에 투자하며, 가상 머신 없는 네이티브 레벨에서의 플랫폼 독립성을 확보했기 때문이다.  "

[id4thomas]님의 댓글을 신고합니다. 취소 신고
긴닉네임2003291156
2등 긴닉네임2003291156
2020.08.11. 12:04

LLVM (IR)의 위력이죠. 몇번 간단히 글을 쓰기도 했었  -_- ㅋ

[긴닉네임2003291156]님의 댓글을 신고합니다. 취소 신고
콜홍
3등 콜홍
2020.08.11. 13:12

오우... 웹 기술(html5, js)를 통한 크로스플랫폼에 회의적인 생각을 갖고 있었는데, 애플은 네이티브 크로스 플랫폼을 구상하고 있었군요.

[콜홍]님의 댓글을 신고합니다. 취소 신고
취소
번호 분류 제목 글쓴이 날짜 조회 수
공지 공지 사이트 이용 수칙 240809 수정 file admin 18.08.04 117894 13
핫글 미니 s25 울트라 이 루머 렌더링 완전 맘에 드네요 [14] file maMeong 24.08.17 1298 20
핫글 미니 역시 노트20은 존재하면 안 되는 폰이었습니다. [18] file Fluent 24.08.17 1010 17
핫글 미니 아무리 불편해도 카메라가 중요하면 외산폰을 찾게 됩니다 [11] file 클래식크롬 24.08.17 861 16
63154 미니 저도 S7 불량 테스트 해봤습니다. [5] file WindowsCE 20.08.24 546 0
63153 미니 녹조 결함 아니라고... [6] file 카더 20.08.24 649 0
63152 미니 s20u 에어팟프로 베터리 어플 머쓰시나요? [4] 길아 20.08.24 238 0
63151 미니 일반 PC인데 삼성노트 4.0 설치 됐읍니다 [3] file 썩은귤 20.08.24 839 0
63150 미니 요즘 삼성 qc 관리가 이상하네요 [1] 크나앙 20.08.24 440 0
63149 미니 탭 녹조 결함이긴 하군요. [6] pigini 20.08.24 557 0
63148 미니 아주살짝휜건..뭐 다들그런거같아서 그냥쓰기로했슴다 [6] 똥또로똥 20.08.24 421 0
63147 미니 폴드1 유저로서 폴드2 기변각이 애매한거 같네요 [14] 프라페노 20.08.24 455 0
63146 미니 알람 볼륨 " 0 " [5] 점장 20.08.24 280 0
63145 미니 갤럭시 팬파티 사과문자 왔네요 😯 [4] file MrGom™ 20.08.24 759 0
63144 미니 그게 사실이라면 [3] Thomasp5675 20.08.24 288 0
63143 미니 탭칠플 오면 확인해야 하는 문제가 얼마나 있나요? [3] keegde029 20.08.24 337 0
63142 미니 노트10+도 화면 재고 없네요 화이트갤럭시 20.08.24 366 0
63141 미니 갤21에 s펜 지원되면 [4] 긴닉네임2002250504 20.08.24 383 0
63140 미니 막상 탭칠이 왔지만.... [6] 민초홀릭 20.08.24 417 0
63139 미니 그럼 노트20이 마지막 모델이군요 [1] 긴닉네임25388108 20.08.24 474 0
63138 미니 s7 받자마자 확인해야 할 부분 있을까요 [3] 인헤리턴스 20.08.24 235 0
63137 미니 엥? 내년 상반기 (노트21같은)S21이 나온다고요? [3] 스퀴니 20.08.24 483 0
63136 미니 탭칠플 와파 블랙버전입니다 똥또로똥 20.08.24 254 0
63135 미니 애드가드 vpn 배타버전 사용중인데 요상하네요 [2] file 갤텐이 20.08.24 459 0
63134 미니 저... 폴드 USB 단자 맛탱이 간거 같네요.... ㅠㅠ [6] 넷마블 20.08.24 605 0
63133 미니 LG WING 긱벤치 점수 유출 [3] file lando 20.08.24 532 0
63132 미니 닝겐노 유리와 짱짱데스네.. [5] file Terrapin 20.08.24 426 0
63131 미니 삼성 차세대 갤럭시S21에 S펜 탑재 [19] NOARK 20.08.24 783 0
63130 미니 받았습니다..만 [4] 똥또로똥 20.08.24 319 0

스킨 기본정보

colorize02 board
2017-03-02
colorize02 게시판

사용자 정의

1. 게시판 기본 설정

게시판 타이틀 하단에 출력 됩니다.

일반 게시판, 리스트 게시판, 갤러리 게시판에만 해당

2. 글 목록

기본 게시판, 일반 게시판, 썸네일 게시판만 해당

썸네일 게시판만 해당

썸네일 게시판만 해당

썸네일 게시판만 해당

썸네일 게시판만 해당

3. 갤러리 설정

4. 글 읽기 화면

기본 10명 (11명 일 경우, XXXXX 외 1명으로 표시)

5. 댓글 설정

일정 수 이상의 추천을 받은 댓글에 표시를 합니다.

6. 글 쓰기 화면 설정

글 쓰기 폼에 미리 입력해 놓을 문구를 설정합니다.

서버에 요청 중입니다. 잠시만 기다려 주십시오...