Lazy CPU.

P

Peter Jason

I am transcoding a Blu-ray to the DVD format, a
task that takes 5 hours.

My CPU ( an i760 Intel) is using only core 9 and
all the others are idle.

The RAM runs at about 30% (12GB).

Is there any way to get all CPU cores on to the
task and so speed the task up?

Peter
 
J

Jason

I am transcoding a Blu-ray to the DVD format, a
task that takes 5 hours.

My CPU ( an i760 Intel) is using only core 9 and
all the others are idle.

The RAM runs at about 30% (12GB).

Is there any way to get all CPU cores on to the
task and so speed the task up?

Peter
Beg/pay the developers of the transcoding program to code it to take
advantage of multiple processors - it doesn't happen automatically.
There's nothing you can "tell" Windows to make it magically parallelize
the application.

The nasty secret of multi-core machines is that they don't do much in a
situation where there is really only one process. ...and it can be
devilishy hard to "parallelize" an arbitrary application, yet I'd think
that transcoding would be fairly easy - divide the video into chunks and
assign a chunk to each processor; they are presumably independent. That's
called "embarassingly parallel" by the HPC crowd, and transcoding would
seem to fall into that cateory.

Are there transcoding programs that take advantage of GPU's?

Jason
 
P

Peter Jason

Beg/pay the developers of the transcoding program to code it to take
advantage of multiple processors - it doesn't happen automatically.
There's nothing you can "tell" Windows to make it magically parallelize
the application.

The nasty secret of multi-core machines is that they don't do much in a
situation where there is really only one process. ...and it can be
devilishy hard to "parallelize" an arbitrary application, yet I'd think
that transcoding would be fairly easy - divide the video into chunks and
assign a chunk to each processor; they are presumably independent. That's
called "embarassingly parallel" by the HPC crowd, and transcoding would
seem to fall into that cateory.

Are there transcoding programs that take advantage of GPU's?

Jason
Thanks. The only one I know is the Adobe
PremierPro CS4 that uses every bit of the CPU
during the final transcoding, indeed 100%, and the
CPU fan speeds up and I have to switch this to
'high'. If I used this all the time I'd go to the
water cooling accessory that came with the
motherboard. It uses 80% approx of the 12GB RAM
too.

Peter
 
P

Paul

Peter said:
I am transcoding a Blu-ray to the DVD format, a
task that takes 5 hours.

My CPU ( an i760 Intel) is using only core 9 and
all the others are idle.

The RAM runs at about 30% (12GB).

Is there any way to get all CPU cores on to the
task and so speed the task up?

Peter
You didn't name the application.

What are you using to transcode the Blu-ray ?

Paul
 
P

Peter Jason

You didn't name the application.

What are you using to transcode the Blu-ray ?

Paul
It's called..
"4Videosoft Blu-ray Ripper" V5.0.22

and it seems to be able to transcode the Blu-Ray
disk content to various hand-held devices, the
*vob files, and many others too numerous to
mention.
 
P

Peter Jason

It's called..
"4Videosoft Blu-ray Ripper" V5.0.22

and it seems to be able to transcode the Blu-Ray
disk content to various hand-held devices, the
*vob files, and many others too numerous to
mention.

PS I'm still running it thru its paces.
 
P

Paul

Peter said:
It's called..
"4Videosoft Blu-ray Ripper" V5.0.22

and it seems to be able to transcode the Blu-Ray
disk content to various hand-held devices, the
*vob files, and many others too numerous to
mention.
The note at the bottom of this page, states the software
has a CUDA acceleration option. That would work with an
NVidia video card. It claims a 6X speedup, but their article
on the site, quotes some relatively old video cards. While
video cards used this way, do provide speedup, must "real"
multimedia apps don't scale indefinitely. A $1000 video card
is likely to transcode at the same speed as a $200 card. The
playing field is very uneven, and "early adopter" types who
buy expensive hardware expecting a big improvement, don't
always get what they expect. Sometimes, it turns out that
one generation of card, is better at it than a later generation.
I can't give any rules of thumb, or even trustworthy information
sources on this. While there are benchmarks, when I review the
results, the results are all over the place.

http://www.4videosoft.com/blu-ray-ripper/

You'd have to know something about the library they're using
for transcoding, to understand why it isn't multithreaded.
For example, if I was a lazy person, I might start with
FFMPEG and libavcodec for my software product. And perhaps
FFMPEG isn't multithreaded for all the filters.

They have a second web page, which mentions using an
ATI(AMD) video card. And for some reason, this requires
downloading some other software. I wonder if this
is a copy of AVIVO or something ? And sure enough, reading
further, that's what they use if you have an ATI video card.

http://www.4videosoft.com/ati-technology.html

"...AMD Media Codec Package.

Description:
Previously known as the AVIVO Package
Package includes
AMD Video Converter (for HD 2000 video card or later)
Media codecs for transcoding
"

So there you go. Both video card platforms, can help
you speed up the movie. The method of speedup differs
slightly.

Note that, for CUDA enabled apps, there is also a way to
have the CPU pretend to be CUDA, and emulate CUDA. That
technique though, requires the developers at 4videosoft
to use a particular compiler to prepare their product.

It doesn't answer the question as to why the CPU is
not fully used. Except to suggest they're not using
a multithreaded library, and decided to use a more
readily available single threaded solution.

Since the download is protected with INNOSetup, I can't easily
look at the product to see what it uses. I'd have to set up
a VM to "poke at it with a stick" :)

Virustotal shows one hit on the download, suggesting a false positive.

https://www.virustotal.com/file/bc5...3219eeb190668ca030089f8c5084abec6a7/analysis/

Paul
 
P

Paul

OK, I put together a VM and installed it
(blu-ray-ripper.exe V5.0.30.0).

In the Program Files, I see avcodec-52.dll, which implies
their CPU based code is FFMPEG derived. Just a guess.

Now, somewhere, it should be logged as to which codecs
in there, are multi-threaded.

I did find this, but have no way of knowing whether
it made its way into libav.org or not. MT stands for
multi-threaded, meaning someone is working on using
more than one CPU core.

http://gitorious.org/~astrange/ffmpeg/ffmpeg-mt/

I'm currently running an AV scan on the VM, to
see what's shakin. If anything naughty shows up,
I'll post back.

Paul
 
P

Paul

Paul said:
I'm currently running an AV scan on the VM, to
see what's shakin. If anything naughty shows up,
I'll post back.

Paul
OK, the AV is clean so far.

*******

In the Preferences, is a

CPU
CPU Affinity

settings area. Make sure all the cores listed in the
Affinity section, are ticked. If only one of them
is ticked, that would account for your "lazy CPU".
Affinity controls which physical or virtual core,
is a candidate for threading (if available). Just
because all cores are ticked though, doesn't
necessarily mean a given filter is MT. It might
not be. It could be like 7ZIP, where some compressors
are MT and some are single threaded. Or Photoshop,
where some filters are multi-threaded, while the
other half are single threaded. And there can be
good reasons for doing it that way. It isn't always
laziness, if there isn't a good algorithm available
for "doing it MT".

Paul
 
P

Peter Jason

OK, the AV is clean so far.

*******

In the Preferences, is a

CPU
CPU Affinity

settings area. Make sure all the cores listed in the
Affinity section, are ticked. If only one of them
is ticked, that would account for your "lazy CPU".
Affinity controls which physical or virtual core,
is a candidate for threading (if available). Just
because all cores are ticked though, doesn't
necessarily mean a given filter is MT. It might
not be. It could be like 7ZIP, where some compressors
are MT and some are single threaded. Or Photoshop,
where some filters are multi-threaded, while the
other half are single threaded. And there can be
good reasons for doing it that way. It isn't always
laziness, if there isn't a good algorithm available
for "doing it MT".

Paul
Thanks, I looked at this under 'preferences' and
all the CPU boxes are ticked.

The Blu-ray disk I have has the main movie plus a
plethora of extraneous matter like interviews with
the director, actors, producer, composer and many
others. One can un-select these and so the
transcoding of the movie is quicker.

A normal DVD-pal (*.vob) is about 2.5GB in size,
and the HD MPEG2 (*.mpg) is about 10.3GB in size
and I'm still experimenting.

The video quality is rather good.

Another I've acquired is
"Xilisoft Blu-ray ripper 7.1.0 Build 20120809" and
this has CPU core boxes too. I'll test this
later,.

Peter
 
P

Peter Jason

OK, the AV is clean so far.

*******

In the Preferences, is a

CPU
CPU Affinity

settings area. Make sure all the cores listed in the
Affinity section, are ticked. If only one of them
is ticked, that would account for your "lazy CPU".
Affinity controls which physical or virtual core,
is a candidate for threading (if available). Just
because all cores are ticked though, doesn't
necessarily mean a given filter is MT. It might
not be. It could be like 7ZIP, where some compressors
are MT and some are single threaded. Or Photoshop,
where some filters are multi-threaded, while the
other half are single threaded. And there can be
good reasons for doing it that way. It isn't always
laziness, if there isn't a good algorithm available
for "doing it MT".

Paul
I tested it with the HD comversion (*.mpg) that
gave a 10GB file for the main movie, and then
reduced this with Nero8 "fit to disk" in the
"Nero Vision". THe picture is excellent, but the
action scenes have a staccato strobe efffect where
the action falters slightly. I can't imagine the
cause.
 
P

Paul

Peter said:
I tested it with the HD comversion (*.mpg) that
gave a 10GB file for the main movie, and then
reduced this with Nero8 "fit to disk" in the
"Nero Vision". THe picture is excellent, but the
action scenes have a staccato strobe efffect where
the action falters slightly. I can't imagine the
cause.
Drop the "before" and "after" videos into a video
editor, and study them frame by frame ?

One way to get weird effects, is with the usage
of a rolling shutter camera. But if that was the
case, the original video would have the problem too.

Video comes in interlaced and progressive, but I
doubt that's involved here. Interlaced looks funny,
if the fields are played out of order. The video
editor usually has an option to reverse them (then
you play it back again and see if the problem is
gone).

And while you can get "dropped frames" during
playback, I doubt the transcoder would drop frames.
If it needs more time, it just runs slower :)
Only activities with strict real time requirements,
cause dropped frames when things are going too slow.
And playback has such requirements. A too weak
processor for the playback ? Again, not likely.

So I don't have a good theory.

If the Nero has capped the bitrate, that might
cause action to get dropped.

Paul
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads

SOLVED Please help me un-park four of eight CPU's? 1
Stuttering and cpu usage peaks 2
High CPU in SVChost 5
SOLVED Blue Screen of Death/RegSvcs.exe high cpu usage 2
Windows Update High CPU Utilization - wuauserv 1
100% CPU usage 2
SOLVED CPU upgrade. 1
lazy system 4

Top