2 chủ đề 4 lõi có ý nghĩa gì trong cpu?


22

Tôi muốn biết 2 lõi 4 luồng có ý nghĩa gì về một cpu? Tôi đang nói về cpu này mà tôi có

http://ark.intel.com/products/47341/Intel-Core-i5-520M-Processor-3M-Cache-2_40-GHz

Ban đầu tôi nghĩ i5 có 4 nhân nhưng tôi nghĩ mình sai. Sự hiểu biết của tôi về một luồng là nó là một đoạn mã có thể chạy đồng thời (đồng thời) với các luồng khác. Vì vậy, 4 chủ đề có nghĩa là gì trong bảng thông số kỹ thuật đó? Có khác với các chủ đề lập trình. Số lượng luồng trong đó có khác với luồng chương trình mà chúng ta tạo không. Nếu nó chỉ có 2 lõi thì có đúng là bạn chỉ có thể chạy 2 chương trình song song mặc dù nó có 4 luồng không?


2
Khi bạn thực hiện một số nghiên cứu cơ bản về en.wikipedia.org/wiki/Hyper-threading, nó sẽ có ý nghĩa tốt hơn với bạn. Bộ xử lý bạn có thực sự có khả năng thực hiện 4 hướng dẫn cùng một lúc. Bạn nên hiểu rằng ngay cả một CPU lõi đơn cũng có khả năng chạy nhiều chương trình. Nó chỉ KHÔNG có khả năng làm 2 hướng dẫn cùng một lúc. Bạn không có vẻ rõ ràng làm thế nào trên một chương trình thực sự hoạt động.
Ramhound

@Ramhound Bạn có lẽ có nghĩa là 4 luồng hướng dẫn . Vì i5 là siêu khối, nó có thể thực hiện song song nhiều lệnh ngay cả từ một luồng lệnh. Đa luồng đồng thời cho phép chuyển đổi song song mức luồng thành song song mức hướng dẫn, tăng sử dụng tài nguyên thực thi.
Paul A. Clayton

Tôi đã giảm thiểu tuyên bố của mình số lượng hướng dẫn trên mỗi chu kỳ đồng hồ là sự khác biệt giữa Pentium D và Lõi thứ 4 i5 trừ kích thước của khuôn và tất nhiên các yêu cầu về năng lượng (được đơn giản hóa lại)
Ramhound


Câu trả lời này có thể cung cấp sự chỉnh sửa: superuser.com/questions/1198459/ trên
Jamie Hanrahan

Câu trả lời:


15

I5 của bạn có hai lõi, mỗi lõi có thể chạy hai luồng vì siêu phân luồng của intel , tạo ra 4 luồng, ngoài ra nó chuyển ở tốc độ cao giữa các tiến trình. Đây là một giải thích hay về đa luồng nếu bạn muốn biết nhiều hơn, nhưng về bản chất, CPU của bạn có thể chạy 4 tiến trình đồng thời và chuyển đổi ở tốc độ cao giữa các tiến trình.


> "ngoài ra nó chuyển ở tốc độ cao giữa các quy trình." Điều gì làm cho quá trình chuyển đổi b / w nhanh hơn?
Talespin_Kit

@Talespin_Kit Tôi nghĩ rằng @ Slowki đã đề cập đến cách CPU được sử dụng để làm việc trên nhiều quy trình, vì vậy nó không giới hạn ở 4 điều. Đó là 4 chủ đề của nhiều thứ.
Matt Sephton

3

Tôi không chắc về trình độ chuyên môn của bạn về Kiến trúc máy tính, tuy nhiên Core i5 mà bạn đã đề cập ở đây thực hiện một hình thức đa luồng được gọi là đa luồng đồng thời (SMT). Thương hiệu của Intel cho việc triển khai SMT của họ là siêu phân luồng.

Ngoài SMT còn có các hình thức đa luồng khác, đa luồng tạm thời là một. Ví dụ, đa luồng thời gian hạt mịn, trong đó bộ xử lý có thể chuyển đổi giữa các luồng khác nhau trong mỗi chu kỳ và do đó cho phép thực thi giả song song của một số chương trình. Tương tự như vậy, có thể có đa luồng thời gian chi tiết thô, trong đó bộ xử lý có thể chuyển đổi giữa các luồng khi nó chạm vào một hoạt động có độ trễ cao như truy cập bộ nhớ chính trên luồng hiện tại. Các điểm chuyển đổi chính xác có thể thay đổi dựa trên việc thực hiện và các yêu cầu, chẳng hạn như công bằng hoặc thời hạn thực tế.

SMT đi chệch khỏi triết lý chuyển đổi ngữ cảnh cho đa luồng ở chỗ nó thực sự có hai hoặc nhiều luồng thực thi trên một bộ xử lý cùng một lúc. Mặc dù việc triển khai có thể khác nhau, mục tiêu chính là khai thác các đơn vị chức năng trong bộ xử lý đang không hoạt động nếu chỉ có một luồng đang thực thi và cũng để khai thác tính chất siêu thay đổi vấn đề rộng của bộ xử lý. Bạn có thể tưởng tượng đa luồng theo thời gian khi cắt thời gian tài nguyên của bộ xử lý, trong khi đó, SMT là cắt tài nguyên không gian.

Một phân tích chi tiết có thể được tìm thấy trong bài báo năm 1995 của Tullsen:

http://dl.acm.org/cites.cfm?id=224449


0

"Nếu nó chỉ có 2 lõi thì có đúng không khi bạn chỉ có thể chạy 2 chương trình song song mặc dù nó có 4 luồng?" Nếu nó có 2 lõi thì phép tính được chia cho 2 = song song Tuy nhiên, nếu hệ thống của bạn có siêu phân luồng, nó có thể thực hiện phép tính 2 trong cùng một lõi, tại sao, cùng một lõi lại hiển thị cho HĐH lên 2 lõi ... lõi logic.


0

Lấy số lượng luồng và chia nó cho số lõi và điều đó sẽ cung cấp cho bạn số lượng luồng có thể được chạy đồng thời trên mỗi lõi của bộ xử lý.

Trong thời gian trước đó [trên các mẫu Intel trước đó] siêu phân luồng bị giới hạn ở 1 lõi chạy đồng thời 2 luồng HOẶC nhiều lõi chạy 1 tập lệnh (hay còn gọi là luồng) trên mỗi lõi (khá kém hiệu quả nếu bạn hỏi tôi). Nhưng với sức mạnh tính toán tốt hơn và các phát triển sau này như bộ xử lý i5 của bạn, bạn có thứ tôi muốn gọi, bộ xử lý siêu phân luồng đa lõi, có nhiều lõi chạy nhiều bộ lệnh (hay còn gọi là luồng) trên mỗi lõi.

Trong trường hợp của bạn, 1 lõi nhận được 2 luồng, vì vậy khi bạn thực hiện phép toán, bạn có tổng cộng = 4 tập lệnh (luồng).

Một ví dụ khác: # of Cores = 4, # of thread = 8 | 8/4 = 2, vì vậy mỗi lõi xử lý đồng thời 2 luồng (không chắc mô hình bộ xử lý nào thực hiện điều này nhưng tôi gần như chắc chắn rằng một tồn tại).

Hy vọng điều này sẽ giúp bạn của tôi! Chúc mừng máy tính!

Nguồn: Chứng nhận CNTT PEARSON CompTIA A + Examp Cram Chứng nhận. Hướng dẫn sử dụng

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.