From: Matthias T. <mt...@we...> - 2007-04-01 09:07:12
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi, I just run a stupid benchmark with the fib word from the blocks directory. 24 fib gives the biggest usable number (46368) on amforth. Running a loop with 100 iterations took roughly 3'30 on an atmega32 at 16MHz. The sparring partner I choose is gforth (0.6.2, comes with ubuntu) on my 2GHz P4 system. To balance the frequency difference, gforth had to run 125 times the 100 loop. That took around 1'30. What does it tell us? Well, nothing perhaps. Or that amforth executes 1 forth "instruction" where gforth has 2, scaled with cpu cycle clock. Matthias -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.3 (GNU/Linux) iD8DBQFGD3YzLo3irIddFw4RAibBAKDBc2whzaOQcV33T4GpkI/H0/PGiwCgoSrq HLmj7z4xtPYDCrQ9bl0Ps8Q= =RK8F -----END PGP SIGNATURE----- |
From: <joe...@t-...> - 2007-04-02 14:17:17
|
Hi Matthias, what is your proposal to generate a (1/100us) clock (for e.g. the output of a bit pattern ) in amforth? (as you wrote, the timer int. isn't usable for such speed) What speed can I expect when I use the word pause? Is there a guarantee how often the word is called per ms? Because the pulses should come in a certain time distance. Best regards joh -----Original Message----- > Date: Sun, 01 Apr 2007 11:06:59 +0200 > Subject: [Amforth-devel] benchmarks ;=) > From: Matthias Trute > To: Everything around amforth > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > Hi, > > I just run a stupid benchmark with the fib word from the blocks > directory. 24 fib gives the biggest usable number (46368) on amforth. > > Running a loop with 100 iterations took roughly 3'30 on an atmega32 at > 16MHz. The sparring partner I choose is gforth (0.6.2, comes with > ubuntu) on my 2GHz P4 system. To balance the frequency difference, > gforth had to run 125 times the 100 loop. That took around 1'30. > > What does it tell us? Well, nothing perhaps. Or that amforth executes > 1 forth "instruction" where gforth has 2, scaled with cpu cycle clock. > > Matthias > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.4.3 (GNU/Linux) > > iD8DBQFGD3YzLo3irIddFw4RAibBAKDBc2whzaOQcV33T4GpkI/H0/PGiwCgoSrq > HLmj7z4xtPYDCrQ9bl0Ps8Q= > =RK8F > -----END PGP SIGNATURE----- > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to > share your opinions on IT & business topics through brief surveys-and > earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > _______________________________________________ > Amforth-devel mailing list > Amf...@li... > https://lists.sourceforge.net/lists/listinfo/amforth-devel > > |
From: <ha...@hu...> - 2007-04-02 14:21:50
|
Joh, if you meant to write 1/100s (10 ms), using Timer0 will work just fine! I had no problems running it at higher speeds, too, with my interrupt handler written in Forth. -Hans 2007/4/2, joe...@t-... <joe...@t-...>: > Hi Matthias, > > what is your proposal to generate a (1/100us) clock (for e.g. the output > of a bit pattern ) in amforth? (as you wrote, the timer int. isn't > usable for such speed) > What speed can I expect when I use the word pause? Is there a guarantee > how often the word > is called per ms? Because the pulses should come in a certain time > distance. > > Best regards > joh > > > -----Original Message----- > > Date: Sun, 01 Apr 2007 11:06:59 +0200 > > Subject: [Amforth-devel] benchmarks ;=) > > From: Matthias Trute > > To: Everything around amforth > > > -----BEGIN PGP SIGNED MESSAGE----- > > Hash: SHA1 > > > > Hi, > > > > I just run a stupid benchmark with the fib word from the blocks > > directory. 24 fib gives the biggest usable number (46368) on amforth. > > > > Running a loop with 100 iterations took roughly 3'30 on an atmega32 at > > 16MHz. The sparring partner I choose is gforth (0.6.2, comes with > > ubuntu) on my 2GHz P4 system. To balance the frequency difference, > > gforth had to run 125 times the 100 loop. That took around 1'30. > > > > What does it tell us? Well, nothing perhaps. Or that amforth executes > > 1 forth "instruction" where gforth has 2, scaled with cpu cycle clock. > > > > Matthias > > -----BEGIN PGP SIGNATURE----- > > Version: GnuPG v1.4.3 (GNU/Linux) > > > > iD8DBQFGD3YzLo3irIddFw4RAibBAKDBc2whzaOQcV33T4GpkI/H0/PGiwCgoSrq > > HLmj7z4xtPYDCrQ9bl0Ps8Q= > > =RK8F > > -----END PGP SIGNATURE----- > > > > > ------------------------------------------------------------------------- > > Take Surveys. Earn Cash. Influence the Future of IT > > Join SourceForge.net's Techsay panel and you'll get the chance to > > share your opinions on IT & business topics through brief surveys-and > > earn cash > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > _______________________________________________ > > Amforth-devel mailing list > > Amf...@li... > > https://lists.sourceforge.net/lists/listinfo/amforth-devel > > > > > > > > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share your > opinions on IT & business topics through brief surveys-and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > _______________________________________________ > Amforth-devel mailing list > Amf...@li... > https://lists.sourceforge.net/lists/listinfo/amforth-devel > |
From: <joe...@t-...> - 2007-04-02 16:13:08
|
-----Original Message----- > Date: Mon, 02 Apr 2007 16:21:47 +0200 > Subject: Re: [Amforth-devel] benchmarks ;=) > From: "Hans Hübner" > To: "Everything around amforth" > Joh, > > if you meant to write 1/100s (10 ms), No, sorry I mean 1 pulse every 100 mikroseconds. > using Timer0 will work just > fine! I had no problems running it at higher speeds, too, with my > interrupt handler written in Forth. it is possible to have a look at this handler...? > > -Hans > > 2007/4/2, joe...@t-... : > > Hi Matthias, > > > > what is your proposal to generate a (1/100us) clock (for e.g. the > > output of a bit pattern ) in amforth? (as you wrote, the timer int. > > isn't usable for such speed) > > What speed can I expect when I use the word pause? Is there a > > guarantee how often the word > > is called per ms? Because the pulses should come in a certain time > > distance. > > > > Best regards > > joh > > > > > > -----Original Message----- > > > > > Date: Sun, 01 Apr 2007 11:06:59 +0200 > > > Subject: [Amforth-devel] benchmarks ;=) > > > From: Matthias Trute > > > To: Everything around amforth > > > > > -----BEGIN PGP SIGNED MESSAGE----- > > > Hash: SHA1 > > > > > > Hi, > > > > > > I just run a stupid benchmark with the fib word from the blocks > > > directory. 24 fib gives the biggest usable number (46368) on > > > amforth. > > > > > > Running a loop with 100 iterations took roughly 3'30 on an > > > atmega32 at 16MHz. The sparring partner I choose is gforth (0.6.2, > > > comes with ubuntu) on my 2GHz P4 system. To balance the frequency > > > difference, gforth had to run 125 times the 100 loop. That took > > > around 1'30. > > > > > > What does it tell us? Well, nothing perhaps. Or that amforth > > > executes 1 forth "instruction" where gforth has 2, scaled with cpu > > > cycle clock. > > > > > > Matthias > > > -----BEGIN PGP SIGNATURE----- > > > Version: GnuPG v1.4.3 (GNU/Linux) > > > > > > iD8DBQFGD3YzLo3irIddFw4RAibBAKDBc2whzaOQcV33T4GpkI/H0/PGiwCgoSrq > > > HLmj7z4xtPYDCrQ9bl0Ps8Q= > > > =RK8F > > > -----END PGP SIGNATURE----- > > > > > > > > > > > ------------------------------------------------------------------------- > > > > > Take Surveys. Earn Cash. Influence the Future of IT > > > Join SourceForge.net's Techsay panel and you'll get the chance to > > > share your opinions on IT & business topics through brief > > > surveys-and earn cash > > > > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > > _______________________________________________ > > > Amforth-devel mailing list > > > Amf...@li... > > > https://lists.sourceforge.net/lists/listinfo/amforth-devel > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > Take Surveys. Earn Cash. Influence the Future of IT > > Join SourceForge.net's Techsay panel and you'll get the chance to > > share your opinions on IT & business topics through brief > > surveys-and earn cash > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > _______________________________________________ > > Amforth-devel mailing list > > Amf...@li... > > https://lists.sourceforge.net/lists/listinfo/amforth-devel > > > > > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to > share your opinions on IT & business topics through brief surveys-and > earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > _______________________________________________ > Amforth-devel mailing list > Amf...@li... > https://lists.sourceforge.net/lists/listinfo/amforth-devel > > |
From: Matthias T. <mt...@we...> - 2007-04-02 16:35:27
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Joh, joe...@t-... schrieb: > what is your proposal to generate a (1/100us) clock (for e.g. the > output of a bit pattern ) in amforth? (as you wrote, the timer int. > isn't usable for such speed) I only wrote that the timer interrupt may cause strange effects, since I had/have problems with a 72KHz timer on an atmega8. But I did not re-do these tests for several month by now due to some hardware problems. Maybe the problem is solved en-passant... And as Hans wrote, I doubt, that amforth will _ever_ reach a clock cycle of 10ns (==100 MHz). You should consider the *very* new atmegas (paperware) with high-resolution timers. > What speed can I expect when I use the word pause? Is there a > guarantee how often the word is called per ms? How could this be done? The inner interpreter (NEXT) is called every few cpu cycles: an EXIT needs no (additional) time, an division may need several hundreds of cycles. An EMIT/KEY may need _very_ long time. amforth is not designed to generate a time-slice based hard real-time system for sub-millisecond requirement. > Because the pulses > should come in a certain time distance. You can use the timer/counter of the atmegas without genereating an interrupt. That gives the pulses very accurate and basically without amforth. Bye Matthias -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.3 (GNU/Linux) iD8DBQFGETCxLo3irIddFw4RAlU8AJ9Mzo82Cf1K97B6JE5PLxwihkn1OACcDI7P 9SUI+0GyCiSuu7QFO0numgE= =gAG3 -----END PGP SIGNATURE----- |
From: Matthias T. <mt...@we...> - 2007-04-02 16:35:53
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hans H=FCbner schrieb: > Joh, >=20 > if you meant to write 1/100s (10 ms), using Timer0 will work just > fine! I had no problems running it at higher speeds, too, with my > interrupt handler written in Forth. Which frequencies did you use? Matthias -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.3 (GNU/Linux) iD8DBQFGETDcLo3irIddFw4RAv9HAJwPPyFIBN44+re2DW1x9MEAMAwEbACgn2vo Ka7qyu4oLf5Wri8RqKJv2jY=3D =3D+wqr -----END PGP SIGNATURE----- |
From: <ha...@hu...> - 2007-04-03 09:43:50
|
2007/4/2, Matthias Trute <mt...@we...>: > Hans H=FCbner schrieb: > > Joh, > > > > if you meant to write 1/100s (10 ms), using Timer0 will work just > > fine! I had no problems running it at higher speeds, too, with my > > interrupt handler written in Forth. > > Which frequencies did you use? I used Timer0 with clock prescaling set to 256 and interrupting on overflow, on an ATMEGA16 at 16 Mhz. This results in interrupts at roughly 240 Hz. Looking the other way, it leaves 256 256 * AVR instructions per interrupt. -Hans |