Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum

Re: Operationsgeschwindigkeit und ähnliches Kategorie: Verschiedenes (von DIE HARD - 28.11.2005 11:45)
Als Antwort auf Re: Operationsgeschwindigkeit und ähnliches von PeterS - 28.11.2005 0:18

> > Kurz:
> > Es würde mich einfach interessieren wie schnell die PRO im Detail wirklich ist,
> > Es wäre schön wenn du meine Neugier befriedigen könntest.
>
> Hi, ich hätte in dem Nachrichtenwust Deinen Beitrag beinahe übersehen.
>
> Wie ich schon geschrieben habe, sind die schnellsten Bytecode Operationen in ca. 60-65 Taktzyklen
> abgearbeitet. Alles weitere hängt stark von der Anzahl der nötigen Bytecodes und der Komplexität der
> Bytecodes ab. Gerade FlieÃ?kommaoperationen sind auf einer 8Bit CPU nicht effizient. Wie ich in jetzt
> schon vielen Nachrichten geschrieben habe, benötigen Portausgaben oder Eingaben 5 Bytecodes, da
> dies ein Bibleotheksaufruf ist. Ich werde daraus einen spezialisierten Bytcode machen, so daÃ? eine
> Portausgabe nur noch einen Bytecode benötigt. Ich hoffe die Mühe lohnt sich auch für die Praxis, denn
> keiner konnte mir bisher sagen, wie schnell denn Portausgaben oder Porteingaben sein müssen. Oder
> geht es statt um eine Anwendung nur um schnelle Benchmarks?
>
> Dabei habe ich immer noch keine Ahnung wie ich einzelne Bytecodes wirklich messen will. Lass ich eine
> Integer Addition jetzt 10.000mal Durchlaufen, ist schon viel früher der Stack korrumpiert und der Interpreter
> stürzt ab. Eigentlich kann ich sauber nur messen, da� zwei Argumente auf den Stack geladen und dann
> addiert werden. Wie machst Du das auf der CC1?
>
> Gruss Peter

Hallo.....
Den Durchschnittswert habe ich einfach mit einem Durchlauf über die gängisten Instruktionen ermittelt
und die Anzahl, bei jedem Durchlauf addiert. So lange bis eben eine Sekunde verstrichen ist.
Die Detailwerte die hier veröffentlicht wurden, habe ich im Prinzip genauso wie du auch ermittelt.
Mit einer FOR TO NEXT und dazwischen die zu messende Instruction. Die Laufzeit der reinen FOR
TO NEXT habe ich dann natürlich abgezogen.

Das was im Ergebnis so dargestellt ist:
> > WORD*WORD                   - 70us
ist natürlich in echt so entstanden, also auch mit zwei Werten auf dem Stack:

for i=1 to 30000
a=b*c
next

ciao.......
 



    Antwort schreiben


Antworten:

Re: Operationsgeschwindigkeit und ähnliches (von PeterS - 28.11.2005 12:59)
    Re: Operationsgeschwindigkeit und ähnliches (von DIE HARD - 29.11.2005 14:41)
        Re: Operationsgeschwindigkeit und ähnliches (von Henrik - 29.11.2005 16:51)
            Re: Operationsgeschwindigkeit und ähnliches (von DIE HARD - 29.11.2005 18:20)
            Re: Naxhtrag (von Henrik - 29.11.2005 17:38)
                Re: Naxhtrag (von DIE HARD - 29.11.2005 18:47)
                    Re: Naxhtrag (von Dietmar - 30.11.2005 1:42)
                    Re: Nachtrag (von Henrik - 29.11.2005 19:08)
                       Re: Nachtrag (von DIE HARD - 29.11.2005 20:32)
                          Re: Nachtrag (von Henrik - 29.11.2005 20:44)