by face » Mon Oct 17, 2011 9:48 pm
face
Mon Oct 17, 2011 9:48 pm
Here is a log i have made to show which times are used for specific data operations.
The testmesh was a textured sphere with 1mio tris.
// INFO : initializing: 0.0265087
// INFO : Vertex access: 0.0162558
// INFO : Vertex writing: 0.341689
// INFO : Normal access: 0.19016
// INFO : Normal writing: 1.39654
// INFO : Texture access: 0.0439852
// INFO : Texture writing: 0.936423
// INFO : Faces access: 1.00283
// INFO : Faces writing: 1.66027
// INFO : Cleanup: 0.00195059
// INFO : Overall: 5.62907
The faces used the most time because i need access to the indices which polygon use which vertex-,normal- and texture-index.
All in all you see, to write in the file is the bottleneck. Not the writing itself, but the time to convert the values to a writeable text format.
I have spend much time to find and integrate an alternative method which is faster than the standard method.
To seperate the process in multiple threads makes in my eyes not realy sense because on 4 cores i would maximum save the half time. To this time, the time to manage the treads will be added, so that you have maybe a plus of 1sec. per 1mio tris.
Another time killer is to uptade the progress bar. I think i have minimized the output of information so that, at this point, there is no more room for play with.
For around 2mio tris i need around 10sec to export. To import it in Octane, i need 40sec.
It´s also on the Octane side to optimize some things and this is not my bussiness...
face