Nhờ khả năng kết hợp linh hoạt như vậy mà chip di động của có khả năng tiết kiệm điện cao hơn hoặc hiệu năng cao hơn tùy theo mục đích bán máy của hãng. Bạn có thể tưởng tượng iPhone giờ không còn 4 nhân nữa mà sẽ thành 5 nhân: 2 nhân mạnh, 2 nhân vừa vừa và 1 nhân tiết kiệm điện, hay Galaxy S9 sẽ có tới 11 nhân chẳng hạn với 7 nhân mạnh và 4 nhân tiết kiệm điện. Nghe khá hấp dẫn đúng không nào?
DynamIQ có gì hay?
Về cơ bản, DynamIQ là một cách mới để kết hợp các nhân xử lý dành cho CPU dùng kiến trúc ARM. Ở những con chip trước đây, các hãng làm chip thường sử dụng công nghệ big.LITTLE để kết hợp các nhân lại và chia thành nhiều cụm nhỏ. Thường thấy nhất là 2 cụm, một cụm dùng nhân mạnh và cụm còn lại xài nhân yếu hơn nhưng bù lại tiết kiệm điện hơn. Ví dụ, 4x Cortex-A73 + 4x Cortex-A53. Cũng có hãng xài chỉ 2x Cortex-A73 + 4x Cortex-A53 vì họ muốn giảm giá thành và nhắm tới những thiết bị thuộc phân khúc giá rẻ. big.LITTLE hỗ trợ tối đa 4 nhân mỗi cụm, và trong nội bộ mỗi cụm buộc phải dùng chung 1 loại nhân.
DynamIQ thay đổi hoàn toàn phương pháp kết hợp các nhân xử lý, trước hết là cho phép tối đa tới 8 nhân mỗi cụm. Việc tăng số nhân mỗi cụm lên sẽ giúp ra đời các con chip với nhiều nhân hơn nữa, thứ rất cần thiết để xử lý các tác vụ machine learning và trí tuệ nhân tạo nói chung. Ngày nay điện thoại tích hợp AI không thiếu, Apple thậm chí còn đang được đồn là sẽ phát triển chip AI riêng nên việc ARM đón đầu xu thế là chuyện hoàn toàn có thể hiểu được.
Điểm khác biệt thứ hai đó là DynamIQ cho phép kết hợp các cụm nhân một cách vô cùng linh hoạt. Trước đây big.LITTLE không cho phép dùng cấu hình 1 nhân lẻ kết hợp với nhiều nhân khác. Nếu bạn chọn làm chip 2 cụm, bạn phải làm theo dạng 2 + 2, 2 + 4, hoặc 4 + 4. Còn với DynamIQ, bạn có thể bố trí chỉ 1 nhân mạnh mà thôi, 3 nhân còn lại toàn là nhân tiết kiệm điện cũng được, hoặc 2 nhân mạnh 2 nhân yếu như cũ cũng chẳng sao. Tức là bạn có thể biến thiết kế nhân đa cụm 1 + 3, 1 + 2, 3 + 4 hay 1 + 8 thành hiện thực, hoặc chỉ chơi 1 cụm duy nhất bao gồm 1 chip mạnh và 2 chip yếu cũng được luôn.
Việc cho phép chạy cụm 1 nhân là bổ sung rất đáng hoan nghênh vì nó sẽ giúp cân bằng chi phí, năng lượng và hiệu năng cho những thiết bị nhúng như TV, tủ lạnh, máy giặt, lò vi sóng... Bình thường những thiết bị này chủ yếu chạy ở dạng rỗi nên chỉ cần 2 nhân tiết kiệm điện là dư sức, chỉ trong một số ít trường hợp bắt đầu vận hành tích cực thì nó mới cần nhiều sức mạnh và chỉ 1 nhân mạnh đã đủ đảm đương. Nếu vẫn giữ big.LITTLE truyền thống bạn sẽ cần tới 2 nhân mạnh, một sự hao phí không đáng có về cả tiền bạc và hiệu quả sử dụng.
Điểm khác biệt thứ ba: DynamIQ cho phép mỗi nhân chạy ở xung nhịp độc lập, không bị buộc phải đi theo cụm như cách cũ. Trước đây 1 cụm 4 nhân Cortex-A53 phải chạy cùng xung 2,2GHz, còn bây giờ trong 1 cụm có thể có 1 nhân chạy 1GHz, 2 nhân chạy 2GHz, 1 nhân còn lại chạy 2,5GHz. Đây cũng là một cách rất hay tối ưu khả năng xử lý cũng như hiệu quả sử dụng điện cho chip, nhưng bù lại chi phí triển khai sẽ tăng lên do cần kiểm soát xung chặt hơn, chi tiết hơn.
So sánh hiệu năng và diện tích chip với các cấu hình dành cho điện thoại tầm trung. Bạn có thể thấy việc xài 1 nhân A75 (mạnh) và 7 nhân A55 (tiết kiệm điện) mang tới hiệu năng cao hơn trong khi chip vẫn nhỏ hơn so với việc dùng 4 nhân A73 + 4 nhân A53 theo cách cũ
Nói tới đây cần phải làm rõ với bạn 1 điều: DynamIQ không phải là công nghệ thay thế cho big.LITTLE, nó giống một công nghệ bổ sung và mở rộng cho cái sẵn có. DynamIQ vẫn dùng lại cách giao tiếp giữa các nhân với nhau, nó cũng dùng lại hệ thống heterogeneous của big.LITTLE luôn (cho phép tất cả các nhân chạy và bật tắt độc lập), chỉ khác là cải thiện độ linh hoạt và hiệu quả trao đổi thông tin cũng như khả năng tiết kiệm điện. Nhà sản xuất chip vẫn có thể chọn không làm chip big.LITTLE và chỉ áp dụng thuần DynamIQ, lúc đó 2 nhân sẽ hoạt động cùng lúc và không có vụ bật tắt giữa cụm này với cụm kia.
Chỉ sử dụng được cho ARMv8.2
DynamIQ được thiết kế để dùng cho các nhân xử lý với tập lệnh ARMv8.2 và phải có phần cứng DynamIQ Share Unit, và hiện chỉ mới có 2 nhân dạng này được giới thiệu là Cortex-A75 và Cortex-A55. Những nhân sử dụng bản ARMv8 và 8.1 cũ chỉ như Cortex-A53, Cortex-A73, Cortex-A72... sẽ không thể gắn chung với chip DynamIQ được.
Bên cạnh đó, ARM cũng quy định rằng tất cả các nhân trong chip DynamIQ phải dùng cùng một tập lệnh cho tất cả các cụm nhân. Nói cách khác, mọi cụm nhân giờ phải là ARMv8.2 hay 8.3 hay 8.4 thì mới chơi chung với nhau được, bạn không thể gắn 1 cụm Cortex-A75 với 1 cụm Cortex-A53 được.
Tới đây phát sinh thêm một vấn đề: DynamIQ Share Unit, phần cứng cần thiết để chạy DynamIQ, chỉ hiện diện trên các nhân Cortex do chính ARM thiết kế mà thôi. Thành phần này chưa rõ có được public ra bên ngoài để các công ty khác được phép sử dụng hay không. Giả sử ARM nắm độc quyền thiết kế linh kiện này thì các công ty tự thiết kế nhân như Apple, Samsung, Qualcomm sẽ không thể dùng được DynamIQ. Lúc đó họ buộc phải đi theo hướng big.LITTLE truyền thống hoặc tự nghĩ ra một cơ chế tương tự như DynamIQ nhưng chỉ dành cho chip của riêng mình. Một giải pháp khác là đi mua nhân Cortex của ARM về để sử dụng nhưng khi đó sẽ khó có thể tạo ra con chip được tối ưu cho một dòng thiết bị cụ thể theo ý của hãng làm điện thoại.
Chi tiết của Share Unit chưa được công bố nên chúng ta thể nói thêm, nhưng nếu nó thành sự thật thì đây sẽ là một cuộc cạnh tranh lớn giữa nhân tùy biến với nhân Cortex. Và nếu nhà sản xuất thấy DynamIQ có lợi quá nhiều, biết đâu họ sẽ không còn tự làm nhân nữa mà chuyển sang dùng Cortex, khi đó ARM có thể hưởng phí sử dụng bản quyền nhiều hơn.
DynamIQ Share Unit
Nói kĩ hơn về DynamIQ Share Unit (DSU), nó là một bộ phận nằm trng chip với nhiệm vụ làm cấu nối giúp các nhân trong SoC nói chuyện được với nhau. DSU bao gồm một bộ xử lý dữ liệu bất đối xứng, một bộ lọc lưu lượng dữ liệu, cache L3, bộ quản lý nguồn và các giao tiếp với phần cứng khác bên ngoài (cổng USB, cảm biến, nút cứng...).
Đây là lần đầu tiên ARM cho phép các hãng làm chip được sử dụng cache L3, nó sẽ đóng vai trò như là một bộ nhớ chia sẽ chung giữa các nhân CPU với nhau. Điều này giúp đơn giản hóa khâu trao đổi, lưu trữ dữ liệu tạm thời để CPU xử lý và giảm độ trễ đi rất nhiều so với việc phải mò lại dữ liệu từ RAM hay bộ nhớ trong (vốn chậm hơn nhiều so với bộ nhớ cache). Các nhân hiệu năng thấp thường rất nhạy cảm với độ trễ nên cắt được bao nhiêu thì hay bất nhiêu, và đó cũng là lý do nhân Cortex-A55 mới có hiệu năng cao hơn hẳn 53 trong một số trường hợp.
Cache L3 của DSU có thể có dung lượng tối đa 4MB và phân thành tối đa 4 phân để các tiến trình sử dụng hiệu quả hơn. Chip cũng có thể tắt bớt một phần hoặc toàn bộ cache khi không sử dụng để kéo dài thời gian xài pin. Ví dụ, khi điện thoại của bạn tắt màn hình, cache cũng được tắt theo để giảm lượng điện tiêu thụ. Và khi cần xài chỉ 1 nhân, cache cũng chỉ cần 1 vùng để phục vụ cho nhân đó mà thôi.
ARM nói thêm rằng khi chip DynamIQ được cấu hình 1 cụm duy nhất (không quan trọng nhân bên trong là gì), nó có thể giúp cải thiện độ trễ vì các nhân không phải trao đổi dữ liệu qua khoảng cách xa, chúng cũng được phép xài chung bộ nhớ cache nên tìm kiếm và xử lý data nhanh hơn.
Và bây giờ khi cache L3 được chia sẻ chung là cache L2 sẽ dành riêng cho các nhân, trước đây chỉ có mỗi cache L1 là được xài riêng. ARM nói độ trễ truy cập cache L2 của nhân Cortex-A75 tốt hơn tới 50% so với Cortex-A73.
DSU còn làm một trò rất hay: bơm thẳng dữ liệu từ các thiết bị ngoại vi vào CPU, không cần đi qua RAM hay các cơ chế fetch truyền thống. Ví dụ, tín hiệu từ gia tốc kế hay chip Wi-Fi sẽ đi thẳng vào cho CPU xử lý, độ trễ khi đó sẽ thấp hơn, khi xem hình ảnh VR đỡ chóng mặt hơn. Ví dụ khác: dữ liệu của cảm biến mống mắt sẽ được đưa cho CPU xử ngay mà không cần thông qua RAM làm trung gian, nhờ vậy bạn sẽ unlock điện thoại nhanh và gọn hơn, giảm tối thiểu thời gian chờ đợi.
Lợi ích cuối cùng của DynamIQ đó là nó giúp quy trình tắt máy diễn ra nhanh hơn. Việc di chuyển dữ liệu và đảm bảo toàn vẹn dữ liệu cho cache giờ đã đưa xuống phần cứng, không còn phụ thuộc vào phần mềm nên quá trình dọn bộ nhớ sẽ lẹ hơn, và bạn sẽ được tắt máy trong thời gian ngắn hơn.
Kết
DynamIQ là một bước tiến rất quan trọng cho vi xử lý đa nhân di động. Nhờ những lợi ích mới về số nhân, về xung nhịp và cách chia sẻ bộ nhớ cache, chip có thể làm được nhiều việc hơn, nhanh hơn trong khi tiết kiệm điện hơn. Nhắc tới ARM chúng ta thường nghĩ tới di động, nhưng ARM còn thiết kế chip cho rất nhiều loại máy móc khác và DynamIQ sẽ mở đường cho chip ARM đi sâu hơn vào các mảng tự động hóa, chip cho xe hơi, xe tự hành và máy móc công nhiệp.
Theo dự kiến, những sản phẩm chip và thiết bị thương mại đầu tiên dùng DynamIQ sẽ được ra mắt vào cuối năm nay hoặc đầu năm 2018.
Nguồn: Tinhte.vn