1

J'étais en train de me demandé un truc, si j'écris un noyau multitache avec le dsp de la Jag, vu le pipe lining de celui ci soit il va généré des cycles d'attente pour que l'instruction se termine, soit cela risque de fonctionné de travers.

Donc sur un systeme multitache on perd bcp de la puissance généré par le pipe lining suite a chaque commutation de taches non ?

Et pareil pour les caches non ?


GT Curieux what
avatar
Accrochez vous ca va être Cerebral !!

2

CTS est demandé au parloir !
Sinon essaye de contacter Thierry Schembri, au cas où...
Tu devrais trouver son email sur son site http://www.old-computers.com

3

Bah oui, forcément ! Une p'tite discussion sur le sujet : http://www.yntoo.com/posts.php?s=42308

Si tu veux que ça se passe bien avec le DSP de la Jaguar, évite d'utiliser le 68000. Il faut le couper et utiliser Tom en natif smile Note aussi que seul Tom dispose de 4 Ko de cache, PAS le 68000, juste d'un prefetch !

Kochise

avatar
Si Dieu m'a de nouveau fait homme, cette fois il m'a pas raté : marcher sur l'eau et dupliquer les pains, ça marche p'us :/

4

Merci Kochise pour les infos et a Xerus.

GT Turbo octopus


P.S. ; Je viens de mettre un oeil sur le lien, le pere Pollux ferait bien de resté calme avec les bétises qu'il a dit !!
avatar
Accrochez vous ca va être Cerebral !!

5

D'ailleurs Thierry Schembri avait fait un OS multi taches pour la Jag, seulement il a disssssspaaaaaruuuu (à la Jean Pierre Mader)...

6

Le pb est pas de dvp un O.S. multitache, le but du jeu est de tiré a fond la machine, donc on va évité de perdre un maximun en jonglant entre des taches ou d'autres bricoles !!


GT Monotache !! cool
avatar
Accrochez vous ca va être Cerebral !!

7

Pollux ne dit pas 'que' des conneries, mais il faut savoir quand même que le cache L1 est en accès 64/128/256 bits suivants le processeur (je crois 256 sur les AMD), et qu'il tourne à la vitesse du coeur (genre 1.466 GHz chez moi par exemple). Quand tu compare ça à la DDR à 266 MHz, forcément, c'est plus rapide...

Et oui, plus le programme est 'linéaire' (sans saut/branchement), plus il va vite, d'où certains codeur/demomaker déroulent certaines boucles pour gagner en rapiditée !

Kochise
avatar
Si Dieu m'a de nouveau fait homme, cette fois il m'a pas raté : marcher sur l'eau et dupliquer les pains, ça marche p'us :/

8

Parce que déjà un simple comptage de cycles sur une routine d'interruption meme vide, cela peut calmé alors c'est clair que si après on utilise un O.S. Multitache, le task switching est a considéré et pas qu'un peut.

Et après si tu utilises un processeur qui fait du pipe lining sur plusieurs niveaux bonjour le massacre sur la vitesse !!



GT En train de compté mes cycles !! loupe
avatar
Accrochez vous ca va être Cerebral !!

9

Ce topic passerait peut être mieux en dév Jag, non ?
Au moins histoire d'interessé ceux qui savent en vu d'obtenir subsequemment une approche direct et conscrite d'un point de vue fonctionnel au niveau du responsif.
avatar

10

Cela concerne un peut tout le monde, a la base c'était surtout pensé a la Jag, mais cela s'applique a tous les processeurs actuels ou a tous les anciens qui disposent soit de cache soit de pipe lining.

Pour les non initiés, on va expliqué le pipe lining, c'est une sorte de capacité d'anticipation des processeurs, par exemple pendant qu'il lit une instruction, il commence a décodé la prochaine et ceci suivant les processeurs, il anticipe bcp bcp et cela peut posé des pbs quand vous faites un saut a un autre morceau du code, parce que toutes les instructions qui ont été anticipés ne servent plus a rien, parce que le code n'est plus le bon, a coz du saut. Donc soit le processeur 'essaie d'oublié' ces instructions et doit reprendre tout le boulot, soit il le termine et cela se solde par deux choses, soit plantage, soit il attend pour terminé ces instructions !!

Aux puristes, vous m'excuserez pour l'explication mais je penses que c'est le plus simple pour expliqué cela.


GT En train d'essayez d'expliqué octopus
avatar
Accrochez vous ca va être Cerebral !!