HI,
thanks to Marcin, who had shown me again how the stack works, the f/
routine works within amforth as word f/. You may see the speed up
(amforth 4.0, new f/ v1. in asm, @25Mhz):

> : test_mul_forth timer-start 30000 0  do _pi _ln2 f* drop drop
> loop
> oktimer-stop 30000 s>f f/ fs. ." sec per mul-forth operation" ;
ok
> : test_div_asm timer-start 30000 0  do _pi _ln2 f/ drop drop loop
oktimer-stop 30000 s>f f/ fs. ." sec per div-asm operation" ;
ok
> test_mul_forth
4.8192544E-3 sec per mul-forth operation ok
> test_div_asm
6.6060271E-5 sec per div-asm operation ok
> .s
ok
> _pi _ln2 f/ fs.
4.5323606  ok
> 

The next step is f* (already waiting for debugging). Marcin did some
improvements on the above asm f/ (e.g. he is not storing all regs
used, some optimisation and inlineing) so his version of the f/ coud
be faster by few usec. 
Pito.


------------------------------------------------------------------------------
Start uncovering the many advantages of virtual appliances
and start using them to simplify application deployment and
accelerate your shift to cloud computing.
http://p.sf.net/sfu/novell-sfdev2dev
_______________________________________________
Amforth-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/amforth-devel

Reply via email to