Closed LegendaryGuard closed 1 year ago
Somehow your code changes look familiar to me, did you take these changes from Xreal? If so, it would be nice to mention this somewhere, anyways in Xreal this code works well.
Somehow your code changes look familiar to me, did you take these changes from Xreal? If so, it would be nice to mention this somewhere, anyways in Xreal this code works well.
Nope, the code was from Quake III Arena Kenny Edition, using the optimized ones, and I did some tweaks.
Ah, okay! Just for the record I think it was first used here: https://sourceforge.net/p/xreal/svn/427/ Maybe this will help you to find the fastest and most reliable approach, though maybe Quake III Arena Kenny Edition took it from Xreal and optimized it already as well.
Ah, okay! Just for the record I think it was first used here: https://sourceforge.net/p/xreal/svn/427/ Maybe this will help you to find the fastest and most reliable approach, though maybe Quake III Arena Kenny Edition took it from Xreal and optimized it already as well.
Ok, changed the based reference on the comment. XreaL is the original and the origin of this reference.
Sorry for the slightly off topic question: Do you know any procedure to test those math optimizations? Do you use any tools to test the 'optimization'? I also often try to use 'faster' math, but I don't really can see any improvement. Thanks!
This x87 code is not better than current C version output generated by modern compilers
This x87 code is not better than current C version output generated by modern compilers
So, gotta remove this inline assembly, I was looking info about that, I found recommendations that inline assembly on MSVC shouldn't be used (because it can hurt the performance a bit).
Sorry for the slightly off topic question: Do you know any procedure to test those math optimizations? Do you use any tools to test the 'optimization'? I also often try to use 'faster' math, but I don't really can see any improvement. Thanks!
Researching, learning the logic, problem resolution, ...
Not sure about the tools to test the optimization, Microsoft Visual Studio Community has a lot of tools to see a list of warnings, the quantity of lines of code, profiler, CPU usage, memory usage, ...
Task manager looks like a profiler too, you can see the CPU and memory usage of the process.
I don't know how faster can be something, the C code part I just checked is the most optimized compared to the previous one (the one that has a for
loop).
Ok, when you agree and are ready to merge, squash commits before merging.
Ok, when you agree and are ready to merge, squash commits before merging.
You basically just reverted to original 1.32b C version and added // That code was based on XreaL
comment to it, there is nothing to merge
Reference to https://github.com/ec-/baseq3a/pull/27
The inline assembly version of this function can only be compiled on MSVC (Microsoft Visual C++).