Morph performance on large images.
Posted: Wed Aug 24, 2011 2:05 am
Hi.
I have been succesfully using fantamorph to morph / warp large images. Currently 1520x1056. Previously performance was very good. It is a multi layer warp, and performance slows down if more than one layer is visible, but when working on a single layer, I get ~300fps. I also see ~30% GPU load on both gpu's (dual gpu card). Cpu load is ~4%. (this shows me the cpu is not the limiting factor here).
Somethings changed though from one project file to another. I get the above 300fps preview performance on "version 4" of my morph. I had been working on version 5 recently. I simply save the project to a new filename from time to time so I can revert back if needed. I noticed on V5, I was only getting 7fps preview speed when working on a single layer. GPU load is ~2% on both gpu's, and cpu is at ~14%. Since windows sees 8 cores (4 physical cores with hyperthreading), I assume for some reason fantamorph is CPU limited, running one core to 100%. (12% overall would be 1/8 cores at 100%. Other threads would make up the other 2%).
Somehow I might have inadvertantly changed something that increased the cpu load from one revision of the project to another. They both have the same number of dots. They both have 3 layers, although I'm testing with only one layer visible at any one time. So my question is how can I tell what options / features in the latest revision of my project is causing the hardware acceleration to be CPU limited instead of GPU limited? When GPU hardware acceleration is working properly (which it is in my case), what tasks remain on the CPU? Something the cpu is having to do is eating up lots of cpu time. I've got an i7 overclocked to 3.8 ghz, so even a single thread is pretty powerfull.
If whatever fantamorph is doing with the cpu during gpu acceleration is needed in my case, is there any chance of multithreading making it's way to fantamorph? I have lots of cpu power left over, but multiple threads are needed to take advantage of it.
Thanks in advance.
I have been succesfully using fantamorph to morph / warp large images. Currently 1520x1056. Previously performance was very good. It is a multi layer warp, and performance slows down if more than one layer is visible, but when working on a single layer, I get ~300fps. I also see ~30% GPU load on both gpu's (dual gpu card). Cpu load is ~4%. (this shows me the cpu is not the limiting factor here).
Somethings changed though from one project file to another. I get the above 300fps preview performance on "version 4" of my morph. I had been working on version 5 recently. I simply save the project to a new filename from time to time so I can revert back if needed. I noticed on V5, I was only getting 7fps preview speed when working on a single layer. GPU load is ~2% on both gpu's, and cpu is at ~14%. Since windows sees 8 cores (4 physical cores with hyperthreading), I assume for some reason fantamorph is CPU limited, running one core to 100%. (12% overall would be 1/8 cores at 100%. Other threads would make up the other 2%).
Somehow I might have inadvertantly changed something that increased the cpu load from one revision of the project to another. They both have the same number of dots. They both have 3 layers, although I'm testing with only one layer visible at any one time. So my question is how can I tell what options / features in the latest revision of my project is causing the hardware acceleration to be CPU limited instead of GPU limited? When GPU hardware acceleration is working properly (which it is in my case), what tasks remain on the CPU? Something the cpu is having to do is eating up lots of cpu time. I've got an i7 overclocked to 3.8 ghz, so even a single thread is pretty powerfull.
If whatever fantamorph is doing with the cpu during gpu acceleration is needed in my case, is there any chance of multithreading making it's way to fantamorph? I have lots of cpu power left over, but multiple threads are needed to take advantage of it.
Thanks in advance.