Log in

View Full Version : Think the new 'hyperthreading' tech will lead to faster encodes?


Scary
29th October 2002, 07:19
The pentium 4 is going pass the 3ghz at the end of this year and they're going to include that much hyped hyper-threading feature. I was wondering how much faster will divx encode on it?

Unlike multiprocessors which needs software coded specifically for it the hyperthreading tech is hardware based. This is why I'm not upgrading yet.............this and serial ata, of course.

wmansir
29th October 2002, 08:03
According to this article:

http://www.2cpu.com/Hardware/ht_analysis/

HT actually hurt Divx encoding, had almost no effect on LAME MP3 encoding, and gave a nice boost to TMPEGenc MPEG1 encoding.

Also, a good read on HT is this (http://www.arstechnica.com/paedia/h/hyperthreading/hyperthreading-1.html) Ars article. If you read it you will see that in order to really benefit from HT software must still be multi-threaded, this is why HT has no effect on LAME encoding.

Perhaps the reason Divx encoding, using avisynth->vdub to get two threads, was hurt by HT in the first article is due to the concerns raised in the ars article regarding the shared cache conflicts.

auenf
29th October 2002, 11:10
uhh, isnt HyperThreading basically making your single processor appear as 2 processors to the operating system?

altho it sounds really good, only applications that are designed heavily for SMP will benefit, and non-smp aware apps might run at half the speed cause they will only use one virtual processor.

Enf...

int 21h
29th October 2002, 14:20
Originally posted by auenf
uhh, isnt HyperThreading basically making your single processor appear as 2 processors to the operating system?

altho it sounds really good, only applications that are designed heavily for SMP will benefit, and non-smp aware apps might run at half the speed cause they will only use one virtual processor.

Enf...

This isn't necessarily true. Any multi-threaded application will benefit. And non-SMP aware applications will run at the same exact speed (i.e. previous example with LAME benchmarks)

The speed decrease that the previously mentioned article sees for DivX encoding specifically could be to many things, and I'm sure once Hyperthreading hits the mainstream, some more hints about optimizing to take advantage of it will surface (Intel is well aware of this exact scene, and even contributes on occassion)

Scary
29th October 2002, 17:16
http://www.2cpu.com/Hardware/ht_analysis/benches/divx_ht.gif


My god, 56 and 61 FPS divx encoding on Xeon processors? THATS FRIGGING FAST!!!!! beat the sh*t out of my 1ghz Tbird.....Damn, maybe I should get Xeon instead of P4 for divx encoding.

mpucoder
29th October 2002, 17:26
Doesn't the Athlon MP and/or XP already have "hyper-threading"?

Acaila
29th October 2002, 18:05
Nope, but they don't need it either. :)

Judging from that picture posted by Scary, HyperThreading isn't very efficient compared to actually having 2 CPU's. Because my rig equals that Xeon 2.4GHz in encoding speed (with or without HT) even though my CPU's are running at only 1.67 GHz.

auenf
30th October 2002, 10:26
ooh, forgot this was a different thread...

read the 2cpu ht analysis, one benchmark goes backwards, mainly cause they are using 1 app that isnt smp aware, and one that is smp aware.

Enf...

Argbeil
30th October 2002, 16:21
There's one big benefit in Hyperthreading/Multiprocessing Technologie: Even if it doesn't speeds up your Video-Encoding, all threads you start beside the encoding will perform as if your weren't encoding at all. Wich means you will be able to encode 2 Videos at nearly the same time one before. Or you will be able to play a game with no loose of speed while encoding a video...
I've got an old P-Pro 4x CPU System an altough it's very slow I'm able to encode 4 Videos a time, the speed is the same as if I would encode 1 Video.

Argbeil

wmansir
30th October 2002, 17:28
ArgBeil, That's really not true. All HT does is allow the CPU scheduler more flexablilty by being able to run instructions from 2 different threads during the same clock cycle. This means if one thread needs to do a floating point operation and another needs to do an interger op, both instrucitions can be executed simultaneously. Howerver, if two threads require the same resource one of them will be delayed.

You don't get any more raw processing power with HT, it just uses the existing power more effeciently.

Scary
30th October 2002, 22:16
Hey Acaila, you said ur encode equals that Xeon system. What software are you encoding in? Is this software able to utilize the dual CPU by itself or is it the OS that divides up the job? I dont get it, but dual CPU is quite impressive though.

Acaila
31st October 2002, 10:41
I use DVD2AVI->Avisynth->VirtualDub, nothing special about that. VDub in combination with Avisynth works quite well in distributing load across multiple cpu's, especially when no filters are being used.

32bit IDCT in DVD2AVI, cropping + SimpleResize in Avisynth and Fast Recompress in VDub gives me about 55-65 fps depending on the resolution (with agressive memory timing that is :)).