Kết xuất có tăng tốc phần cứng là gì năm 2024
Trình mô phỏng hoạt động hiệu quả nhất khi có thể sử dụng phần cứng trên máy của bạn (chẳng hạn như CPU, GPU và modem), hơn là khi chạy dưới dạng phần mềm đơn thuần. Khả năng sử dụng được phần cứng trên máy của bạn để cải thiện hiệu suất được gọi là tăng tốc phần cứng (hardware acceleration). Show
Trình mô phỏng có thể dùng tính năng tăng tốc phần cứng để nâng cao trải nghiệm của bạn theo hai cách chính:
Tính năng tăng tốc phần cứng được bật sẵn trên hầu hết các máy. Tuy nhiên, nếu tính năng đó chưa được bật trên máy của bạn, hãy xem nội dung trên trang này để nắm được cách định cấu hình tính năng tăng tốc đồ hoạ và máy ảo (VM) nhằm nâng cao hiệu suất cho trình mô phỏng. Định cấu hình tăng tốc đồ hoạTính năng tăng tốc đồ hoạ sử dụng phần cứng của máy tính (thường là GPU) để kết xuất màn hình nhanh hơn. Thiết bị Android sử dụng OpenGL dành cho Hệ thống được nhúng (OpenGL ES hoặc GLES) để kết xuất cả đồ hoạ 2D và 3D trên màn hình. Khi tạo Thiết bị Android ảo (AVD) trong Trình quản lý thiết bị ảo Android (AVD Manager), bạn có thể chỉ định việc trình mô phỏng sử dụng phần cứng hay phần mềm để mô phỏng GPU của AVD. Tính năng tăng tốc phần cứng thường có tốc độ cao hơn và được đề xuất sử dụng. Tuy nhiên, vẫn sẽ cần phải sử dụng tính năng tăng tốc bằng phần mềm nếu máy tính sử dụng trình điều khiển đồ hoạ không tương thích với trình mô phỏng. Theo mặc định, trình mô phỏng quyết định việc sử dụng tính năng tăng tốc đồ hoạ bằng phần cứng hay phần mềm dựa trên chế độ thiết lập của máy tính. Nếu phần cứng và trình điều khiển GPU tương thích, trình mô phỏng sẽ sử dụng GPU. Nếu không, trình mô phỏng sẽ sử dụng tính năng tăng tốc bằng phần mềm (sử dụng CPU của máy tính) để mô phỏng quá trình xử lý GPU. Nếu khởi động trình mô phỏng qua , bạn có thể ghi đè chế độ tăng tốc đồ hoạ trong AVD đối với thực thể thiết bị ảo đó. Yêu cầuĐể sử dụng tính năng tăng tốc đồ hoạ, môi trường phát triển của bạn phải có:
Định cấu hình tính năng tăng tốc đồ hoạ trong Trình quản lý thiết bị ảo AndroidĐể định cấu hình tăng tốc đồ hoạ cho AVD, hãy làm theo các bước sau:
Định cấu hình tăng tốc đồ hoạ từ dòng lệnhĐể chỉ định loại tăng tốc đồ hoạ khi bạn chạy AVD qua dòng lệnh, hãy cung cấp tuỳ chọn c:\Users\janedoe\AppData\Local\Android> Sdk\emulator\emulator -accel-check accel: 0 AEHD (version 2.0) is installed and usable. accel 2, như minh hoạ trong ví dụ sau: emulator -avd avd_name -gpu mode [{-option [value]} ... ] Có thể thiết lập giá trị của c:\Users\janedoe\AppData\Local\Android> Sdk\emulator\emulator -accel-check accel: 0 AEHD (version 2.0) is installed and usable. accel 3 thành một trong các tuỳ chọn sau:
Các tuỳ chọn c:\Users\janedoe\AppData\Local\Android> Sdk\emulator\emulator -accel-check accel: 0 AEHD (version 2.0) is installed and usable. accel 3 sau không còn được dùng nữa:
Bật tính năng kết xuất đồ hoạ Skia dành cho giao diện người dùng AndroidKhi sử dụng các hình ảnh hệ thống API cấp 27 trở lên, trình mô phỏng có thể kết xuất đồ hoạ giao diện người dùng Android với Skia. Skia giúp trình mô phỏng kết xuất đồ hoạ mượt mà và hiệu quả hơn. Để bật tính năng kết xuất hình ảnh Skia, hãy sử dụng các lệnh sau trong shell janedoe:~/Android$ ./Sdk/emulator/emulator -accel-check accel: 0 KVM (version 12) is installed and usable. 1:
Định cấu hình tính năng tăng tốc máy ảoTính năng tăng tốc máy ảo sử dụng bộ xử lý của máy tính để cải thiện đáng kể tốc độ thực thi của trình mô phỏng. Công cụ có tên hypervisor (trình điều khiển ảo hoá) quản lý tương tác này bằng cách sử dụng những tiện ích ảo hoá mà bộ xử lý máy tính của bạn cung cấp. Phần này trình bày các yêu cầu đối với việc sử dụng tính năng tăng tốc máy ảo và mô tả cách thiết lập tính năng tăng tốc máy ảo trên từng hệ điều hành. Yêu cầu chungĐể sử dụng tính năng tăng tốc máy ảo với trình mô phỏng, máy tính của bạn phải đáp ứng các yêu cầu chung trong phần này. Máy tính của bạn cũng cần đáp ứng các yêu cầu khác dành riêng cho hệ điều hành. Yêu cầu về môi trường phát triểnĐể sử dụng tính năng tăng tốc máy ảo, môi trường phát triển của bạn phải đáp ứng các yêu cầu sau:
Yêu cầu về tiện ích ảo hoáNgoài các yêu cầu về môi trường phát triển, bộ xử lý của máy tính phải hỗ trợ tiện ích ảo hoá. Sau đây là các bộ xử lý được hỗ trợ:
Các yêu cầu bổ sung đối với bộ xử lý Intel và AMD: Bộ xử lý Intel và AMD cần có công nghệ dịch địa chỉ cấp hai (Intel EPT hoặc AMD RVI) Hầu hết các bộ xử lý Intel và AMD hiện đại đều hỗ trợ công nghệ dịch địa chỉ cấp hai. Chỉ các bộ xử lý Intel hoặc AMD thế hệ đầu tiên cung cấp tiện ích ảo hoá mới không có công nghệ dịch trang cấp hai. Nếu bạn không chắc liệu bộ xử lý của mình có hỗ trợ các tiện ích bắt buộc hay không, hãy kiểm tra thông số kỹ thuật của bộ xử lý trên trang web của nhà sản xuất. Bạn không thể sử dụng tính năng tăng tốc máy ảo nếu bộ xử lý của bạn không hỗ trợ các tiện ích này. Quy định hạn chếTính năng tăng tốc máy ảo có các quy tắc hạn chế sau:
Giới thiệu về trình điều khiển ảo hoáTính năng tăng tốc máy ảo đòi hỏi một trình điều khiển ảo hoá (hypervisor). Đây là công cụ sử dụng tiện ích ảo hoá do bộ xử lý của máy tính của bạn cung cấp. Nếu không có trình điều khiển ảo hoá và tính năng tăng tốc máy ảo, trình mô phỏng phải dịch mã máy từ từng khối máy ảo sao cho phù hợp với kiến trúc của máy tính lưu trữ. Quá trình này có thể khá chậm. Với trình điều khiển ảo hoá, khi máy ảo và kiến trúc của máy tính lưu trữ hoạt động ăn khớp với nhau, trình mô phỏng có thể sử dụng trình điều khiển ảo hoá để chạy mã trực tiếp trên bộ xử lý máy tính lưu trữ. Điểm cải tiến này giúp tăng đáng kể cả tốc độ và hiệu suất của trình mô phỏng. Trình điều khiển ảo hoá phù hợp nhất với bạn còn phụ thuộc vào hệ điều hành và cấu hình của máy tính của bạn. Để biết thêm thông tin, hãy xem một trong các phần sau: Kiểm tra xem đã cài đặt trình điều khiển ảo hoá chưaBạn có thể sử dụng tuỳ chọn dòng lệnh janedoe:~/Android$ ./Sdk/emulator/emulator -accel-check accel: 0 KVM (version 12) is installed and usable. 2 của trình mô phỏng để kiểm tra xem máy tính hiện đã cài đặt trình điều khiển ảo hoá hay chưa. Các ví dụ sau đây minh hoạ cách sử dụng tuỳ chọn janedoe:~/Android$ ./Sdk/emulator/emulator -accel-check accel: 0 KVM (version 12) is installed and usable. 3 của trình mô phỏng. Trong mỗi ví dụ, janedoe:~/Android$ ./Sdk/emulator/emulator -accel-check accel: 0 KVM (version 12) is installed and usable. 4 là vị trí của SDK Android: Windows: c:\Users\janedoe\AppData\Local\Android> Sdk\emulator\emulator -accel-check accel: 0 AEHD (version 2.0) is installed and usable. accel Có nhiều lựa chọn trình điều khiển ảo hoá trên Windows. Vì vậy, những gì bạn thấy có thể khác với ví dụ ở đây. Ví dụ: bạn có thể thấy một trong các từ khoá sau trong thông báo: GVM (tên cũ của AEHD), WHPX (WHPX), HAXM của chúng tôi. macOS: janedoe-macbookpro:Android janedoe$ ./Sdk/emulator/emulator -accel-check accel: 0 Hypervisor.Framework OS X Version 13.2 accel Linux: janedoe:~/Android$ ./Sdk/emulator/emulator -accel-check accel: 0 KVM (version 12) is installed and usable. Định cấu hình tính năng tăng tốc máy ảo trên WindowsTính năng tăng tốc máy ảo trên Windows có thể sử dụng một trong ba trình điều khiển ảo hoá sau:
Chọn một trình điều khiển ảo hoá trên WindowsPhần này trình bày các tiêu chí để xác định xem nên sử dụng trình điều khiển ảo hoá nào. Quy trình định cấu hình tăng tốc máy ảo bằng từng trình điều khiển ảo hoá được mô tả trong các phần tiếp theo. Kể từ trình mô phỏng 33.x.x.x, HAXM không còn được dùng nữa vì Intel ngừng phát triển HAXM. Trình điều khiển ảo hoá của Trình mô phỏng Android (AEHD) thay thế Intel HAXM trên Bộ xử lý Intel. Tiêu chí (trình mô phỏng 33.x.x.x trở lên) Trình điều khiển ảo hoá Bạn không cần chạy Hyper-V cùng lúc với Trình mô phỏng Android. Sử dụng . Bạn cần chạy Hyper-V cùng lúc với Trình mô phỏng Android. Sử dụng . Đối với trình mô phỏng 32.x.x.x trở xuống, vui lòng tiếp tục tuân theo các tiêu chí cũ để xác định nên sử dụng trình điều khiển ảo hoá nào. Tiêu chí (trình mô phỏng 32.x.x.x trở xuống) Trình điều khiển ảo hoá Bạn có bộ xử lý Intel và không cần chạy Hyper-V cùng lúc với Trình mô phỏng Android. Sử dụng Intel . Bạn có bộ xử lý AMD và không cần chạy Hyper-V cùng lúc với Trình mô phỏng Android. Sử dụng . Bạn có bộ xử lý AMD hoặc Intel và cần chạy Hyper-V cùng lúc với Trình mô phỏng Android. Sử dụng . Định cấu hình tính năng tăng tốc máy ảo bằng trình điều khiển ảo hoá của Trình mô phỏng Android (AEHD) trên WindowsTrước khi cài đặt và sử dụng trình điều khiển ảo hoá của Trình mô phỏng Android, máy tính của bạn phải đáp ứng các yêu cầu sau:
Trên Bộ xử lý AMD, bạn có thể cài đặt trình điều khiển ảo hoá của Trình mô phỏng Android thông qua trong Android Studio 4.0 Canary 5 trở lên. Trên Bộ xử lý Intel, bạn có thể cài đặt trình điều khiển ảo hoá của Trình mô phỏng Android thông qua trong Android Studio Flamingo trở lên. Để cài đặt qua Trình quản lý SDK, hãy làm theo các bước sau:
Bạn cũng có thể tải xuống và cài đặt trình điều khiển ảo hoá của Trình mô phỏng Android từ GitHub. Sau khi giải nén gói trình điều khiển, hãy dùng đặc quyền của quản trị viên để chạy janedoe:~/Android$ ./Sdk/emulator/emulator -accel-check accel: 0 KVM (version 12) is installed and usable. 5 tại một dòng lệnh. Gỡ cài đặt trình điều khiển ảo hoá của Trình mô phỏng Android bằng các lệnh sau tại một dòng lệnh với các đặc quyền của quản trị viên: AEHD 2.1 trở lên
1 AEHD 2.0 trở xuống
2 Định cấu hình tính năng tăng tốc máy ảo bằng Intel HAXM trên WindowsTrước khi có thể cài đặt và sử dụng Intel HAXM, máy tính của bạn phải đáp ứng các yêu cầu sau:
Để cài đặt trình điều khiển Intel HAXM, hãy làm theo các bước sau:
Để biết thêm thông tin, hãy xem Hướng dẫn cài đặt Intel HAXM trên Windows. Để gỡ cài đặt Intel HAXM, hãy sử dụng trình cài đặt hoặc Windows Control Panel (Bảng điều khiển Windows). Trước khi gỡ cài đặt Intel HAXM, hãy tắt mọi trình mô phỏng x86 đang chạy. Định cấu hình tính năng tăng tốc máy ảo bằng Windows Hypervisor PlatformTrước khi có thể bật WHPX, máy tính của bạn phải đáp ứng các yêu cầu sau:
Để cài đặt WHPX trên Windows, hãy làm theo các bước sau:
Kiểm tra kỹ khi tắt Hyper-VBạn phải tắt Hyper-V để sử dụng trình điều khiển ảo hoá của Trình mô phỏng Android hoặc Intel HAXM. Tuy nhiên, việc bỏ chọn "Hyper-V" trong hộp thoại Windows Features không đảm bảo rằng Hyper-V đã được tắt hoàn toàn. Khá nhiều tính năng trong Windows 10 bật Hyper-V theo mặc định. Người dùng thậm chí có thể không biết rằng Hyper-V đã được kích hoạt khi bật một trong các tính năng như vậy. Trong đó có một số tính năng như:
Ngoài ra, Hệ thống con Windows dành cho Linux (Windows Subsystem for Linux) phiên bản 2 còn cần đến Nền tảng máy ảo (Virtual Machine Platform), nghĩa là ngầm ẩn yêu cầu Hyper-V. Danh sách này chưa đầy đủ; hãy gửi lỗi nếu bạn thấy có mục nào đó nên được đưa vào đây. Hãy kiểm tra kỹ để đảm bảo rằng các tính năng nêu trên cũng sẽ tắt khi bạn tắt Hyper-V. Hãy tham khảo tài liệu của Microsoft và các ví dụ dưới đây để tìm hiểu cách tắt từng tính năng. Một số nền tảng không vô hiệu hoá Hyper-V ngay lập tức khi bị tắt. Khi điều này xảy ra, không có lỗi nào được hệ điều hành Windows trả về và Hyper-V có vẻ như đã bị tắt trong hộp thoại Windows Features (Tính năng của Windows). Vui lòng báo cáo lỗi trên công cụ theo dõi lỗi của Microsoft khi tình huống này xảy ra. Định cấu hình tính năng tăng tốc máy ảo trên macOSTrên MacOS, Trình mô phỏng Android sử dụng Hypervisor.Framework tích hợp, yêu cầu MacOS v10.10 (Yosemite) trở lên. Định cấu hình tính năng tăng tốc máy ảo trên LinuxCác hệ thống dựa trên Linux hỗ trợ tăng tốc máy ảo thông qua gói phần mềm KVM.. Hãy làm theo hướng dẫn để cài đặt KVM trên hệ thống Linux và xác minh rằng bạn đã bật KVM. Đối với các hệ thống Ubuntu, hãy xem phần Cài đặt KVM trên Ubuntu. Yêu cầuĐể chạy KVM, bạn cần có quyền truy cập cụ thể của người dùng. Hãy đảm bảo rằng bạn có đủ các quyền được quy định trong hướng dẫn cài đặt KVM. Để sử dụng tính năng tăng tốc máy ảo trên Linux, máy tính của bạn cũng phải đáp ứng các yêu cầu sau:
Kiểm tra xem KVM hiện đã được cài đặt trên Linux chưaBạn có thể sử dụng tuỳ chọn dòng lệnh của trình mô phỏng để kiểm tra xem mình đã cài đặt KVM hay chưa. Ngoài ra, bạn có thể cài đặt gói janedoe:~/Android$ ./Sdk/emulator/emulator -accel-check accel: 0 KVM (version 12) is installed and usable. 8 chứa lệnh janedoe:~/Android$ ./Sdk/emulator/emulator -accel-check accel: 0 KVM (version 12) is installed and usable. 9. Ví dụ sau đây cho thấy cách sử dụng lệnh janedoe:~/Android$ ./Sdk/emulator/emulator -accel-check accel: 0 KVM (version 12) is installed and usable. 9.
Chạy lệnh janedoe:~/Android$ ./Sdk/emulator/emulator -accel-check accel: 0 KVM (version 12) is installed and usable. 9:
6 Kết quả đầu ra dự kiến:
7 Nếu gặp lỗi này thì tức là bạn vẫn có thể chạy máy ảo. Tuy nhiên, máy ảo của bạn chạy chậm hơn nếu không có tiện ích KVM. |