Forte charge sur double coeur

Salut

Je dois lancer des gros calculs, sur mon portable j’en ai pour plus de 24h. Là j’en suis à 30 et c’est pas fini :cry: .
Du coup ça me laisse du temps pour essayer de travailler plus vite :smiley: .
D’autant plus qu’au rythme ou vont les choses j’en ai pour un mois de calcul pour faire tout ce que je veux.

J’ai 2 PC équipés en double coeur intel à disposition.
J’ai lancé le calcul sur l’un des deux mais seulement un des 2 CPU travaille à 100%.
Est-il possible d’envoyer de la charge sur le deuxième CPU ? Un peu à la manière de nice et renice.

Autre question : est-il facile de monter un cluster ?
J’aurais 4 bécanes à mettre dedans. Deux sous SID et deux sous ETCH.

Alors pour ce qui est de paralléliser, il faut lancer le make avec au max -j 2*n-1, ou n est le nombre total de coeurs.
Pour ce qui est de parallèléliser tout ça sur plusieurs machines, tu peux utiliser distcc:
distcc.samba.org/
howto:
marmottux.org/index.php/2006 … vec-distcc
Attention: c’est simple à mettre en oeuvre si les machines ont la même architecture, et il faut que toutes les machines disposent des mêmes compilateurs.
Si une partie de ton code est commune a plusieurs projets ou que tu tatonnes et que tu va devoir recompiler plusieurs fois la même chose, tu peux utiliser ccache en plus:
ccache.samba.org/

Merci Mattotop

Mais je t’ai fais perdre un peu de temps par manque de précision.
Je ne fais pas tourner gcc :blush:
Il s’agit de opencv-haartraining.

Excuse-moi j’aurais du être plus précis.

Ah ben là, il n’y a pas de ce que mon ami google me dit de solution spécifique pour ça.
Si c’est pour une tâche régulière, tu pourrais par exemple te faire un beowulf composé d’une machine serveur et de stations diskless démarrées sur CD ou clés USB, et faire tourner une debian sur ce hardware virtuel composé de plusieurs machines, mais je n’ai jamais fait, et ça ne me parait pas simple simple…
fr.wikipedia.org/wiki/Cluster_Beowulf
en.wikipedia.org/wiki/Beowulf_(computing
wiki.debian.org/DebianBeowulf
wiki.debian.org/?StartaBeowulf
informatik.uni-koeln.de/fai/ … 01s07.html
ibiblio.org/pub/linux/docs/H … HOWTO.html
:smt005

Oula !
Tu me fais peur là.

Déjà un bon point je lance mes calculs sur les 2 coeurs en même temps. J’ai recompilé les sources d’opencv avec l’option -fopenmp sur gcc et g++.
D’ailleurs ça m’a bien saoulé car il y a plein de bouts de code foireux quand on active cette option.
Du coup j’ai une charge CPU de 195% 8)

Du côté clusterage, google m’a parlé de MOSIX, que l’on voit traîner ça et là sur les listes de diffusion.
Ca tourne bien cette chose là ?

Bah c’est aussi une solution de clustering:
en.wikipedia.org/wiki/OpenMosix (l’avantage par rapport à un beowulf: il y a des liens vers des versions livecd)
et il y a de la doc debian:
google.fr/search?q=debian+openmosix
Mais je n’ai pas plus testé ça que ce que je te donnais avant.

Mais sinon, si tu as du gcc et du g++, ce que je t’ai dit à propos de distcc et ccache sont toujours valides: ça n’est pas fait que pour un cc.

Tout a fait d’accord, d’autant plus que l’on doit pouvoir compiler un noyau avec ça sans trop se prendre la tête.
J’ai mis tes liens dans mes bookmarks car je vais sûrement essayer ça.