Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[portage] prevoir le temps de compilation
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index French
View previous topic :: View next topic  
Author Message
philpep-tlse
n00b
n00b


Joined: 09 Dec 2007
Posts: 11

PostPosted: Wed May 28, 2008 5:27 pm    Post subject: [portage] prevoir le temps de compilation Reply with quote

Ceci n'est pas une demande d'aide, mais plutôt une idée a implémenter dans genloop par exemple.

Je sais que genloop -c affiche un temps de compilation restant de l'ebuild. Mais comme beaucoup, j'ai parfois besoin d'un soft rapidement...
Ainsi il m'est arrivé d'avoir a émerger un compilateur (je sais plus comment il s'appelle) pour un simple lecteur de podcast console, ça a mis plus de 2h30 :D
Bref, si j'avais su avant, j'aurais peut être choisi une autre solution ou reporté a plus tard...


Donc je me demande s'il n'est pas possible de prévoir un temps de compilation de l'ensemble des ebuild qu'on emerge... (celui qui va dans world et toutes les dépendances)
A la base je ne suis pas codeur, donc je ne sais pas comment genloop s'en sort, mais j'imagine pouvoir créer un petit script qui va le calculer.

Les élément a prendre en compte sont ceux là je pense :
- Frequence du processeur : facile à avoir dans /proc/cpuinfo
- Taille de la source : ça c'est plus dur, est il possible d'avoir la taille d'un fichier sur un serveur distant sans le télécharger ?
- Nature des sources : en C, C++, python, simple script : ---> créer une base de données ?
- éventuellement traiter la variable CFLAGS, mais ça m'entonnerais que ce soit prévisible...

Ensuite un petit calcul savant devrait pouvoir sortir une approximation, avec une grosse marge d'erreur, mais on aurra une idée quand même.

Bref, si vous savez si un tel script existe ou si vous avez des élément a rajouter, ou même une ébauche de code \o/

Merci de votre attention 8)

EDIT : ce serait sympa un petit script qui se lance comme ça :
Code:
./super_genloop -av xterm
*******************
*******************
la compilation devrait prendre entre XhXX et XhXX, voulez vous continuer [y/n] ?


EDIT2 : sinon on pourrait créer une bdd de statistiques, a chaque fois qu'on emerge on evoie les info sur un serveur. Si on est beaucoup a le faire, ça peut devenir fiable avec le temps... (mais je sais pas si ça intéressera beaucoup de monde de participer a ces statistiques)
_________________
"to be is to do" platon
"to do is to be" sartre
"to be do be do.." sinatra
Back to top
View user's profile Send private message
CryoGen
Veteran
Veteran


Joined: 11 Feb 2004
Posts: 1426
Location: Bamako - Mali - Afrique

PostPosted: Wed May 28, 2008 6:19 pm    Post subject: Re: [portage] prevoir le temps de compilation Reply with quote

philpep-tlse wrote:


EDIT2 : sinon on pourrait créer une bdd de statistiques, a chaque fois qu'on emerge on evoie les info sur un serveur. Si on est beaucoup a le faire, ça peut devenir fiable avec le temps... (mais je sais pas si ça intéressera beaucoup de monde de participer a ces statistiques)


Déjà fait, mais vite abandonné :?
_________________
- CryoGen` on #gentoofr@irc.freenode.net
- ~amd64 / KDE4
- I'm the bone of my sword...
Back to top
View user's profile Send private message
lgmar75
n00b
n00b


Joined: 23 Apr 2008
Posts: 10

PostPosted: Thu May 29, 2008 9:11 pm    Post subject: Reply with quote

Code:
emerge -p world_or_whatyouwant | genlop -p

Ca donne deja une idée. Sauf si tu n'as jamais compilé la grosse partie :cry:
Back to top
View user's profile Send private message
kopp
Advocate
Advocate


Joined: 09 Apr 2004
Posts: 2885
Location: Grenoble, France

PostPosted: Fri May 30, 2008 10:16 am    Post subject: Reply with quote

ça a déjà été maintes fois discuté. La possibilité de la chose reste très faible. CMake te donne une idée de l'avancement en pourcentage des sources compilés (j'ai l'impression que ça compte seulement les fichiers, pas leur longeur/complexité) mais c'est durant la compilation et il faut que ce soit fait avec CMake.
Sinon, une base de données, y avait eu l'idée. Mais les paramètres ont une telle variabilité que c'est impossible : le disque dur joue, le système de fichier, la charge processeur autre, le type de processeur, la taille de la ram, le type de ram, les flags, etc. Très difficile à modéliser...
Back to top
View user's profile Send private message
mornik
Apprentice
Apprentice


Joined: 12 Mar 2005
Posts: 184
Location: Niort

PostPosted: Fri May 30, 2008 2:05 pm    Post subject: Reply with quote

Un temps moyen ne s'applique à personne. C'est juste moyen. Donc a partir du temps que l'on met pour compiler une bibliothèque de référence, on peu savoir ou l'on se trouve vis à vis du temps moyen.

C'est vrai que ce type de projet apparait régulièrement sur le forum, et se trouve vite abandonné. Je trouve ça dommage. J'aimerai bien parfois connaitre le temps moyen pour savoir si oui ou non j'ai envie d'attendre.

Pour moi cette base peut-être un bien. On a pas besoin de connaitre les détails de la compilation. Juste le compilateur.
_________________
Pousser pas j'y suis déjà !
Back to top
View user's profile Send private message
Desintegr
l33t
l33t


Joined: 25 Mar 2004
Posts: 863
Location: France - Orléans

PostPosted: Fri May 30, 2008 2:10 pm    Post subject: Reply with quote

LFS utilise la notion de SBU (Standard Build Unit) pour mesurer les temps de compilation
_________________
Gentoo ~AMD64
Hoc Volo, Sic Jubeo !
Mon wiki : http://desintegr.free.fr
Back to top
View user's profile Send private message
mornik
Apprentice
Apprentice


Joined: 12 Mar 2005
Posts: 184
Location: Niort

PostPosted: Fri May 30, 2008 2:17 pm    Post subject: Reply with quote

Voila un lien d'un post précédent sur le sujet
_________________
Pousser pas j'y suis déjà !
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index French All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum