Nouvelle version du format DivX [News] Nouvelle version 6.0

Je raconte ma life, et tout le monde s'en tape, mais j'ai quand même besoin d'en parler. Sur une idée de ChrisTalys.

Modérateur : Chelmi

Répondre
Chelmi
The Fucking Moderator
The Fucking Moderator
Messages : 11714
Inscription : 19 avril 2002, 19:25
Localisation : Andrésy (78)
Contact :

Nouvelle version du format DivX [News] Nouvelle version 6.0

Message par Chelmi »

La nouvelle version 6.0 du DivX signe la mort du .avi et l'arrivée de l'extension .divx. Ce format standard appelé DivX Media intègre la vidéo, les sous-titres (XSUB), la ou les pistes audio, les menus interactifs (comme sur les DVD) et les metatags, l'équivalent de l'ID3 pour les MP3. La compression et la qualité ont été améliorées comme à chaque mise à jour.

Une nouvelle version du lecteur DivX fait son apparition ainsi que la nouvelle version du logiciel DivX Converter qui permet de convertir n'importe quel fichier vidéo au format DivX 6.0.
-+- Chelmi -+- :parigot

L'ennemi est con : il croit que c'est vous l'ennemi, alors que c'est lui (P. Desproges).
Chelmi
The Fucking Moderator
The Fucking Moderator
Messages : 11714
Inscription : 19 avril 2002, 19:25
Localisation : Andrésy (78)
Contact :

Message par Chelmi »

Le DivX Helium libéré


L’équipe de DivX Networks a profité de la sortie du codec DivX 6 pour rendre publique la version dédiée aux stations gérant le multithreading (P4 HT, stations multiprocesseurs et processeurs dualcore) : le DivX Helium.

Si l’on se réfère aux différents graphiques fournis par l’équipe de développement il apparaît clairement que cette version du DivX profite pleinement des joies du multithreading. On peut observer un gain allant jusqu’à 118 % sur une plateforme Intel Pentium Extreme Edition (dualcore + HT). Sur une machine plus conventionnelle à base de Pentium 4 HT, le gain est forcément plus modeste avec une diminution de 44% du temps d’encodage.

Image

Il est donc plaisant de voir que les développeurs d’applications commencent doucement à proposer des logiciels tirant parti du multithreading. Pour les joueurs, il ne reste plus qu’à attendre que les développeurs de jeux travaillent dans le même sens pour exploiter au mieux nos processeurs dualcore et nos cartes graphiques multi-GPU. Oui, il faut rêver…
-+- Chelmi -+- :parigot

L'ennemi est con : il croit que c'est vous l'ennemi, alors que c'est lui (P. Desproges).
BerSeeker
++++
Messages : 111
Inscription : 20 août 2002, 00:09
Localisation : Achier val d'eurpoe

Message par BerSeeker »

faut que je mette ma xbox a jour alors ....

quand le divx depasse d'une courte tete le mkv :)
apres CS, OFP, apres OFP, BF42 DC, apres BF42 DC, Stalker, et ensuite .....
Image
Avatar de l’utilisateur
SilenT BoB
Mouleur "pro"
Messages : 3648
Inscription : 1 juin 2002, 02:12
Localisation : Monaco
Contact :

Message par SilenT BoB »

Donc si j'ai bien compris, le div6 c'est une sorte de nouveau standard, a la qualite excellente (Genre Mkv?)
Il y a un nouveau reader, et un nouvel encodeur. Et il est possible de simplement mettre un dvd dans son pc et attendre que ca encore, sachant que l'encodeur peut gerer meme les menus, differentes langues et sous titres, ai-je bien compirs?
mais sacré bon sang de bonsoir, qu'est-ce que je suis con!
Image
Avatar de l’utilisateur
Gnaag
Snots & SOS DEATH member
Messages : 2535
Inscription : 22 avril 2002, 11:06
Localisation : 78

Message par Gnaag »

Juste une remarque : ne pas trop s'enflammer sur le marketting des informateux...

Les graphiques "benchs" sont souvent utilisés à tord et à travers. Et dans ce cas là je trouve étrange qu'un tel gain soit constaté rien qu'en optimisant le code pour l'HT des P4. L'HT des Pentium 4 n'a pas bcp de raisons d'accélerer un calcul de type encodage. L'encodage est UN process de type répétitif, difficilement scindable en deux sous-thread.

Dans le doute j'ai checké quelques sites spécialisés qui confirment : il est très possible que ces benchs ai été effectués dans des conditions spécifiques, permettant à l'Hyperthreading de s'exprimer sous un meilleur jour. Exemple : un encodage PENDANT une lecture de dvd, ou en tout cas en même temps qu'une autre activité consommatrice de temps CPU. A mon avis le gain est bien moindre lorsque la machine ne travaille QUE sur l'encodage.

Pour rappel l'hyperthreading est conçu pour améliorer les perfs dans un contexte multi tâche intensif, pas sur une activité mono tâche. Le deuxième CPU logique permet de diminuer a perte de temps lié au changement de contexte lorsque le CPU passe d'un process à l'autre. Mais y a pas deux vrais CPU hein...

Bref y sont étranges ces graphes. Et comme je bosse un peu là dessus, et qu'une station HT est dispo au taf, je vais poster mes propres benchs histoire de comparer.
BerSeeker
++++
Messages : 111
Inscription : 20 août 2002, 00:09
Localisation : Achier val d'eurpoe

Message par BerSeeker »

euuuh je me trompe peut etre mais ne confond tu pas hyper treading et dual core?

l hypertreading d'intel permet justement d'utiliser par un meme process toute la puissance du processeur.(d'ou son utilisation pour les jeux)
le dual core, quand à lui a bien 2 proccess séparés, et seuls les programmes specifiquement ecrit pour ce context pourront (oui vu que le dual core ne sort qu'en juillet) exploiter en synchro les 2 cores.

reste que comme tout bench fourni par son propre constructeur, ceux çi se font bien sur dans des conditions optimales :)
en même temps Chelmi oubli d'inquer l'arrivée dans le divx 6, des DRM.
et oui, ça y est, bien que la version publique n'aie pas les DRM activée, elle contient bien cette cochonnerie, ce qui entrevoi la possibilité de 'verrouiller' la lecture de n'importe quel .divx dans le futur.
meilleure qualité avec menottes offertes :D
apres CS, OFP, apres OFP, BF42 DC, apres BF42 DC, Stalker, et ensuite .....
Image
Chelmi
The Fucking Moderator
The Fucking Moderator
Messages : 11714
Inscription : 19 avril 2002, 19:25
Localisation : Andrésy (78)
Contact :

Message par Chelmi »

Merci BerSeeker pour l'info sur les DRM de daube. :wink:
-+- Chelmi -+- :parigot

L'ennemi est con : il croit que c'est vous l'ennemi, alors que c'est lui (P. Desproges).
Avatar de l’utilisateur
SilenT BoB
Mouleur "pro"
Messages : 3648
Inscription : 1 juin 2002, 02:12
Localisation : Monaco
Contact :

Message par SilenT BoB »

euh pas tout compris moi a la DRM, ca permet de verouiller la lecture d'un truc?
Mias comment?
mais sacré bon sang de bonsoir, qu'est-ce que je suis con!
Image
Avatar de l’utilisateur
Gnaag
Snots & SOS DEATH member
Messages : 2535
Inscription : 22 avril 2002, 11:06
Localisation : 78

Message par Gnaag »

BerSeeker a écrit :euuuh je me trompe peut etre mais ne confond tu pas hyper treading et dual core?

l hypertreading d'intel permet justement d'utiliser par un meme process toute la puissance du processeur.(d'ou son utilisation pour les jeux)
le dual core, quand à lui a bien 2 proccess séparés, et seuls les programmes specifiquement ecrit pour ce context pourront (oui vu que le dual core ne sort qu'en juillet) exploiter en synchro les 2 cores.

reste que comme tout bench fourni par son propre constructeur, ceux çi se font bien sur dans des conditions optimales :)
en même temps Chelmi oubli d'inquer l'arrivée dans le divx 6, des DRM.
et oui, ça y est, bien que la version publique n'aie pas les DRM activée, elle contient bien cette cochonnerie, ce qui entrevoi la possibilité de 'verrouiller' la lecture de n'importe quel .divx dans le futur.
meilleure qualité avec menottes offertes :D

je savais pas pour les DRM... C'est moins mis en valeur que l'optimisation HT...

Et sinon, non je ne confonds pas dual core et HT. Dans les deux cas l'objectif est le même : améliorer les perfs en environnement multi-tâche.

Pour L'HT, la seule partie physique qui change entre un CPU HT et non-HT, c'est le doublement des registres (à peu de choses près, y quelques trucs supplémentaires mais bon, le nombre de transistors est quasi identique, y a pas grosses différences d'architecture). Un CPU ne peux effectuer des opération sur des nombres qu'une fois ceux ci chargés dans ses registres, sortes de petites mémoires très rapides à l'interieur du CPU. Pour faire un A+B=C, le CPU charge A depuis la RAM vers un de ses registres, pareil pour B dans u autre registre, puis additionne A et B pour stocker le résultat dans un troisième registre. Enfin il pose le résultat depuis son registre dans la RAM.

Lorsqu'un OS fait tourner plusieurs applis en même temps, en fait ... c'est pas en même temps ;-) On croit que c'est en même temps car le CPU switche d'une appli à l'autre en leur alouant successivement du temps de calcul. Comme ça va vite, on a la sensation que tout s'éxécute en même temps. A chaque switch, grossièrement résumé, il faut "vider les pipelines" du CPU, vider les registres des données de la première appli pour y charger les données de la seconde. Ce "changement de contexte" est du temps de calcul perdu.
Grâce à l'HT, on peut conserver le contexte de 2 thread (sous processus) à un moment donné, et du coup moins perdre de perfs dans un contexte multi tâche. Très efficace, et plus les applis simultannées sont nombreuses, plus c'est efficace.
C'est pourquoi les P4 HT distancent largement (sur les tests les plus extrèmes, c'est 300% de différence) les Athlons 64 lors des benchs multi tâches lourds (genre lecture DVD + encodage MP3 + Encodage DivX + surf Internet + ...).

En Dual core (ou BI CPU, ça revient exactement au même), non seulement on peut conserver le contexte de deux thread à un moment donné, mais on peut traiter les données de ces thread en même temps. On gagne donc encore plus de perfs dans un environnement multi tâches comparé à un système classique.
Par contre il faut deux vrais CPU, ou un CPU dual core, et là c'est plus cher.

Mais autant pour l'HT que pour le multi CPU, pour observer un gain de perf en comparaison à un système classique il faut :
- soit utiliser plusieurs applis en même temps
- soit utiliser une appli codée pour le multi CPU. Cette optimisation est impossible dans certains cas, par exemple lorsque qu'on ne peut scinder un travail pour le répartir sur les deux CPU. Ou qu'on effectue un calcul linéaire : quand on ne peut avancer dans une tâche si l'on a pas le résultat de celle qui la précède.
HT ou Bi ou quadri ou octo CPU ect, pour une seule appli non codée multi CPU, le gain est nul, voir t'y perd un peu car la gestion des plusieurs CPU par l'OS prend un peu de temps.


Voici qq petites illustrations très grossièrement résumées mais le concept est là :

CAS 1, deux additions
A+B=C sur une première appli
D+E=F sur une seconde appli


Avec un CPU classique
-on charge A de la ram vers un registre
-on charge B de la ram vers un registre
-on additionne A et B pour obtenir C
-on repose A dans la ram pour libérer le registre
-on repose B dans la ram pour libérer le registre
-on repose C dans la ram pour liberer le registre
-on charge D de la ram vers un registre
-on charge E de la ram vers un registre
-on additionne D et E pour obtenir F
9 etapes

Avec un CPU HT
-on charge A de la ram vers un registre
-on charge B de la ram vers un registre
-on charge D de la ram vers un registre du deuxième faux CPU
-on charge E de la ram vers un registre du deuxième faux CPU
-on additionne A et B pour obtenir C
-on additionne D et E pour obtenir F
6 étapes

Avec un Bi CPU ou un dual core
-on charge A de la ram vers un registre du CPU1 et en même temps on charge D de la ram vers un registre du CPU2
-on charge B de la ram vers un registre du CPU1 et en même temps on charge E de la ram vers un registre du CPU2
-la CPU1 additionne A et B pour obtenir C et en même temps le CPU2 additionne D et E pour obtenir F
3 étapes

Cas 2, une addition
A+B=C


Avec un CPU classique
-on charge A de la ram vers un registre
-on charge B de la ram vers un registre
-on additionne A et B pour obtenir C
3 etapes

Avec un CPU HT
-on charge A de la ram vers un registre
-on charge B de la ram vers un registre
-on additionne A et B pour obtenir C
le deuxième faux CPU ne fait rien, 3 etapes

Avec un Bi CPU ou un dual core
-on charge A de la ram vers un registre
-on charge B de la ram vers un registre
-on additionne A et B pour obtenir C
le deuxième vrai CPU ne fait rien, 3 etapes

Cas 3, 2 additions dépendantes l'une de l'autre
A+B=C
C+D=E



Avec un CPU classique
-on charge A de la ram vers un registre
-on charge B de la ram vers un registre
-on additionne A et B pour obtenir C
-on repose A dans la ram pour libérer le registre
-on charge D de la ram vers un registre
-on additionne C et D pour obtenir E
6 etapes

Avec un CPU HT
-on charge A de la ram vers un registre
-on charge B de la ram vers un registre
-on additionne A et B pour obtenir C
-on charge D de la ram vers un registre du deuxième faux CPU
-on additionne C et D pour obtenir E
5 étapes

Avec un Bi CPU ou un dual core
-on charge A de la ram vers un registre
-on charge B de la ram vers un registre
-on additionne A et B pour obtenir C
-on charge D de la ram vers un registre du deuxième vrai CPU
-on additionne C et D pour obtenir E
5 étapes

Encore une fois c'est très grossièrement résumé et les plus interessés d'entre vous sortiront peut être une faille de l'exemple ci dessus ;-) Mais c'est volontaire, pour expliquer le concept de l'HT, déjà on s'est pas mal écarté de LifeSTyle...


Je suis en discutte sur des forums spécialisés à ce sujet et vais poster mes propres benchs cette aprem. A mon avis que l'HT soit activé ou non, je constaterai pas de différence de perf si je ne fais que de l'encodage.


A toute...
titoff
++++++
Messages : 993
Inscription : 29 mai 2002, 23:05
Localisation : Newmarket (Suffolk)

Message par titoff »

ah mon avis, gnaag il cherche l'embrouile, en tous cas moi il m'a bien embrouillé. :wink:
http://www.korpland.fr.st
visite le site officiel: http://www.titoff.ru
Titoff©®Powa™
rabbit
Trop con
Messages : 2548
Inscription : 9 décembre 2002, 00:15

Message par rabbit »

gnaag a écrit :Cas 3, 2 additions dépendantes l'une de l'autre
A+B=C
C+D=E

[...]

Avec un Bi CPU ou un dual core
-on charge A de la ram vers un registre
-on charge B de la ram vers un registre
-on additionne A et B pour obtenir C
-on charge D de la ram vers un registre du deuxième vrai CPU
-on additionne C et D pour obtenir E
5 étapes
Pourquoi on fait pas les étapes 3 et 4 en même temps ???
Avatar de l’utilisateur
KsR
Game Admin
Messages : 3826
Inscription : 23 mai 2002, 11:44
Anti-Robots : blanc
Localisation : Noisy le Grand, touristiquement le 93 c'est naze ...
Contact :

Message par KsR »

titoff a écrit :ah mon avis, gnaag il cherche l'embrouile, en tous cas moi il m'a bien embrouillé. :wink:
Ca peut paraître bizarre, mais Gnaag explique ce que j'ai vu en cours en licence mais ... mieux. Et je suis d'accord avec la remarque de rabbit :wink:
"La mort vient du ciel" dixit Maître ScareCrow
P4
Snots & SOS DEATH member
Messages : 5246
Inscription : 19 avril 2002, 21:49
Localisation : Hôpital psychiatrique des Têtes Brulées

Message par P4 »

Heuuu dites.... :?

Finalement, c'est bien ou pas ? :neige
"Putain :zut , suis con !" - (Lord Kr'öm) :fou25
Nominé aux Renards D'Ors 2006
Avatar de l’utilisateur
Gnaag
Snots & SOS DEATH member
Messages : 2535
Inscription : 22 avril 2002, 11:06
Localisation : 78

Message par Gnaag »

P4 a écrit :Heuuu dites.... :?

Finalement, c'est bien ou pas ? :neige

lol, oui c'est bien en fait hein... C'etait juste pour parler technique et maketing... Pas eu le temps de faire mes benchs encore.
Avatar de l’utilisateur
Gnaag
Snots & SOS DEATH member
Messages : 2535
Inscription : 22 avril 2002, 11:06
Localisation : 78

Message par Gnaag »

rabbit a écrit :
gnaag a écrit :Cas 3, 2 additions dépendantes l'une de l'autre
A+B=C
C+D=E

[...]

Avec un Bi CPU ou un dual core
-on charge A de la ram vers un registre
-on charge B de la ram vers un registre
-on additionne A et B pour obtenir C
-on charge D de la ram vers un registre du deuxième vrai CPU
-on additionne C et D pour obtenir E
5 étapes
Pourquoi on fait pas les étapes 3 et 4 en même temps ???


Bien vu. En fait je l'ai noté comme ça parce qu'en réalité en Bi CPU lorsque les paramètres d'une opération se trouvent dans des cpu différents, bah ça marche pas. Il faut que les paramètres soient sur le même CPU, donc il y a un temps de changement de CPU d'un des paramètres de l'opération, donc une étape supplémentaire. Un peu de triche pour obtenir 5 étapes en complexifiant le moins possible...

Ce qui remontre que cette explication reste grossière !
Répondre