Khái niệm cơ bản về CPU: Lõi, Siêu phân luồng và Nhiều CPU là gì?

Tác giả sysadmin, T.Ba 18, 2023, 02:12:53 CHIỀU

« Chủ đề trước - Chủ đề tiếp »

0 Thành viên và 2 Khách đang xem chủ đề.

Khái niệm cơ bản về CPU: Lõi, Siêu phân luồng và Nhiều CPU là gì?


Một CPU hiện đại duy nhất thường có nhiều lõi. Mỗi lõi là bộ xử lý riêng của nó. Đa luồng đồng thời, được Intel gọi là Siêu phân luồng, chia mỗi lõi vật lý thành hai bộ xử lý logic. Mỗi bộ xử lý logic cho phép hệ điều hành của bạn chạy hai tác vụ riêng biệt. Ví dụ: CPU tám lõi xuất hiện dưới dạng một CPU có 8 lõi và 16 bộ xử lý logic.


Bộ xử lý trung tâm (CPU) trong máy tính của bạn thực hiện công việc tính toán — về cơ bản là chạy các chương trình. Nhưng các CPU hiện đại cung cấp các tính năng như nhiều lõi và siêu phân luồng. Một số PC thậm chí sử dụng nhiều CPU. Chúng tôi sẽ giải thích sự khác biệt và cách chúng hoạt động.

1. Siêu phân luồng và đa luồng đồng thời là gì?

Đa luồng đồng thời (được Intel gọi là Siêu phân luồng) cho phép một CPU duy nhất chạy nhiều tác vụ đồng thời thay vì tuần tự, giúp cải thiện hiệu suất trong hầu hết các trường hợp.

Siêu phân luồng là nỗ lực đầu tiên của Intel nhằm mang lại tính toán song song cho PC tiêu dùng vào năm 2002. Pentium 4 thời đó chỉ có một lõi CPU duy nhất, do đó, nó chỉ có thể thực hiện một tác vụ tại một thời điểm — ngay cả khi nó có thể chuyển đổi giữa các tác vụ đủ nhanh để có vẻ như đa nhiệm. Siêu phân luồng — được gọi là đa luồng đồng thời (SMT) trên AMD và các bộ xử lý không phải của Intel — đã cố gắng bù đắp cho điều đó.

Lưu ý: Nói một cách chính xác,  chỉ  bộ xử lý Intel mới có siêu phân luồng, tuy nhiên, thuật ngữ này đôi khi được sử dụng một cách thông tục để chỉ bất kỳ loại đa luồng đồng thời nào. 

Một lõi CPU vật lý duy nhất với siêu phân luồng hoặc đa luồng đồng thời xuất hiện dưới dạng hai CPU logic cho một hệ điều hành. CPU thì vẫn là CPU đơn nên hơi lận. Trong khi hệ điều hành nhìn thấy hai CPU cho mỗi lõi, thì phần cứng CPU thực tế chỉ có một bộ tài nguyên thực thi duy nhất cho mỗi lõi. CPU giả vờ rằng nó có nhiều lõi hơn thực tế và nó sử dụng logic riêng của mình để tăng tốc độ thực thi chương trình. Nói cách khác, hệ điều hành bị lừa khi nhìn thấy hai CPU cho mỗi lõi CPU thực tế.

Siêu phân luồng cho phép hai lõi CPU hợp lý chia sẻ tài nguyên thực thi vật lý. Điều này có thể tăng tốc phần nào — nếu một CPU ảo bị đình trệ và chờ đợi, thì CPU ảo kia có thể mượn tài nguyên thực thi của nó. Siêu phân luồng có thể tăng tốc hệ thống của bạn, nhưng nó không tốt bằng việc có các lõi bổ sung thực sự.


Rất may, siêu phân luồng giờ chỉ là một phần thưởng. Trong khi các bộ xử lý dành cho người tiêu dùng ban đầu có siêu phân luồng chỉ có một lõi duy nhất giả dạng là nhiều lõi, thì các CPU hiện đại giờ đây có cả nhiều lõi và siêu phân luồng hoặc công nghệ SMT. CPU lõi sáu với siêu phân luồng xuất hiện dưới dạng 12 lõi đối với hệ điều hành của bạn, trong khi CPU lõi tám với siêu phân luồng xuất hiện dưới dạng 16 lõi. Siêu phân luồng không thể thay thế cho các lõi bổ sung, nhưng CPU lõi kép có siêu phân luồng sẽ hoạt động tốt hơn CPU lõi kép không có siêu phân luồng.

2. Lõi CPU là gì?

Ban đầu, CPU chỉ có một lõi. Điều đó có nghĩa là CPU vật lý có một bộ xử lý trung tâm duy nhất trên đó. Để tăng hiệu suất, các nhà sản xuất đã bổ sung thêm các "lõi" hoặc bộ xử lý trung tâm. CPU lõi kép có hai đơn vị xử lý trung tâm, do đó, hệ điều hành có vẻ như là hai CPU. Ví dụ, một CPU có hai lõi có thể chạy hai quy trình khác nhau cùng một lúc. Điều này tăng tốc hệ thống của bạn vì máy tính của bạn có thể làm nhiều việc cùng một lúc.

Không giống như siêu phân luồng, không có mánh khóe nào ở đây — CPU lõi kép thực sự có hai đơn vị xử lý trung tâm trên chip CPU. CPU lõi tứ có bốn đơn vị xử lý trung tâm, CPU lõi tám có tám đơn vị xử lý trung tâm, v.v.

Điều này giúp cải thiện đáng kể hiệu năng trong khi vẫn giữ cho đơn vị CPU vật lý đủ nhỏ để vừa với một ổ cắm. Chỉ cần có một ổ cắm CPU duy nhất với một đơn vị CPU duy nhất được cắm vào nó — không phải bốn ổ cắm CPU khác nhau với bốn CPU khác nhau, mỗi ổ cắm cần nguồn điện, khả năng làm mát và phần cứng khác của riêng nó. Độ trễ ít hơn vì các lõi có thể giao tiếp nhanh hơn vì tất cả chúng đều nằm trên cùng một con chip.

Trình quản lý tác vụ Windows hiển thị điều này khá tốt. Ví dụ, ở đây, bạn có thể thấy rằng hệ thống này có một CPU (ổ cắm) thực tế và 8 lõi. Đa luồng đồng thời làm cho mỗi lõi trông giống như hai CPU đối với hệ điều hành, do đó, nó hiển thị 16 bộ xử lý logic.


3. Tất cả các cấu hình CPU đa lõi có giống nhau không?

Không, không phải tất cả các cấu hình CPU đa nhân đều giống nhau. Có hai triết lý thiết kế riêng biệt mà bạn sẽ gặp phải khi xem xét các CPU đa nhân.

Một loại cấu hình — và loại đã phổ biến trong PC tiêu dùng trong nhiều năm — sử dụng nhiều lõi giống hệt nhau. Trong các thiết lập này, nếu bạn có hệ thống tám nhân thì cả tám bộ xử lý đó đều là CPU hiệu năng cao và tất cả chúng đều được tối ưu hóa theo cùng một cách.

Cái còn lại sử dụng hỗn hợp các lõi khác nhau (đôi khi được gọi là kiến trúc lõi không đồng nhất). Thông thường, các thiết lập này sẽ sử dụng hai loại riêng biệt: lõi hiệu suất và lõi hiệu quả.

Sơ đồ đặt tên chính xác khác nhau một chút giữa các công ty và ứng dụng, nhưng ý tưởng cơ bản là giống nhau. Các lõi hiệu quả được dành riêng cho các tác vụ nền và yêu cầu thấp. Các lõi này tiêu thụ ít điện năng hơn. Lõi hiệu suất thì hoàn toàn ngược lại. Chúng tiêu thụ nhiều năng lượng hơn đáng kể nhưng lại cho hiệu suất tốt hơn nhiều trong các tác vụ đòi hỏi khắt khe, chẳng hạn như chơi game. Sự kết hợp này mang lại hiệu suất khi bạn cần, nhưng mức sử dụng năng lượng nền thấp hơn.

Thiết lập đa lõi không đồng nhất này ( được ARM gọi là big.LITTLE ) lần đầu tiên trở nên phổ biến với điện thoại di động và các thiết bị di động khác vì khả năng tiết kiệm điện mà chúng mang lại. Khi bạn cần điện thoại của mình hoạt động cả ngày, sẽ không có lý do gì để tiêu hao pin một cách không cần thiết bằng cách liên tục chạy lõi năng lượng cao. Intel cũng đã giới thiệu ý tưởng này trong các CPU máy tính để bàn phổ thông, bắt đầu với bộ xử lý Alder Lake.

4. Còn về nhiều CPU thì sao?

Hầu hết các máy tính chỉ có một CPU duy nhất. CPU đơn lẻ đó có thể có nhiều lõi hoặc công nghệ siêu phân luồng — nhưng nó vẫn chỉ là một đơn vị CPU vật lý được lắp vào một ổ cắm CPU duy nhất trên bo mạch chủ.

Trước khi CPU siêu phân luồng và đa lõi xuất hiện, mọi người đã cố gắng tăng thêm sức mạnh xử lý cho máy tính bằng cách bổ sung thêm CPU. Điều này đòi hỏi một bo mạch chủ có nhiều ổ cắm CPU. Bo mạch chủ cũng cần phần cứng bổ sung để kết nối các ổ cắm CPU đó với RAM và các tài nguyên khác. Có rất nhiều chi phí trong loại thiết lập này. Sẽ có thêm độ trễ nếu các CPU cần giao tiếp với nhau, các hệ thống có nhiều CPU tiêu thụ nhiều điện năng hơn và bo mạch chủ cần nhiều ổ cắm và phần cứng hơn.


Các hệ thống có nhiều CPU không phổ biến lắm trong số các PC của người dùng gia đình ngày nay. Ngay cả một máy tính để bàn chơi game mạnh mẽ với nhiều card đồ họa thường sẽ chỉ có một CPU duy nhất. Bạn sẽ tìm thấy nhiều hệ thống CPU trong số các siêu máy tính, máy chủ, một số máy trạm và các hệ thống cao cấp tương tự cần sức mạnh xử lý số nhiều nhất có thể.

Máy tính càng có nhiều CPU hoặc lõi thì càng có thể làm nhiều việc cùng một lúc, giúp cải thiện hiệu suất trên hầu hết các tác vụ. Hầu hết các máy tính hiện nay đều có CPU với nhiều lõi — tùy chọn hiệu quả nhất mà chúng tôi đã thảo luận. Bạn thậm chí sẽ tìm thấy CPU có nhiều lõi trên điện thoại thông minh và máy tính bảng hiện đại.

Tốc độ xung nhịp của CPU và IPC của nó (số lệnh trên mỗi chu kỳ) từng là đủ khi so sánh hiệu suất. Mọi thứ không còn đơn giản như vậy nữa. CPU cung cấp nhiều lõi và siêu phân luồng có thể hoạt động tốt hơn đáng kể so với CPU có cùng tốc độ không có siêu phân luồng. Và PC có nhiều CPU có thể có lợi thế lớn hơn. Tất cả các tính năng này được thiết kế để cho phép PC chạy nhiều quy trình cùng lúc dễ dàng hơn — tăng hiệu suất của bạn khi chạy đa nhiệm hoặc theo yêu cầu của các ứng dụng mạnh mẽ như bộ mã hóa video và trò chơi hiện đại.

Tất nhiên, số lõi cao hơn không phải là tất cả những gì quan trọng trong mọi tình huống. Các hệ điều hành hiện đại khá thông minh trong việc phân chia các nhiệm vụ của chúng giữa nhiều lõi, nhưng không phải tất cả các chương trình đều được tối ưu hóa tốt như vậy. Trong nhiều trường hợp (đặc biệt là chơi game), hiệu suất chủ yếu bị giới hạn bởi tốc độ tối đa của một lõi riêng lẻ hơn là tổng số lõi mà bạn có. Vì vậy, đừng vội vã mua một CPU Threadripper 64 lõi nghĩ rằng nó sẽ mang lại cho bạn một tỷ FPS trong Call of Duty — điều đó sẽ không xảy ra.