로그인 해주세요.

미니기기 / 음향 게시판 *스마트폰과 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 117815 13
핫글 미니 여러분 절대로 커스텀 키보드 하지 마세요 체질이란게 바뀝니다 [12] PatGelsinger 24.08.10 939 9
핫글 미니 6.1.1에 들어가는 전화 및 연락처앱 [5] file 감비아도나츠 24.08.10 838 8
핫글 미니 버즈3 프로가 왔습니다 [9] updatefile Rangs 24.08.10 555 8
73303 미니 저는 중국산과의 가격 경쟁은 솔직히 어렵다고 봐요 [7] 베이어 24.07.12 672 8
73302 미니 이건 궁금한 사람 있을 수 있는 포코x6 pro의 벤치마크 [4] file 빅코 24.07.12 672 4
73301 미니 디자인만 보고 온 6세대 Z시리즈 file 마키세크리스 24.07.13 672 4
73300 미니 맥북에는 언제쯤 셀룰러 들어갈까요? [2] 바닐라라떼 24.07.27 672 0
73299 미니 삼성 아웃폴드 특허 [6] file 다잊어야해욥 19.03.11 673 0
73298 미니 삼성은 이게 좋아요 [13] file qazsdf 19.03.16 673 0
73297 미니 남들은 카타리나 올린다는데 제 데스크탑은 아직도 하이 시에라네요... [7] file Score_고동빈 19.06.21 673 0
73296 미니 미9 잘 나왔네요ㄷㄷ [12] file 쌍피ㄷㄷ 19.06.27 673 0
73295 미니 갤럭시 S11은 슬라이드나 팝업으로 나올 것 같은...? [18] (캬) 19.07.02 673 0
73294 미니 아베가 입으로만 엄포를 놓는게 아닌 것 같은 [12] 갤러리별 19.07.03 673 0
73293 미니 애플 이번 발표는 풍성하겠네요 [11] 팝카드있으세요 19.07.30 673 1
73292 미니 탭S6 UFS 3.0인가요? [8] 기변증 19.08.01 673 0
73291 미니 LG G Pad 5 10.1 FHD 공식 등록 확인 [10] file 기변증 19.09.11 673 1
73290 미니 20000mAh 보배 최고존엄이 뭔가요? [15] 애플알바 19.09.23 673 0
73289 미니 [2] Badger 19.09.24 673 0
73288 미니 와 폴드보다 어그로 개쩔거같다 [3] file 서녘마리 19.09.24 673 0
73287 미니 드디어 유튜브도 다크모드 대응하네요.jpg [18] file Havokrush 19.11.17 673 0
73286 미니 끔찍한 혼종 아이리버 유선 블루투스 이어폰 간단후기 [14] file MysticCat 19.12.03 673 6
73285 미니 아이패드는 봐도봐도 참 애매하네요. [14] 뚜시뚜시 19.12.08 673 0
73284 미니 WA! 그램17! [23] file F9F 19.12.12 673 0
73283 미니 플렉스 인기 좋네요. [4] pigini 19.12.13 673 0
73282 미니 Oppo 레노 3 프로 실사.jpg [8] file LG알바 19.12.26 673 0
73281 미니 몽아재: S11 → S20 [11] 범죄자호날두 19.12.31 673 0
73280 미니 아이폰 11 후로 야간 사진 입이다 [15] file 보거 20.01.29 673 0
73279 미니 갤럭시 노트 20, UFS 3.1 탑재 예정 [6] H_ 20.02.02 673 0

스킨 기본정보

colorize02 board
2017-03-02
colorize02 게시판

사용자 정의

1. 게시판 기본 설정

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

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

2. 글 목록

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

썸네일 게시판만 해당

썸네일 게시판만 해당

썸네일 게시판만 해당

썸네일 게시판만 해당

3. 갤러리 설정

4. 글 읽기 화면

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

5. 댓글 설정

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

6. 글 쓰기 화면 설정

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

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