Sorry for the necro post, but I actually tried this fmac implementation in my raytracer (640x480, shadows, reflections, so quite a lot of float ops) and compared it to simply using x*y + z.
x*y + z 68178108 ticks
fmac: 70670368 ticks
So Ph3nom, I advise you don't use this piece of inline assembly.
OpenGL - New Build in the works
- bogglez
- Moderator
- Posts: 578
- https://www.artistsworkshop.eu/meble-kuchenne-na-wymiar-warszawa-gdzie-zamowic/
- Joined: Sun Apr 20, 2014 9:45 am
- Has thanked: 0
- Been thanked: 0
Re: OpenGL - New Build in the works
Wiki & tutorials: http://dcemulation.org/?title=Development
Wiki feedback: viewtopic.php?f=29&t=103940
My libgl playground (not for production): https://bitbucket.org/bogglez/libgl15
My lxdream fork (with small fixes): https://bitbucket.org/bogglez/lxdream
Wiki feedback: viewtopic.php?f=29&t=103940
My libgl playground (not for production): https://bitbucket.org/bogglez/libgl15
My lxdream fork (with small fixes): https://bitbucket.org/bogglez/lxdream
- PH3NOM
- DC Developer
- Posts: 576
- Joined: Fri Jun 18, 2010 9:29 pm
- Has thanked: 0
- Been thanked: 5 times
Re: OpenGL - New Build in the works
Lol, back when I was young again
The final version of that code, my clipping routine used in KGL, does not use fmac
The problem with using FMAC is the way that operation uses the registers, it really only makes efficient use when you already have one of the multiplicative operands in FV0.
Otherwise, you are better off using normal math operations.
The final version of that code, my clipping routine used in KGL, does not use fmac
The problem with using FMAC is the way that operation uses the registers, it really only makes efficient use when you already have one of the multiplicative operands in FV0.
Otherwise, you are better off using normal math operations.