PDA

View Full Version : Tystudio Multithreaded?



Godlike
04-07-2003, 04:51 PM
First off I would like to thank everyone on this forum for all the knowledge they have shared and everything else that has made my life and im sure 99% of everyone elses easier. I have been a lurker for over a year now and I think its about time that I started participating as well. This is a wonderful community and im proud to consider myself a member.

Ok, now thats taken care of I have a question. :) Tystudio has been the answer to all my extracting dreams. I was curious if it was designed to support SMP? The reason why I ask is everytime I process a TY file CPU usuage is around 70-100% combined. There are no cpu intensive programs running in the backroud and Im finding TYstudio very quick and efficent at processing TY files.
Previously when I used Tydemux I was only using 10-16% on a single cpu and the second was left idleing. Could the improved preformance be as a result of it being a DLL or is my system just reporting inccorect cpu usuage.

Thanks in Advance!!!

FreydNot
04-08-2003, 12:53 AM
I have noticed a similar thing on my single proc XP 2000+ system. When TyStudio is doing its demuxing thing my CPU load goes up to 100%. But, if I start up a fairly CPU intisive task (like CCE mpeg2 encoder) it will take over around 70% of the CPU back from TyStudio. The thing is that TyStudio doesn't slow down at all.

If I set CCE to a lower priority (like BelowNormal) it will still use the same amount of CPU time.

So, my educated guess its this. TyStudio has a built in "idle" thread that it uses when it needs to "kill time". Windows has its own idle process which does this also, but it looks like TyStudio doesn't make use of it (probably to make it easier for a single code base to work under unix and windows). I would also guess that the built in TyStudio idle thread runs a lowest priority (which is why other tasks will take priority over even when set to "belownormal".

The only thing I'm unsure of is if the built in idle thread executes an HTL instruction. The windows idle task does this which puts the CPU into a halt mode which conserves power and keeps the CPU cooler.

But that's just my guess. I would guess that a quick browsing through the source code would answer all of our questions. If only I understood the language...