Forum archive
Rebuilding some parts of voxlap in ASM?
- Well, I maybe still have to learn really much(I already totally change my view and respect to the programming/programmers) but if I CAN say something...
I find that C and all it's versions(C++,C# and etc.) have too complex compiling to the machine code, and this, as I think makes rendering in voxlap much more HW-busy. So, I thought that things like rendering, memory and etc. would run much faster if rewritten in ASM. :-*
Kill me if I'm wrong. ;D
EDIT: now I found this line in the flyduct readme(another addicting and fast game by ken)
01/08/2008: Wrote ASM for rendering
does it mean that there is already a voxlap version with ASM?Edited by Dany at Re: Rebuilding some parts of voxlap in ASM?
As far as I know, the core rendering of Voxlap is already done in asm. Writing something in asm only has an advantage if you do a lot of calculations, but memory writes stay much the same speed, except if you do 64/128-bit writes with MMX/SSE.So, I thought that things like rendering, memory and etc. would run much faster if rewritten in ASM.
On older machines, converting C to hand-written assembler would always benefit speed. On modern machines, this is not always the case, because memory has gotten a lot slower per CPU clock cycle. So on a modern machine, you can do a few more non-memory instructions between each memory access, without penalty. A few extra instructions is usually the difference between C-compiled code and hand-written assembler. These days, I usually don't bother to write things in assembler unless I can take advantage of MMX/SSE/SSE2/etc.. in some way.Kill me if I'm wrong.
Thanks, but I'm not a murderer... flyduct readme .. 01/08/2008: Wrote ASM for rendering
Flyduct and Voxlap are separate projects. Voxlap has always used ASM. That milestone in the FLYDUCT readme indicates when I converted some blocks of C code to ASM.
does it mean that there is already a voxlap version with ASM?- Ok, I must read even more about computers, I am starting to think that I don't know about computers anything, this is getting me crazy! >:(