Thêm một số lõi vào một bộ xử lý duy nhất mang lại những lợi ích đáng kể nhờ tính chất đa nhiệm của các hệ điều hành hiện đại. Tuy nhiên, đối với một số mục đích, có một giới hạn thực tế trên về số lượng lõi mang lại sự cải tiến so với chi phí thêm chúng.
Tiến bộ Công nghệ Đa lõi
Bộ vi xử lý nhiều lõi đã có trong máy tính cá nhân từ đầu những năm 2000. Các thiết kế đa lõi giải quyết vấn đề của các bộ vi xử lý đạt đến mức giới hạn vật lý về tốc độ xung nhịp và cách chúng có thể được làm mát hiệu quả mà vẫn duy trì độ chính xác. Bằng cách chuyển sang các lõi phụ trên một chip xử lý duy nhất, các nhà sản xuất đã tránh được các vấn đề về tốc độ đồng hồ bằng cách nhân một cách hiệu quả lượng dữ liệu mà CPU có thể xử lý.
Khi chúng được phát hành ban đầu, các nhà sản xuất chỉ cung cấp hai lõi trong một CPU duy nhất, nhưng bây giờ có các tùy chọn cho bốn, sáu và thậm chí 10 hoặc nhiều hơn. Ngoài việc thêm lõi, các công nghệ đa luồng đồng thời - chẳng hạn như Siêu phân luồng của Intel - có thể tăng gấp đôi số lõi ảo mà hệ điều hành nhìn thấy.
Quy trình và Chủ đề
Quy trình là một nhiệm vụ cụ thể, giống như một chương trình, chạy trên máy tính. Một quy trình bao gồm một hoặc nhiều chuỗi.
Một luồng chỉ đơn giản là một luồng dữ liệu từ một chương trình đi qua bộ xử lý trên máy tính. Mỗi ứng dụng tạo ra một hoặc nhiều luồng riêng tùy thuộc vào cách nó đang chạy. Nếu không có đa nhiệm, bộ xử lý lõi đơn chỉ có thể xử lý một luồng duy nhất tại một thời điểm, do đó hệ thống nhanh chóng chuyển đổi giữa các luồng để xử lý dữ liệu theo cách có vẻ đồng thời.
Lợi ích của việc có nhiều lõi là hệ thống có thể xử lý đồng thời nhiều luồng. Mỗi lõi có thể xử lý một luồng dữ liệu riêng biệt. Kiến trúc này làm tăng đáng kể hiệu suất của một hệ thống đang chạy các ứng dụng đồng thời. Vì các máy chủ có xu hướng chạy nhiều ứng dụng đồng thời tại một thời điểm nhất định, công nghệ này ban đầu được phát triển cho khách hàng doanh nghiệp - nhưng khi máy tính cá nhân ngày càng phức tạp và đa nhiệm tăng lên, chúng cũng được hưởng lợi từ việc có thêm lõi.
Tuy nhiên, mọi quy trình đều được điều chỉnh bởi một luồng chính chỉ có thể chiếm một lõi duy nhất. Do đó, tốc độ tương đối của một chương trình như trò chơi hoặc trình kết xuất video bị giới hạn ở khả năng của lõi mà luồng chính tiêu thụ. Luồng chính hoàn toàn có thể ủy thác các luồng phụ cho các lõi khác - nhưng một trò chơi không trở nên nhanh gấp đôi khi bạn tăng gấp đôi các lõi. Do đó, không có gì lạ khi một trò chơi tối đa hóa hoàn toàn một lõi (luồng chính) nhưng chỉ thấy việc sử dụng một phần các lõi khác cho luồng phụ. Không có vấn đề nhân đôi lõi thực tế là lõi chính là giới hạn tốc độ cho ứng dụng của bạn và các ứng dụng nhạy cảm với kiến trúc này sẽ hoạt động tốt hơn các ứng dụng không.
Sự phụ thuộc vào phần mềm
Mặc dù khái niệm về bộ vi xử lý đa lõi nghe có vẻ hấp dẫn, nhưng có một lưu ý lớn đối với công nghệ này. Để có được lợi ích thực sự của nhiều bộ xử lý, phần mềm chạy trên máy tính phải được viết để hỗ trợ đa luồng. Nếu không có phần mềm hỗ trợ tính năng như vậy, các luồng chủ yếu sẽ được chạy qua một lõi duy nhất, do đó làm giảm hiệu quả tổng thể của máy tính. Xét cho cùng, nếu nó chỉ có thể chạy trên một lõi đơn trong bộ xử lý lõi tứ, thì thực sự có thể nhanh hơn khi chạy trên bộ xử lý lõi kép với tốc độ xung nhịp cơ bản cao hơn.
Tất cả các hệ điều hành chính hiện nay đều hỗ trợ khả năng đa luồng. Nhưng đa luồng cũng phải được ghi vào phần mềm ứng dụng. Việc hỗ trợ đa luồng trong phần mềm tiêu dùng đã được cải thiện trong những năm qua nhưng đối với nhiều chương trình đơn giản, hỗ trợ đa luồng vẫn không được thực hiện do sự phức tạp của việc xây dựng phần mềm. Ví dụ: một chương trình thư hoặc trình duyệt web không có khả năng nhận thấy những lợi ích to lớn đối với đa luồng như một chương trình chỉnh sửa đồ họa hoặc video, nơi máy tính xử lý các phép tính phức tạp.
Một ví dụ điển hình để giải thích xu hướng này là nhìn vào một trò chơi máy tính điển hình. Hầu hết các trò chơi đều yêu cầu một số dạng công cụ kết xuất để hiển thị những gì đang xảy ra trong trò chơi. Ngoài ra, một số loại trí tuệ nhân tạo điều khiển các sự kiện và nhân vật trong trò chơi. Với lõi đơn, cả hai tác vụ đều thực thi bằng cách chuyển đổi giữa chúng. Cách tiếp cận này không hiệu quả. Nếu hệ thống có nhiều bộ xử lý, mỗi bộ xử lý hiển thị và AI có thể chạy trên một lõi riêng biệt - một tình huống lý tưởng cho bộ xử lý đa lõi.
Có phải 8 > 4 > 2 không?
Vượt ra ngoài hai lõi mang lại những lợi ích hỗn hợp, vì câu trả lời cho bất kỳ người mua máy tính cụ thể nào phụ thuộc vào phần mềm mà họ thường sử dụng. Ví dụ, nhiều trò chơi cổ điển vẫn cung cấp ít sự khác biệt về hiệu suất giữa hai và bốn lõi. Ngay cả các trò chơi hiện đại - một số trò chơi được cho là yêu cầu hoặc hỗ trợ tám lõi - có thể không hoạt động tốt hơn máy sáu lõi có tốc độ xung nhịp cơ bản cao hơn, do hiệu quả của luồng chính chi phối hiệu quả của hiệu suất đa luồng.
Mặt khác, một chương trình mã hóa video để chuyển mã video có thể sẽ thấy những lợi ích to lớn vì kết xuất khung hình riêng lẻ có thể được chuyển đến các lõi khác nhau và sau đó được phần mềm đối chiếu thành một luồng duy nhất. Do đó, có tám lõi sẽ thậm chí còn có lợi hơn so với việc có bốn lõi. Về bản chất, luồng chính không cần các tài nguyên tương đối phong phú; thay vào đó, nó có thể giải quyết công việc khó khăn cho các luồng con giúp tối đa hóa các lõi của bộ xử lý.
Tốc độ Đồng hồ
Nói chung, tốc độ xung nhịp cao hơn sẽ có nghĩa là bộ xử lý nhanh hơn. Tốc độ xung nhịp trở nên khó hiểu hơn khi bạn xem xét tốc độ so với nhiều lõi vì bộ xử lý xử lý nhiều luồng dữ liệu nhờ có thêm lõi nhưng mỗi lõi đó sẽ chạy ở tốc độ thấp hơn do các hạn chế về nhiệt.
Ví dụ: bộ xử lý lõi kép có thể hỗ trợ tốc độ xung nhịp cơ bản là 3,5 GHz cho mỗi bộ xử lý trong khi bộ xử lý lõi tứ chỉ có thể chạy ở tốc độ 3,0 GHz. Chỉ cần nhìn vào một lõi đơn trên mỗi lõi, bộ xử lý lõi kép nhanh hơn 14% so với lõi tứ. Do đó, nếu bạn có một chương trình chỉ chạy đơn luồng, bộ xử lý lõi kép thực sự hiệu quả hơn. Sau đó, một lần nữa, nếu phần mềm của bạn có thể sử dụng cả bốn bộ vi xử lý, thì bộ xử lý lõi tứ sẽ thực sự nhanh hơn bộ xử lý lõi kép đó khoảng 70%.
Kết luận
Đối với hầu hết các phần, có bộ xử lý số lõi cao hơn thường tốt hơn nếu phần mềm và các trường hợp sử dụng điển hình của bạn hỗ trợ nó. Đối với hầu hết các phần, bộ vi xử lý lõi kép hoặc lõi tứ sẽ là quá đủ sức mạnh cho một người dùng máy tính cơ bản. Phần lớn người tiêu dùng sẽ không nhận thấy lợi ích cụ thể nào từ việc vượt ra ngoài bốn lõi bộ xử lý vì rất ít phần mềm không chuyên dụng tận dụng được lợi thế của nó. Trường hợp sử dụng tốt nhất cho bộ xử lý số lõi cao liên quan đến các máy thực hiện các tác vụ phức tạp như chỉnh sửa video trên máy tính để bàn, một số hình thức chơi game cao cấp hoặc các chương trình khoa học và toán học phức tạp.
Kiểm tra suy nghĩ của chúng tôi về Tốc độ của một chiếc PC mà tôi cần? để hiểu rõ hơn về loại bộ xử lý nào phù hợp nhất với nhu cầu máy tính của bạn.