Làm thế nào để vi điều khiển đạt được hiệu suất> 1 MIPS / MHz?


19

Giống như cái này , có 1.49 DMIPS / MHz. Ngay cả với đường ống vẫn chỉ có 1 giai đoạn thực hiện trong mỗi chu kỳ phải không?


Thứ siêu cấp điển hình duy nhất trong phân khúc vi điều khiển này là MADD - nhân & thêm trong một chu kỳ. Mặc dù, nó không giúp được gì nhiều trong Drystone.
BarsMonster

DSP là bộ vi điều khiển và chúng có thể có các phần cứng thực hiện chuyển đổi Fourier, nhân mảng, v.v. Chúng có tính không? Liệu phép đo này áp dụng ở đây? Ngay cả các DPS rất cũ cũng có thể thực hiện 8 phép nhân trên 16 thanh ghi khác nhau trong một lệnh.
vsz

5
Có những lời nói dối, lời nói dối chết tiệt và điểm chuẩn ...

Câu trả lời:


18

DMIPS và MIPS không giống nhau. DMIPS là viết tắt của "Dhstallone MIPS" và đó là một tiêu chuẩn để so sánh hiệu suất của các bộ vi điều khiển / bộ vi xử lý khác nhau trên các bộ hướng dẫn khác nhau. Tiêu chuẩn không còn quá mới nữa (*), do đó, bộ xử lý tham chiếu có thể làm gì ở 1 DMIPS / MHz trong 1 giây có thể mất bộ điều khiển nâng cao hơn 670 ms ở cùng tốc độ xung nhịp, chỉ vì nó sẽ thực hiện một số hành động trong 1 lệnh trong khi đó bộ điều khiển khác có thể cần 2 lệnh hoặc một lệnh yêu cầu nhiều chu kỳ máy hơn.

Chẳng hạn, kiến ​​trúc 16 bit, thường sẽ có hiệu suất Dhstallone tốt hơn kiến ​​trúc 8 bit và 32 bit, giống như kiến ​​trúc mà bạn đang đề cập, thậm chí nhiều hơn.


(*) m.Alin đề cập đến điểm chuẩn CoreMark gần đây hơn . Lưu ý rằng điều này được viết bằng C, do đó, thực tế bạn cũng bao gồm hiệu suất của trình biên dịch trong kết quả (giống như Dhstallone, BTW).


Nhưng kết quả Dhstallone cũng phụ thuộc vào trình biên dịch (nó cũng được viết bằng C), phải không? Từ Wikipedia: Các phần chính của Dhstallone dễ bị ảnh hưởng bởi khả năng của nhà soạn nhạc để tối ưu hóa công việc; do đó, nó là điểm chuẩn của trình biên dịch hơn là điểm chuẩn phần cứng
m.Alin

1
@ m.Alin - Chắc chắn, tôi không muốn đề xuất khác. Tôi sẽ làm rõ câu trả lời của tôi. Cảm ơn vì bạn đã phản hồi.
stevenvh

10

DMIPS là một phép đo tương đối chứ không phải là tuyệt đối. Trái ngược với MIPS, nó thực sự đo lường mức độ nhanh chóng của uC có thể làm điều gì đó hữu ích thay vì chỉ thực hiện nhanh như thế nào.

Giống như bất kỳ điểm chuẩn nào, nó cũng có những hạn chế, nhưng một cách đơn giản là xem nó có thể hoàn thành mã điểm chuẩn nhanh như thế nào so với VAX 11/780 (máy 1 MIPS)
Vì vậy, ví dụ nếu uC của bạn hoàn thành điểm chuẩn nhanh hơn 100 lần so với VAX 11/780, bạn có máy 100DMIPS. Nếu nó chạy ở tốc độ 100 MHz, thì nó được đánh giá ở mức 1 DMIPS / MHz.

Lưu ý rằng DMIPS được quảng cáo thường không thể đạt được trong sử dụng bình thường, đặc biệt là trên các uC lớn với tốc độ flash, tìm nạp trước, thời gian chờ / bỏ lỡ, v.v ... Dưới đây là một cuộc thảo luận tốt về hiệu suất PIC32 DMIPS. Liên kết này có một số mã Dhstallone cho vi điều khiển.


Liên kết wikipedia của bạn nói rằng tiêu chuẩn Drystone đã 28 tuổi. Bạn có biết nếu có nhiều công cụ đo lường hiệu suất cập nhật hơn không? Cảm ơn.
Federico Russo

3
@FedericoRusso CoreMark
m.Alin

@FedericoRusso: Điều về đo lường hiệu suất là nó mang tính so sánh. Nếu bạn thay đổi phương pháp so sánh của mình, tất cả các kết quả hiện tại sẽ vô dụng. Do đó tuổi thọ của Dhstallone.
Clifford
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.