Gibi bu bir 1.49 DMIPS / MHz yapar. Boru hattında bile döngü başına sadece 1 yürütme aşaması var değil mi?
Gibi bu bir 1.49 DMIPS / MHz yapar. Boru hattında bile döngü başına sadece 1 yürütme aşaması var değil mi?
Yanıtlar:
DMIPS ve MIPS aynı değildir. DMIPS, "Dhrystone MIPS" anlamına gelir ve farklı mikrodenetleyicilerin / mikroişlemcilerin performanslarını farklı komut setlerinde karşılaştırmak için bir standarttır. Standart artık çok yeni değil (*), bu nedenle referans işlemcinin 1 saniyede 1 DMIPS / MHz'de yapabilecekleri, aynı saat hızında daha gelişmiş bir kontrolör 670 ms sürebilir, çünkü sadece 1 talimatta bazı eylemler yapacak diğer denetleyicinin 2 talimata veya daha fazla makine çevrimi gerektiren talimata ihtiyacı olabilir.
Örneğin, 16 bitlik bir mimari, genellikle 8 bitlik bir mimariden daha iyi bir Dhrystone performansına ve bahsettiğiniz gibi daha fazla bir 32 bite sahip olacaktır.
(*) m.Alin, daha yeni CoreMark karşılaştırmasını ifade eder . Bunun C ile yazılmış olduğunu unutmayın, bu yüzden aslında derleyicinin sonuca performansını da eklersiniz (tıpkı Dhrystone, BTW gibi).
DMIPS mutlak olmaktan ziyade bağıl bir ölçümdür. MIPS'in aksine, aslında uC'nin talimatları ne kadar hızlı yürütmek yerine yararlı bir şey yapabileceğini ölçer.
Herhangi bir kıyaslama gibi sınırlamaları vardır, ancak basit bir bakış açısı, bir VAX 11/780'e (1 MIPS makinesi) kıyasla kıyaslama kodunu ne kadar hızlı tamamlayabileceğidir.
Örneğin, UC'niz kıyaslamayı 100 kat daha hızlı tamamlarsa VAX 11/780 yerine 100DMIPS makineniz var. 100MHz'de çalışıyorsa, 1 DMIPS / MHz olarak derecelendirilir.
Reklamı yapılan DMIPS'nin normal kullanımda, özellikle de flaş hızı, ön getirme, bekleme süreleri / eksikleri vb. Büyük UC'lerde genellikle elde edilemeyeceğini unutmayın. İşte PIC32 DMIPS performansı hakkında iyi bir tartışma. Bu bağlantının mikrodenetleyiciler için bazı Dhrystone kodu vardır.