Performance issues on a 4K screen
Gathar
Traveler
Hello,
I would like to report some performance issues I had when working on my battlemap for Shessar contest. I have a 4K screen, and when I worked in full screen, as soon as I turned the effects on (even at the beginning of the map, with very few objects, when I had only the default sheets and effects, and had even removed some of them), the redraw time was very long (about one minute and a half each time). And it crashed quite often. Without effects, it was almost instant.
What surprised me, though, was that I reduced the size of my window so that it was about 1/4 of the screen. Having the total number of pixels to update divided by 4, I expected to have the drawing time divided by 4 too, more or less, which would be about 25s. However, at that size, the redraw time was almost instant, clearly less than 1s. I had seen many people before telling that with CC3+, they could work with effect on, and never could understand how it was possible before I reduced my window size.
So, this means that at least one of the effects is highly non-linear in the amount of pixels it has to draw. Do you have any idea which effects may exhibit these non-linear behaviour, so that I can avoid them in my future drawings (or add them right at the end of the drawing process, if I really need them)?
Thank you,
I would like to report some performance issues I had when working on my battlemap for Shessar contest. I have a 4K screen, and when I worked in full screen, as soon as I turned the effects on (even at the beginning of the map, with very few objects, when I had only the default sheets and effects, and had even removed some of them), the redraw time was very long (about one minute and a half each time). And it crashed quite often. Without effects, it was almost instant.
What surprised me, though, was that I reduced the size of my window so that it was about 1/4 of the screen. Having the total number of pixels to update divided by 4, I expected to have the drawing time divided by 4 too, more or less, which would be about 25s. However, at that size, the redraw time was almost instant, clearly less than 1s. I had seen many people before telling that with CC3+, they could work with effect on, and never could understand how it was possible before I reduced my window size.
So, this means that at least one of the effects is highly non-linear in the amount of pixels it has to draw. Do you have any idea which effects may exhibit these non-linear behaviour, so that I can avoid them in my future drawings (or add them right at the end of the drawing process, if I really need them)?
Thank you,
Comments
Maybe you could work out which ones were problematical by switching the effects off one at a time, sheet by sheet, until processing time suddenly pops to instantaneous?
As Loopysue suggests, it may be a matter of checking the redraw times at two sizes. One way to get a detailed comparison is to:
0) ensure that you have a c:\temp directory.
1) load your drawing in CC3+
2) turn on effects
3) maximize your CC3+ window
4) type in REDRAWTIME to generate a timing report in c:\temp
5) close the "Redraw time" window
6) resize your CC3+ window to be about half the screen size in each direction (about 1/4 the total pixels).
7) type in REDRAWTIME to generate a timing report in c:\temp
8) close the "Redraw time" window
9) post the two cc3redrawtiming_*_*.txt files from c:\temp for comparison.
If you open the individual cc3redrawtiming files you will see a detailed breakdown of everything that the effects system is doing and how long the stages take.
The first in time was 1/4 screen.
The second was full screen. But the result got displayed on the screen long before I could get back to work, as if the program was still busy long after the dump was finished. And it tells me about a rendering time of about 17s, which is much less than the total time I have to wait.
The third one I did to see if I could reproduce this. And not only I could, but the result file is also twice as big as the previous one, just as if it was rendered twice (and for instance, I see something mentioned "Wall Shadow, Point Light Finalize" 12 time, while it appears only 6 times in the other files). The long times seem to be centred around this effect, but basically, it goes from 1s to 6s, which does not explain the whole perceived difference.
The last one was a 1/4 screen too.
I hope you can make more sense out of it than I could
Thank you!
Except for the unexpectedly large RenderRotatedImage times (which are likely due to loading higher-resolution symbol images due to the higher-resolution screen), most of the filter times look reasonable to me. It's possible that the system is in fact rendering the image multiple times. It's also possible that there is unexpected memory management overhead, perhaps due to running out of system memory (possible with 64-bit systems having 4GB or less of system memory) or video card driver performance.
About the only thing I can ask at this point is if the CPU is running at 100% during the whole time or if it falls off after the initial rendering. The quickest way to check this is via the performance tab of the task manager (Ctrl_Shift+Escape to bring up task manager).
This is not a city map, but a battlemap (it was done for Shessar contest, you can download it here). I used the count all command, which told me the following statistics:
705 2D Point Entities 2240 2D Line Entities 837 2D Circle Entities 404 2D Arc Entities 55 2D Ellipse Entities 196 2D Elliptical Arc Entities 554 2D Path Entities 240 2D Polygon Entities 1069 2D Smooth Polygon Entities 190 2D Text Entities 215 Symbol Definition Entities 213 Symbol Reference Entities 5 2D Text Attribute Entities 1 2D Multipoly Entities 3072 XP Entities 10 Control Points Entities 1 File Notes Entities 10009 Entities occupying 1273.51k of memory
- With each redraw, I get more used memory (see screenshot, I made 3 redraws after the first one)
- If you look at the redraw at the middle, it was twice as fast as the other redraws. With a classical redraw, the screen if first frozen with the previous picture, then switches to a full dark green screen, then back to the new picture. When I had this faster redraw, it switched directly from the old picture to the new one, no green screen in the middle.