CPU có thể thực hiện bao nhiêu lệnh mỗi giây?

Hiệu suất của CPU—"bộ não" của PC—có ảnh hưởng lớn đến tốc độ tải chương trình và mức độ chạy trơn tru của chúng. Tuy nhiên, có một số cách khác nhau để đo hiệu suất của bộ xử lý. Tốc độ đồng hồ (còn gọi là "tốc độ xung nhịp" hoặc "tần số") là một trong những thông số quan trọng nhất

Nếu bạn đang tự hỏi làm thế nào để kiểm tra tốc độ đồng hồ của mình, hãy nhấp vào menu Bắt đầu (hoặc nhấp vào phím Windows*) và nhập “Thông tin hệ thống. ” Tên kiểu máy và tốc độ xung nhịp của CPU của bạn sẽ được liệt kê trong phần “Bộ xử lý”

Tốc độ đồng hồ là gì?

Nói chung, tốc độ xung nhịp cao hơn có nghĩa là CPU nhanh hơn. Tuy nhiên, nhiều yếu tố khác phát huy tác dụng

CPU của bạn xử lý nhiều lệnh (các phép tính cấp thấp như số học) từ các chương trình khác nhau mỗi giây. Tốc độ xung nhịp đo số chu kỳ mà CPU của bạn thực hiện mỗi giây, được đo bằng GHz (gigahertz)

“Chu kỳ” về mặt kỹ thuật là một xung được đồng bộ hóa bởi một bộ tạo dao động bên trong, nhưng với mục đích của chúng tôi, chúng là một đơn vị cơ bản giúp hiểu được tốc độ của CPU. Trong mỗi chu kỳ, hàng tỷ bóng bán dẫn trong bộ xử lý mở và đóng

Tần suất là nhiều hoạt động hơn trong một khoảng thời gian nhất định, như được trình bày ở trên

CPU có xung nhịp 3. 2 GHz thực thi 3. 2 tỷ chu kỳ mỗi giây. (Các CPU cũ hơn có tốc độ được đo bằng megahertz hoặc hàng triệu chu kỳ mỗi giây. )

Đôi khi, nhiều hướng dẫn được hoàn thành trong một chu kỳ đồng hồ; . Do các thiết kế CPU khác nhau xử lý các lệnh khác nhau, tốt nhất nên so sánh tốc độ xung nhịp trong cùng một nhãn hiệu và thế hệ CPU

Ví dụ: một CPU có tốc độ xung nhịp cao hơn từ 5 năm trước có thể bị CPU mới có tốc độ xung nhịp thấp hơn vượt trội, vì kiến ​​trúc mới hơn xử lý các lệnh hiệu quả hơn. Bộ xử lý Intel® sê-ri X có thể hoạt động tốt hơn bộ xử lý sê-ri K có tốc độ xung nhịp cao hơn vì bộ xử lý này phân chia các tác vụ giữa nhiều lõi hơn và có bộ nhớ đệm CPU lớn hơn. Nhưng trong cùng một thế hệ CPU, bộ xử lý có tốc độ xung nhịp cao hơn thường sẽ hoạt động tốt hơn bộ xử lý có tốc độ xung nhịp thấp hơn trong nhiều ứng dụng. Đây là lý do tại sao điều quan trọng là phải so sánh các bộ xử lý từ cùng một thương hiệu và thế hệ

Đầu tiên, như câu trả lời của Turbo J đã chỉ ra, phép đo là 113.093 Dhrystone MIPS không phải MIPS bản địa

Vi kiến ​​trúc Ivy Bridge của i7 3630QM chỉ có thể thực hiện 4 µop hợp nhất mỗi chu kỳ, mặc dù nó có thể bắt đầu thực thi 6 µop mỗi chu kỳ. (Số lượng µop được hợp nhất trong một vết mã gần bằng với số lượng lệnh; một số lệnh phức tạp được giải mã thành nhiều µop không được hợp nhất và một số cặp lệnh có thể được hợp nhất thành một µop duy nhất, e. g. , so sánh ngay sau đó là bước nhảy có điều kiện. )

Hai trong số những suy đoán của bạn về cách nhiều lệnh có thể được thực thi trong một chu kỳ là khá hợp lệ và đã được sử dụng trong các bộ xử lý thực tế. Suy đoán đầu tiên của bạn, rằng đồng hồ bên trong nhanh hơn được sử dụng, đã được sử dụng trong ALU "quả cầu lửa" ban đầu của Pentium 4. Các ALU này có tốc độ gấp đôi tần số của phần còn lại của lõi, vốn đã tương đối cao

(Điều này được thực hiện bằng cách sử dụng ALU so le trong đó nửa dưới của phép bổ sung được thực hiện trong một chu kỳ, cho phép hoạt động phụ thuộc sử dụng nửa dưới của kết quả trong chu kỳ tiếp theo. Đối với các hoạt động như thêm, xor hoặc dịch chuyển trái chỉ cần nửa dưới của toán hạng để tạo ra toàn bộ nửa dưới của kết quả, như vậy đáng kinh ngạc—còn được gọi là đường ống theo chiều rộng—cho phép độ trễ của kết quả chu kỳ cũng như thông lượng của chu kỳ đơn. )

Một kỹ thuật hơi liên quan, ALU xếp tầng, đã được sử dụng bởi HyperSPARC. HyperSPARC đưa kết quả từ hai ALU vào ALU thứ ba. Điều này cho phép hai hoạt động độc lập và phụ thuộc thứ ba được thực hiện trong một chu kỳ

Suy đoán của bạn rằng "có nhiều đường ống đồng thời trên mỗi lõi" là một kỹ thuật khác đã được sử dụng. Kiểu thiết kế này được gọi là siêu vô hướng và cho đến nay là phương tiện phổ biến nhất để tăng số lượng hoạt động được thực hiện trong một chu kỳ.

Ngoài ra còn có một số tỷ lệ cược khác và kết thúc thực hiện lệnh có thể đáng chú ý. Một số hoạt động có thể được thực hiện hiệu quả hơn bên ngoài các đơn vị thực thi thông thường. Kỹ thuật loại bỏ di chuyển khai thác việc sử dụng đổi tên thanh ghi trong bộ xử lý không theo thứ tự để thực hiện các thao tác di chuyển trong khi đổi tên thanh ghi; . Điều này không chỉ làm tăng độ rộng thực thi một cách hiệu quả mà còn loại bỏ sự phụ thuộc. Kỹ thuật này đã được sử dụng sớm với x87 dựa trên ngăn xếp, nhưng hiện được sử dụng rộng rãi trong bộ xử lý x86 hiệu suất cao của Intel. (Việc sử dụng các hướng dẫn hủy diệt, hai toán hạng trong x86 làm cho việc loại bỏ di chuyển trở nên hữu ích hơn so với trong RISC thông thường. )

Một kỹ thuật tương tự như loại bỏ di chuyển là xử lý các hướng dẫn về 0 của thanh ghi trong khi đổi tên. Bằng cách cung cấp tên thanh ghi cung cấp giá trị 0, lệnh xóa thanh ghi (như xor hoặc phép trừ với cả hai toán hạng là cùng một thanh ghi) có thể chỉ cần chèn tên đó vào bảng đổi tên (RAT)

Một kỹ thuật khác được sử dụng bởi một số bộ xử lý x86 giúp giảm chi phí hoạt động đẩy và bật. Thông thường, một lệnh sử dụng con trỏ ngăn xếp sẽ phải đợi một chu kỳ đầy đủ cho lần đẩy hoặc bật trước đó để cập nhật giá trị cho con trỏ ngăn xếp. Bằng cách nhận ra rằng thao tác đẩy và bật chỉ cộng hoặc trừ một giá trị nhỏ cho con trỏ ngăn xếp, người ta có thể tính toán kết quả của nhiều phép cộng/trừ song song. Độ trễ chính cho phép cộng là lan truyền mang, nhưng với các giá trị nhỏ, các bit quan trọng hơn của giá trị cơ sở—trong trường hợp này là con trỏ ngăn xếp—sẽ chỉ có tối đa một lần mang vào. Điều này cho phép tối ưu hóa tương tự như tối ưu hóa của bộ cộng carry-select được áp dụng cho nhiều lần bổ sung các giá trị nhỏ. Ngoài ra, do con trỏ ngăn xếp thường chỉ được cập nhật bởi các hằng số, nên những cập nhật này có thể được thực hiện sớm hơn trong đường ống riêng biệt với công cụ thực thi chính

Cũng có thể hợp nhất các hướng dẫn thành một thao tác phức tạp hơn. Mặc dù quy trình đảo ngược của việc chia nhỏ các lệnh thành nhiều thao tác đơn giản hơn là một kỹ thuật cũ, nhưng các hướng dẫn hợp nhất (mà Intel gọi là hợp nhất macro-op) có thể cho phép triển khai hỗ trợ các thao tác phức tạp hơn so với các thao tác được đưa ra trong tập lệnh

Về mặt lý thuyết, các kỹ thuật khác đã được đề xuất. Các hằng số nhỏ khác 0 có thể được hỗ trợ trong RAT và một số thao tác đơn giản sử dụng hoặc tạo ra các giá trị nhỏ như vậy một cách đáng tin cậy có thể được xử lý sớm. ("Nội tuyến thanh ghi vật lý", Mikko H. Lipasti và cộng sự. , 2004, đã đề xuất sử dụng RAT như một phương tiện để giảm số lượng đăng ký, nhưng ý tưởng này có thể được mở rộng để hỗ trợ tải các lệnh tức thời nhỏ và các thao tác đơn giản trên các số lượng nhỏ. )

Đối với bộ đệm theo dõi (lưu trữ các chuỗi hướng dẫn theo các giả định cụ thể của luồng điều khiển), có thể có cơ hội hợp nhất các hoạt động được phân tách bằng các nhánh và loại bỏ các hoạt động tạo ra kết quả không sử dụng trong theo dõi. Bộ nhớ đệm của các tối ưu hóa trong bộ đệm theo dõi cũng có thể khuyến khích thực hiện các tối ưu hóa, chẳng hạn như hợp nhất lệnh, điều này có thể không đáng giá nếu chúng phải được thực hiện mỗi lần tìm nạp luồng lệnh.

Dự đoán giá trị có thể được sử dụng để tăng số lượng hoạt động có thể được thực hiện song song bằng cách loại bỏ các phụ thuộc. Công cụ dự đoán giá trị dựa trên bước tiến tương tự như tối ưu hóa pop/push của công cụ ngăn xếp chuyên dụng đã đề cập trước đó. Nó có thể tính toán nhiều phần bổ sung chủ yếu song song, loại bỏ việc tuần tự hóa. Ý tưởng chung về dự đoán giá trị là với một giá trị dự đoán, các hoạt động phụ thuộc có thể tiến hành không chậm trễ. (Dự đoán hướng nhánh và mục tiêu thực sự chỉ là một dạng dự đoán giá trị rất hạn chế, cho phép tìm nạp các hướng dẫn sau phụ thuộc vào "giá trị" của nhánh — được thực hiện hay không — và địa chỉ lệnh tiếp theo, một giá trị khác. )

CPU có thể xử lý bao nhiêu lệnh mỗi giây?

tốc độ khoảng 3GHz, nghĩa là CPU có thể thực hiện ba nghìn triệu lệnh mỗi giây.

Có bao nhiêu lệnh được CPU thực hiện tại bất kỳ thời điểm nào và trong một giây?

CPU có thể thực thi hàng triệu lệnh mỗi giây , nhưng mỗi lần nó chỉ có thể thực hiện một lệnh.

CPU 1GHz có thể thực hiện bao nhiêu lệnh mỗi giây?

Một máy tính chạy ở tốc độ 1GHz có thể thực hiện một nghìn triệu lệnh mỗi giây. Đồng hồ trên máy tính để bàn hiện đại chạy cực kỳ nhanh, thường là ba nghìn triệu lần một giây (3 GHz).

Máy tính có thể thực hiện bao nhiêu nhiệm vụ trong một giây?

Máy tính hoạt động với tốc độ và độ chính xác cao hơn nhiều so với con người khi thực hiện các phép tính toán học. Máy tính có thể xử lý hàng triệu (1.000.000) lệnh mỗi giây. Thời gian mà máy tính dành cho các hoạt động của chúng là micro giây và nano giây.