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
