View previous topic :: View next topic |
Author |
Message |
Il turisto l33t
Joined: 12 May 2004 Posts: 968 Location: Battincourt - Belgique
|
Posted: Tue Oct 17, 2006 9:07 am Post subject: [processeur] smp ou pas (résolu) |
|
|
Bonjour,
je vous explique mon problème :
Je suis en train d'écrire un script de mise à jour automatique pour debian (pas de troll merci) et par défaut debian installe un kernel non smp. Je voudrais savoir si il existe un moyen fiable de savoir si le cpu est un smp et par conséquent installer automatiquement le kernel adéquat.
Par fiable j'entend : autre chose que : cat /proc/cpuinfo | grep "Dual core"
J'ai regardé dans /proc/cpuinfo et avec lshw et a part le family model rien ne permet vraiment de savoir si le cpu est un bicore ou si la carte mère comporte plusieurs cpu.
Merci pour votre aide.
Last edited by Il turisto on Wed Oct 25, 2006 2:50 pm; edited 1 time in total |
|
Back to top |
|
|
-KuRGaN- Veteran
Joined: 05 Dec 2004 Posts: 1142 Location: Besançon (25) [FRANCE]
|
Posted: Tue Oct 17, 2006 10:08 am Post subject: |
|
|
Et bien cat /proc/cpuinfo | grep cpu1
Edit: ha non, merde, j'ai mal lu ta question _________________ Knight Gent00 Industries RiDeR !!!! |
|
Back to top |
|
|
Il turisto l33t
Joined: 12 May 2004 Posts: 968 Location: Battincourt - Belgique
|
Posted: Tue Oct 17, 2006 10:17 am Post subject: |
|
|
Non forcément je n'ai qu'un cpu vu que je n'ai pas de kernel smp.
sinon : cat proc/cpuinfo | grep cpu | wc -l (ou qqch y ressemblant).
Mais non
Merci quand même. Un autre idée? |
|
Back to top |
|
|
Bapt Veteran
Joined: 14 Apr 2003 Posts: 1152 Location: Paris
|
Posted: Tue Oct 17, 2006 10:32 am Post subject: |
|
|
Un début de piste avec dmidecode qui va lire le smbios :
Par contre tu aurai l'information par processeur physique, mais je ne trouve pas le champs me disant c'est un dual core ou non, mais il doit y être. Une machien bipro dual core.
Par exemple au taf des xeon dual core :
Code: | Handle 0x0400
DMI type 4, 35 bytes.
Processor Information
Socket Designation: PROC_1
Type: Central Processor
Family: Xeon
Manufacturer: Intel
ID: 34 0F 00 00 FF FB EB BF
Signature: Type 0, Family F, Model 3, Stepping 4
Flags:
FPU (Floating-point unit on-chip)
VME (Virtual mode extension)
DE (Debugging extension)
PSE (Page size extension)
TSC (Time stamp counter)
MSR (Model specific registers)
PAE (Physical address extension)
MCE (Machine check exception)
CX8 (CMPXCHG8 instruction supported)
APIC (On-chip APIC hardware supported)
SEP (Fast system call)
MTRR (Memory type range registers)
PGE (Page global enable)
MCA (Machine check architecture)
CMOV (Conditional move instruction supported)
PAT (Page attribute table)
PSE-36 (36-bit page size extension)
CLFSH (CLFLUSH instruction supported)
DS (Debug store)
ACPI (ACPI supported)
MMX (MMX technology supported)
FXSR (Fast floating-point save and restore)
SSE (Streaming SIMD extensions)
SSE2 (Streaming SIMD extensions 2)
SS (Self-snoop)
HTT (Hyper-threading technology)
TM (Thermal monitor supported)
SBF (Signal break on FERR)
Version: Not Specified
Voltage: 1.4 V
External Clock: 800 MHz
Max Speed: 3600 MHz
Current Speed: 3400 MHz
Status: Populated, Enabled
Upgrade: ZIF Socket
L1 Cache Handle: 0x0700
L2 Cache Handle: 0x0701
L3 Cache Handle: 0x0702
Serial Number: Not Specified
Asset Tag: Not Specified
Part Number: Not Specified
Handle 0x0401
DMI type 4, 35 bytes.
Processor Information
Socket Designation: PROC_2
Type: Central Processor
Family: Xeon
Manufacturer: Intel
ID: 34 0F 00 00 FF FB EB BF
Signature: Type 0, Family F, Model 3, Stepping 4
Flags:
FPU (Floating-point unit on-chip)
VME (Virtual mode extension)
DE (Debugging extension)
PSE (Page size extension)
TSC (Time stamp counter)
MSR (Model specific registers)
PAE (Physical address extension)
MCE (Machine check exception)
CX8 (CMPXCHG8 instruction supported)
APIC (On-chip APIC hardware supported)
SEP (Fast system call)
MTRR (Memory type range registers)
PGE (Page global enable)
MCA (Machine check architecture)
CMOV (Conditional move instruction supported)
PAT (Page attribute table)
PSE-36 (36-bit page size extension)
CLFSH (CLFLUSH instruction supported)
DS (Debug store)
ACPI (ACPI supported)
MMX (MMX technology supported)
FXSR (Fast floating-point save and restore)
SSE (Streaming SIMD extensions)
SSE2 (Streaming SIMD extensions 2)
SS (Self-snoop)
HTT (Hyper-threading technology)
TM (Thermal monitor supported)
SBF (Signal break on FERR)
Version: Not Specified
Voltage: 1.4 V
External Clock: 800 MHz
Max Speed: 3600 MHz
Current Speed: 3400 MHz
Status: Populated, Idle
Upgrade: ZIF Socket
L1 Cache Handle: 0x0703
L2 Cache Handle: 0x0704
L3 Cache Handle: 0x0705
Serial Number: Not Specified
Asset Tag: Not Specified
Part Number: Not Specified
|
|
|
Back to top |
|
|
yoyo Bodhisattva
Joined: 04 Mar 2003 Posts: 4273 Location: Lyon - France
|
Posted: Tue Oct 17, 2006 10:52 am Post subject: |
|
|
Il me semble (à prendre avecdes pincettes donc) que le "dmesg" fourni une information à ce sujet lorsqu'il liste le/les procos (et cela quelque soit la config du noyau). Un truc du genre "smp capable" ou équivalent. Mais attention car certains P4 ne supportant pas l'HT affichent aussi cette option (j'en ai fait l'expérience). Du coup il faudrait ajouter un test sur la fréquence du proco qui permet de filtrer ce genre "d'anomalie".
Mes 0.02 cents _________________ La connaissance s'accroît quand on la partage.
JCB |
|
Back to top |
|
|
xaviermiller Bodhisattva
Joined: 23 Jul 2004 Posts: 8711 Location: ~Brussels - Belgique
|
Posted: Tue Oct 17, 2006 10:54 am Post subject: |
|
|
et pourquoi ne pas ajouter "bêtement" le support SMP, qui sera détecté au démarrage ? _________________ Kind regards,
Xavier Miller |
|
Back to top |
|
|
Il turisto l33t
Joined: 12 May 2004 Posts: 968 Location: Battincourt - Belgique
|
Posted: Tue Oct 17, 2006 11:27 am Post subject: |
|
|
Je vais regarder à vos solutions tout de suite.
Qu'entends tu par betement Xavier? Tu proposes d'installer le smp dans tout les cas? |
|
Back to top |
|
|
El_Goretto Moderator
Joined: 29 May 2004 Posts: 3170 Location: Paris
|
Posted: Tue Oct 17, 2006 11:38 am Post subject: |
|
|
Moi c'était faire la différence entre un HyperThreading et un vrai multiproc/dual core qui m'intéressait, et j'ai vu le physicalID dans le cpuinfo. Je ne sais pas si à peut te servir. _________________ -TrueNAS & jails: µ-serv Gen8 E3-1260L, 16Go ECC + µ-serv N40L, 10Go ECC
-Réseau: APU2C4 (OpenWRT) + GS726Tv3 + 2x GS108Tv2 + Archer C5v1 (OpenWRT) |
|
Back to top |
|
|
xaviermiller Bodhisattva
Joined: 23 Jul 2004 Posts: 8711 Location: ~Brussels - Belgique
|
Posted: Tue Oct 17, 2006 4:04 pm Post subject: |
|
|
Il turisto wrote: | Je vais regarder à vos solutions tout de suite.
Qu'entends tu par betement Xavier? Tu proposes d'installer le smp dans tout les cas? |
Oui. N'est-ce pas le cas des live-linux ? En général, tu mets autant de "features" que tu veux dans le kernel, et elles s'activeront si le matériel le supportent (et sinon, tant pis, tu auras gaspillé quelques dixaines de ko en RAM) _________________ Kind regards,
Xavier Miller |
|
Back to top |
|
|
titoucha Advocate
Joined: 21 Jul 2005 Posts: 2374 Location: Genève
|
Posted: Tue Oct 17, 2006 5:50 pm Post subject: |
|
|
XavierMiller wrote: | Oui. N'est-ce pas le cas des live-linux ? En général, tu mets autant de "features" que tu veux dans le kernel, et elles s'activeront si le matériel le supportent (et sinon, tant pis, tu auras gaspillé quelques dixaines de ko en RAM) |
Pas seulement, j'ai regardé chez Ubuntu, la version dapper a plusieurs kernels, dont un compilé pour le support du smp, dans la nouvelle version qui va sortir les développeurs ont décidé de ne sortir plus qu'un seul kernel avec toutes les options compilées et celles-ci sont utilisées ou non. |
|
Back to top |
|
|
Il turisto l33t
Joined: 12 May 2004 Posts: 968 Location: Battincourt - Belgique
|
Posted: Wed Oct 18, 2006 9:28 am Post subject: |
|
|
donc pour vous dans tout les cas je met le smp et je me pose pas de questions?
De toute facon tout les cpu vont devenir bicore je suppose... |
|
Back to top |
|
|
PabOu Veteran
Joined: 11 Feb 2004 Posts: 1088 Location: Hélécine - Belgium
|
Posted: Wed Oct 18, 2006 1:20 pm Post subject: |
|
|
En fait, oui c'est une bonne solution.
Mais dans ce cas, pourquoi le kernel par défaut de debian n'est pas smp ? Ils doivent avoir une raison valable, parceque bon, debian c'est beaucoup utilisé sur des serveurs qui ont le multi-cpu depuis bien plus longtemps que nos pauvres CPU de particuliers :'(
Quelqu'un connait la raison ou alors je devrai faire une recherche lorsque ma curiosité m'aura suffisement titillé ? _________________ Mangez du poulet ! |
|
Back to top |
|
|
El_Goretto Moderator
Joined: 29 May 2004 Posts: 3170 Location: Paris
|
Posted: Wed Oct 18, 2006 2:08 pm Post subject: |
|
|
Normalement, tu perds en perfs si tu actives le SMP en monoCPU, et ça n'est pas négligeable, d'après ce que j'avais aperçu lors de mon dernier "faisage" de noyau pour le C2D.
Sans compter qu'un ou 2 trucs noyau sont broken en SMP (genre des modules iptables comme owner). _________________ -TrueNAS & jails: µ-serv Gen8 E3-1260L, 16Go ECC + µ-serv N40L, 10Go ECC
-Réseau: APU2C4 (OpenWRT) + GS726Tv3 + 2x GS108Tv2 + Archer C5v1 (OpenWRT) |
|
Back to top |
|
|
Il turisto l33t
Joined: 12 May 2004 Posts: 968 Location: Battincourt - Belgique
|
Posted: Thu Oct 19, 2006 7:42 am Post subject: |
|
|
comment font les lives cd comme knoppix, ... pour détecter le cpu? |
|
Back to top |
|
|
Il turisto l33t
Joined: 12 May 2004 Posts: 968 Location: Battincourt - Belgique
|
Posted: Tue Oct 24, 2006 8:33 am Post subject: |
|
|
Personne? |
|
Back to top |
|
|
nico_calais l33t
Joined: 09 Jun 2005 Posts: 628 Location: Saint Julien en Genevois
|
Posted: Tue Oct 24, 2006 8:38 am Post subject: |
|
|
Il turisto wrote: | donc pour vous dans tout les cas je met le smp et je me pose pas de questions?
De toute facon tout les cpu vont devenir bicore je suppose... |
Bah...je comprend pas trop le pb. Tu peux mettre le SMP et voir si après ton deuxième proc est reconnu.
Si pour une raison ou pour une autre tu veux enlever le support smp, tu enlèves l'option. _________________ "Unix IS user friendly... It's just selective about who its friends are." Tollef Fog Heen tollef@add.no |
|
Back to top |
|
|
Il turisto l33t
Joined: 12 May 2004 Posts: 968 Location: Battincourt - Belgique
|
Posted: Tue Oct 24, 2006 3:33 pm Post subject: |
|
|
on parle ici d'une distro debian et d'un installeur automatique.
Dans mes scripts je n'ai pas vraiment le temps d'installer le smp, rebooter, tester, virer le smp, rebooter, ... |
|
Back to top |
|
|
nico_calais l33t
Joined: 09 Jun 2005 Posts: 628 Location: Saint Julien en Genevois
|
Posted: Tue Oct 24, 2006 3:56 pm Post subject: |
|
|
Bah dans ce cas là, via apt installe le noyau smp.
Et t'auras les 2 dans ton chargeur de démarrage. _________________ "Unix IS user friendly... It's just selective about who its friends are." Tollef Fog Heen tollef@add.no |
|
Back to top |
|
|
blasserre Veteran
Joined: 10 Feb 2004 Posts: 1362 Location: Lille, Vlaanderen
|
Posted: Tue Oct 24, 2006 5:57 pm Post subject: |
|
|
Code: | apt-get install genkernel |
_________________ benj
technicien professionnel, ascendant winner |
|
Back to top |
|
|
Il turisto l33t
Joined: 12 May 2004 Posts: 968 Location: Battincourt - Belgique
|
Posted: Wed Oct 25, 2006 8:41 am Post subject: |
|
|
Je comprend bien ou vous voulez en venir mais :
- genkernel n'existe pas dans le tree par défaut de debian
- il n'est pas question que je recompile un kernel car je fais une installation full automatique
En fait je crée un cd d'installation pour ma boite qui installe, configure, ... debian et installe notre logiciel et le configure. Mon cd crypte les partitions qui doivent l'etre, met en place le systeme de backup, configure apache, mysql et tout le toutim, firewall, ajoute des scripts d'administration que j'ai écrit, crée les comptes, ... bref la totale.
Vous comprendrez aisément que je ne peux pas me permettre de scripter une compilation de kernel automatique ni de choisir un noyau au boot. Ici le but est de livrer un cd à nos clients qui installe tout même si le mec ne connait rien a linux. Et une fois par mois lui envoyer un cd de mise à jour qui met à jour le système, le logiciel, les scripts, ...
Bref tout fonctionne sauf que je ne sais pas comment détecter si il y a un ou x cpu en sachant que par défaut j'ai un kernel non smp. |
|
Back to top |
|
|
blasserre Veteran
Joined: 10 Feb 2004 Posts: 1362 Location: Lille, Vlaanderen
|
Posted: Wed Oct 25, 2006 11:42 am Post subject: |
|
|
Il turisto wrote: | - genkernel n'existe pas dans le tree par défaut de debian |
c'est ce qui me conforte dans mon choix de gentoo
pour être sérieux, je ne pense pas que ce soit possible, le SMP n'étant pas un module il te faudrait un hack de bootloader (<- halte aux trolls) détectant l'arch de ton CPU et bootant le noyau ad-hoc
à ma connaissance : ça n'existe pas
il te reste donc deux choix mettre ce support.. ou pas
fais des tests de perfs sur des machines possédant ou pas ce support avec des kernels possédant ou pas SMP
et choisis la meilleure option, sachant qu'un noyau SMP ne bootera pas forcément sur une machine mono-CPU
(voir l'aide de menuconfig) je choisirai la solution non-SMP
après ça dépend du parc, de son évolution... etc. _________________ benj
technicien professionnel, ascendant winner |
|
Back to top |
|
|
dapsaille Advocate
Joined: 02 Aug 2004 Posts: 2366 Location: Paris
|
Posted: Wed Oct 25, 2006 11:50 am Post subject: |
|
|
Ou bien ... tu installes les 2 kernels ... et ensuite tu lance un cat /proc/cpuinfo
Code: |
processor : 0
vendor_id : AuthenticAMD
cpu family : 15
model : 35
model name : AMD Athlon(tm) 64 X2 Dual Core Processor 4400+
stepping : 2
cpu MHz : 2200.146
cache size : 1024 KB
physical id : 0
siblings : 2
core id : 0
cpu cores : 2
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov
pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt lm 3dnowext 3d
now pni lahf_lm cmp_legacy ts fid vid ttp
bogomips : 4401.41
processor : 1
vendor_id : AuthenticAMD
cpu family : 15
model : 35
model name : AMD Athlon(tm) 64 X2 Dual Core Processor 4400+
stepping : 2
cpu MHz : 2200.146
cache size : 1024 KB
physical id : 0
siblings : 2
core id : 1
cpu cores : 2
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt lm 3dnowext 3 now pni lahf_lm cmp_legacy ts fid vid ttp
bogomips : 4399.32
|
et j'en déduis que si tu peux trouver la chaine processor :1 et bien tu jartes le kernel standard et tu modifie le bootloader :p
voila |
|
Back to top |
|
|
yoyo Bodhisattva
Joined: 04 Mar 2003 Posts: 4273 Location: Lyon - France
|
Posted: Wed Oct 25, 2006 12:25 pm Post subject: |
|
|
Il turisto wrote: | Dans mes scripts je n'ai pas vraiment le temps d'installer le smp, rebooter, tester, virer le smp, rebooter, ... | Je saisis mal le problème en fait ... Tu fais une install via un livecd perso c'est ça ??
Si tel est le cas, tu te fais un livecd avec 2 kernels, un smp et l'autre monocpu. Tu démarres par défaut sur le smp (l'autre c'est en cas d'incompatibilité smp/mono) et tu contrôles le nombre de cpu présents sur le système. En fonction du résultat, tu copies le noyau approprié.
Mes 0.02 cents _________________ La connaissance s'accroît quand on la partage.
JCB |
|
Back to top |
|
|
Il turisto l33t
Joined: 12 May 2004 Posts: 968 Location: Battincourt - Belgique
|
Posted: Wed Oct 25, 2006 1:15 pm Post subject: |
|
|
Oui dans le cas ou c'est moi qui fais l'installation mais la c'est pour un client.
Si c'etais moi qui fais l'install je fais un cat /proc/cpuinfo et je sais si c'est un bicore ou pas.
Mais la tout doit etre automatique ... |
|
Back to top |
|
|
Bapt Veteran
Joined: 14 Apr 2003 Posts: 1152 Location: Paris
|
Posted: Wed Oct 25, 2006 1:23 pm Post subject: |
|
|
Et bien, ton cd d'install, tu le fait bouter en smp et faire toute son install en smp, donc tu pourras savoir au cour de ton install si le smp est nécessaire ou pas, si oui tu met ton kernel-smp, si non, tu met ton kernel-nonsmp |
|
Back to top |
|
|
|