Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 12/08/2014, à 09:01

ladsy

une commande GPULIMIT équivalente à cpulimit - deplacer vers forum CG

Bonjour,

Tout est dans le titre en fait. Il me faut à minima une commande gpulimit que je trouve pas sur la toile.

Je commence de jouer avec un programme qui fait tourner à fond la carte graphique au point de mettre à genoux tout l'affichage ... même en lançant ce programme avec un ionice -c3 nice -19 monProgramme.

Alors, j'ai aussi tenté cpulimite -e monProgramme -l 80 .. mais l'affichage est à genoux.
Un peu comme quand je joue à 0Ad avec 8 bots et 300 unités : ça devient du tour par tour avec la souris .... et il y a un mouvement de souris de 3 cm sur l'écran toutes les 45 secondes.
Bref, invivable.

J'aimerai que ce monProgramme tourne un peu en tache de fond en ne mangeant le GPU ... QUE  ... quand je n'ai pas besoin du dit GPU et que ça ne m'empêche pas de faire du travail à côté. ... donc un nice -19 pour emploi de GPU, des I/O et ... d'une façon générale limiter l'utilisation du GPU.

Comment faire svp ?

Merci d'avance.




Edit : je m'aperçois que je me suis trompé de rubrique ... comment on fait pour déplacer cette question dans http://forum.ubuntu-fr.org/viewforum.php?id=27 ?

Dernière modification par ladsy (Le 12/08/2014, à 14:18)


ubuntu mate 21.04 x86-64 - dual boot W10
Machine 1 : portable Lenovo P50 -  écran 4K - 4G/LTE - raid 0 de 2 eNVM - 64 Go de RAM et écran Acer Predator XB321HK
Machine 2 :P5Q-EM - 16Go - SB X-Fi Xtrem - 3 SSD Samsung 840EVO 500 Go en raid 0, GTX 970 et écran Samsung B2330

Hors ligne

#2 Le 26/08/2014, à 22:09

ladsy

Re : une commande GPULIMIT équivalente à cpulimit - deplacer vers forum CG

un chtit hup.
A vot bon coeur, M'sieur D'ames ?


ubuntu mate 21.04 x86-64 - dual boot W10
Machine 1 : portable Lenovo P50 -  écran 4K - 4G/LTE - raid 0 de 2 eNVM - 64 Go de RAM et écran Acer Predator XB321HK
Machine 2 :P5Q-EM - 16Go - SB X-Fi Xtrem - 3 SSD Samsung 840EVO 500 Go en raid 0, GTX 970 et écran Samsung B2330

Hors ligne

#3 Le 30/08/2014, à 10:21

Compte anonymisé

Re : une commande GPULIMIT équivalente à cpulimit - deplacer vers forum CG

Bonjour,

C'est pour ton hd6850 ? Avec driver proprio (catalyst) ?
Tu peux essayer de jouer sur les fréquences du GPU dans catalyst mais c'est global et non par process donc je ne pense pas que soit efficace.
Tu parles de ton programme donc c'est toi qui écrit les sources ? Dans ce cas il est préférable de limiter dans ton code le nombre d’opérations graphique par seconde en introduisant des temps d'attente. Ça permet de laisser des ressources à l'os et aux autres programmes. Le fait que ton os soit à genoux est signe d'un truc du genre en C :

while (1)
{
  fonction_gpu_de_la_mort(data_in,&data_out);
}

Une boucle sur un traitement lourd...
Au lieu de :

while (1)
{
  fonction_gpu_de_la_mort(data_in,&data_out);
  usleep(100000);  // attente de 100ms
}

Une boucle avec un traitement lourd et 100ms de pause entre chaque traitement...

#4 Le 04/09/2014, à 12:58

ladsy

Re : une commande GPULIMIT équivalente à cpulimit - deplacer vers forum CG

Bonjour,
Merci pour ta suggestion, mais ça ne correspond pas exactement au besoin.
J'emploi fglrx, j'ai joué déjà sur la fréquence et la vitesse des ventilos.
Pour le moment, j'ai fini par utiliser seulement cela car ça correspond, par exemple.

aticonfig -v --pplib-cmd "set fanspeed 0 4" --od-enable --od-commitclocks --od-gettemperature --effective=now --pxl

Je pourrais ajouter un truc comme cela

Set new Clocks for 0   :  aticonfig --adapter=0 --od-setclocks=770,1126

Mais ça donne plus ou moins de performances ... et pas une limitation d'usage de GPU.

Modifier le code. Idée que je retiens pour le future ... au càs où big_smile
En effet ce n'est pas mon programme et cette solutiokn ne s'applique pas.
En outre ... et bien tu fais faire un noop au programme et donc force le programme à laisser du temps à l'ordonnanceur pour passer la main à un autre processus.
Cela veut dire que pendant que le programme a la main ... il tourne toujours à 100 % du processeur, jusqu'à ce qu'il passe la main.
C'est mieux que rien ... mais cela revient à ordonnancer dans le temps avec une préemption forcée (si je me souviens bien), ce n'est pas une limitation de ressources en matière de capacité.
Un peu comme d'appuyer à fond le pied de l'accélérateur et rouler de fait à 100 km/h, puis lever le pied 10 secondes toutes les 30 secondes, de fait redescendre à 50 km/h, pour avoir une vitesse moyenne de 80 km/h .... plutôt que de ne pas appuyer à fond sur le champignon pour toujours rouler à 80 km/h.

Le problème s'est posé pour le cas ou je lance un programme de minage qui a le chic pour bouffer le GPU sauvagement.
Mais je ne veux pas limiter le problème à 1 seul programme en particulier (raison pour laquelle je n'avais pas cité tout de suite le nom du programme car, ainsi que j'ai souvent constaté, tout un tas de monde ne se serait concentré que sur lui sans adopter une vision d'ensemble) et aurait tenté que de résoudre un problème de logiciel de minage que j'ai dont j'ai depuis supprimé le logiciel, sans résoudre mon problème global.

J'ai besoin d'une solution générique de limitation de GPU.
Idéalement ?????
Et bien je veux limiter l'usage du GPU à 80 % de sa performance... même pour Xorg , Unity, LibreOffice, Gimp (qui traite des grosses images), Chrome (qui devient tout gris un temps quand ça télécharge trop d'images) big_smile

ps : en outre, tu te doutes que mon besoin se porte sur une solution qui ne s'appliquera pas qu'aux cartes graphiques AMD/ATI, vu que j'ai aussi une nVidia sur un autre PC ........... et un i915 aussi sur un PC portable.

Dernière modification par ladsy (Le 04/09/2014, à 13:07)


ubuntu mate 21.04 x86-64 - dual boot W10
Machine 1 : portable Lenovo P50 -  écran 4K - 4G/LTE - raid 0 de 2 eNVM - 64 Go de RAM et écran Acer Predator XB321HK
Machine 2 :P5Q-EM - 16Go - SB X-Fi Xtrem - 3 SSD Samsung 840EVO 500 Go en raid 0, GTX 970 et écran Samsung B2330

Hors ligne

#5 Le 05/09/2014, à 13:19

Compte anonymisé

Re : une commande GPULIMIT équivalente à cpulimit - deplacer vers forum CG

ladsy a écrit :

Et bien je veux limiter l'usage du GPU à 80 % de sa performance... même pour Xorg , Unity, LibreOffice, Gimp (qui traite des grosses images), Chrome (qui devient tout gris un temps quand ça télécharge trop d'images) big_smile

Limiter la fréquence du GPU comme tu as fait revient à limiter les perfs graphiques. Mais même avec un GPU limité, ton prog de minage qui bouche tout le GPU bloquera le sytème quand même. Tu n'as pas de moyen direct de limiter l'utilisation du GPU par un prog à moins que cela ne soit prévu dans le prog !

#6 Le 14/09/2014, à 17:47

ladsy

Re : une commande GPULIMIT équivalente à cpulimit - deplacer vers forum CG

Bien dommage.
Cela m'aurait permis d'éviter le blocage de la machine ... car depuis, j'ai toujours la main sur mon PC, vu qu'il reste 20% de performance disponible  (hors cette saleté à pomper le GPU).
Vu que c'est possible avec les CPU, j'espérais cela possible avec les GPU.

Tampis.:rolleyes:


ubuntu mate 21.04 x86-64 - dual boot W10
Machine 1 : portable Lenovo P50 -  écran 4K - 4G/LTE - raid 0 de 2 eNVM - 64 Go de RAM et écran Acer Predator XB321HK
Machine 2 :P5Q-EM - 16Go - SB X-Fi Xtrem - 3 SSD Samsung 840EVO 500 Go en raid 0, GTX 970 et écran Samsung B2330

Hors ligne