Logo by KRAFTWERK - Contribute your own Logo!


it was a great time but no longer maintainable by c.Kleinhuis contact him for any data retrieval,
thanks and see you perhaps in 10 years again

this forum will stay online for reference
News: Check out the originating "3d Mandelbulb" thread here
Welcome, Guest. Please login or register. August 14, 2022, 02:38:40 AM

Login with username, password and session length

The All New FractalForums is now in Public Beta Testing! Visit FractalForums.org and check it out!

Pages: [1]   Go Down
Share this topic on DiggShare this topic on FacebookShare this topic on GoogleShare this topic on RedditShare this topic on StumbleUponShare this topic on Twitter
Author Topic: VTune Results; Compute vs. CVector3::IsNotANumber.  (Read 2114 times)
0 Members and 1 Guest are viewing this topic.
Posts: 21

« on: August 03, 2016, 03:42:16 AM »

I bring you this report summary of VTune Results; Compute vs. CVector3::IsNotANumber.
The data focuses on CVector3::IsNotANumber.


This case is interesting because we are spending much time in Compute function itself.
Within the scope of this Compute function, we use CVector3::IsNotANumber where the majority instructions retire.
Also within the scope of this Compute function call, other operations retire a large share of instructions to self.
The Bottom-up view shows that we retire most instructions in CVector3::IsNotANumber.


The Caller/Callee view reinforces the separate and nested scopes where the majority of CPU instructions takes place.
It shows that we spend 68.2% of total time in Compute function.
It further shows that we spend 22.5% of total time in CVector3::IsNotANumber function.
However, the report clearly states that CVector3::IsNotANumber retired nearly double the CPU instructions to self as opposed to the “runner-up” Compute function.


There are instances of Compute function throughout the RayMarcher, ObjectShader, CalculateNormals, etc…


This source code view below shows one call stack instance of Compute function.
Here we call CVector3::IsNotANumber()
This instance alone accounts for 11.2% of total CPU time.


This initial source view of algebra.hpp pinpoints the critical section.


This secondary source view of algebra.hpp breaks down the critical section.


When testing for NaN, any ideas to optimize?

Pages: [1]   Go Down
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines

Valid XHTML 1.0! Valid CSS! Dilber MC Theme by HarzeM
Page created in 0.172 seconds with 28 queries. (Pretty URLs adds 0.01s, 2q)