Ik heb hier een FreeBSD 4.9 en een FreeBSD 6.0 installatie, beiden op een dual Xeon configuratie. Is er een manier om te zien dat beide CPU's daadwerkelijk gebruikt worden? Ik zie in 'top' en/of 'ps' niets over welke CPU gebruikt wordt. In de man pages van deze twee tools staat ook niets waar ik wijzer van wordt.
Op mijn dual-bak heeft een collega (ik ben zelf niet zo'n freebsd-held) van mij een aantal uurtjes doorgebracht om het voor elkaar te krijgen. Bij mijn weten moet je een speciale SMP-kernel compileren. In top zie je vervolgens een extra kolommetje, waarin staat op welke processor welke thread draait.
Siditamentis astuentis pactum.
Dat zou betekenen dat Dual CPU configuraties out-of-the-box niet door FreeBSD herkend worden tijdens de installatie? Als dat zo is, draaien wij hier al 3 jaar op een Dual CPU bak, waarvan er maar één gebruikt wordt!Varienaja schreef op vrijdag 05 mei 2006 @ 09:38:
Op mijn dual-bak heeft een collega (ik ben zelf niet zo'n freebsd-held) van mij een aantal uurtjes doorgebracht om het voor elkaar te krijgen. Bij mijn weten moet je een speciale SMP-kernel compileren. In top zie je vervolgens een extra kolommetje, waarin staat op welke processor welke thread draait.
als top onder FreeBSD gelijk is aan linux, dan zou hij statistieken per proc moeten geven. Als hij dat niet doet, dan is de kans groot dat je BSD kernel nog geen SMP ondersteunend, en dat je of een andere kernel moet installeren of er zelf 1 moet maken (ik weet alleen niet precies hoe dat onder BSD zit, maar volgens mij redelijk gelijk aan Linux)
Waarschuwing, opperprutser aan het werk... en als je een opmerking van mij niet snapt, klik dan hier
Ik ben er inmiddels achter dat je met het volgende commando kunt achterhalen hoeveel CPU's de kernel gedetecteerd heeft:
code:
1
| sysctl -a | grep hw.ncpu |
Je zou "sysctl kern.smp" in moeten typen.
je moet in iedergeval wel een SMP kernel compilen. Standaard staat naar mijn idee SMP niet aan in de kernel. Stond het bij 5 wel maar dat is toen om een of andere security of stabiliteits reden terug gedraaid. Dus ik zou al die bakken van je maar effe checken
Daar moet je inderdaad een nieuwe kernel voor compilen. De standaard kernel heeft geen SMP support. Meer informatie daarover vind je in het FreeBSD handbook. Als het mogelijk is zou ik ook die FreeBSD 4.9 server upgraden naar 5.x of 6.x omdat deze veel beter met SMP systemen omgaat.
Geeft top daarna dan ook weer wat de load e.d. is per proc?
"top" krijgt enkel een kolom erbij waarin wordt weergegeven welke proc door het proces wordt gebruikt. Wil je enkel weten of freebsd gebruik maakt van de processoren, kun je zoals al eerder gepost "sysctl kern.smp" gebruiken. Als je nooit een andere kernel hebt gecompileerd, heb je trouwens inderdaad, zoals al door anderen gemeld, geen SMP(wordt natuurlijk ook al aangegeven doordat in top geen cpu-indicatiekolom verschijnt, ook in de output van dmesg zou spake moeten zijn van CPUs die worden gelanceerd (launched)). Een custom-kernel maken is trouwens toch handig qua optimalisatie, net als de juiste flags in /etc/make.conf zetten.
[ Voor 40% gewijzigd door begintmeta op 05-05-2006 15:41 ]
Verwijderd
In je kernel config moet staan:
...
options SMP
...
en dan zou je een SMP-kernel moeten hebben. In je dmesg zou dan iets moeten staan als:
...
Hyperthreading: 2 logical CPUs
real memory = 2147278848 (2047 MB)
avail memory = 2092044288 (1995 MB)
FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs
cpu0 (BSP): APIC ID: 0
cpu1 (AP): APIC ID: 1
cpu2 (AP): APIC ID: 6
cpu3 (AP): APIC ID: 7
....
SMP: AP CPU #3 Launched!
SMP: AP CPU #1 Launched!
SMP: AP CPU #2 Launched!
....
In top / gkrellm en andere systeemmonitors komt helaas geen info over twee processors te staan, daar heb ik ook al eens een vraag op de freebsd-questions mailing list gesteld. FreeBSD zit wat dat betreft anders in elkaar dan Linux.
...
options SMP
...
en dan zou je een SMP-kernel moeten hebben. In je dmesg zou dan iets moeten staan als:
...
Hyperthreading: 2 logical CPUs
real memory = 2147278848 (2047 MB)
avail memory = 2092044288 (1995 MB)
FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs
cpu0 (BSP): APIC ID: 0
cpu1 (AP): APIC ID: 1
cpu2 (AP): APIC ID: 6
cpu3 (AP): APIC ID: 7
....
SMP: AP CPU #3 Launched!
SMP: AP CPU #1 Launched!
SMP: AP CPU #2 Launched!
....
In top / gkrellm en andere systeemmonitors komt helaas geen info over twee processors te staan, daar heb ik ook al eens een vraag op de freebsd-questions mailing list gesteld. FreeBSD zit wat dat betreft anders in elkaar dan Linux.
In top kun je op 1 drukken om alle cores individueel weer te geven. (man top)
FreeBSD ondersteunt dit niet?
FreeBSD ondersteunt dit niet?
[ Voor 20% gewijzigd door Z-Dragon op 05-05-2006 16:42 ]
^ Wat hij zegt.
Verwijderd
Werkt bij mij in elk geval niet 
In top krijg je alleen een extra kolom met info op welke processor het proces loopt (0,1,2 of 3).
In top krijg je alleen een extra kolom met info op welke processor het proces loopt (0,1,2 of 3).
En de header van deze kolom is toevallig C of een andere?
mjax, heb je inmiddels uitgevonden of beide cpu's gebruikt worden?
Herkend weet ik niet, maar ze worden dus inderdaad niet gebruikt !! Stiekem moet ik wel een beetje lachen om je post : Sorrymjax schreef op vrijdag 05 mei 2006 @ 09:41:
Dat zou betekenen dat Dual CPU configuraties out-of-the-box niet door FreeBSD herkend worden tijdens de installatie? Als dat zo is, draaien wij hier al 3 jaar op een Dual CPU bak, waarvan er maar één gebruikt wordt!
Staat allemaal in het almachtige handbook
|| Stem op mooiere Topic Search linkjes! :) " || Pi-Hole : Geen advertenties meer voor je hele netwerk! >:) ||
Overigens wordt het vanaf 6.1 wel tijdens de installatie herkend
oh dat wist ik niet 
Maar 6.x is nog CURRENT en dus beta. Je bent een rund als je dat in een productieomgeving gaat gebruiken.
Maar 6.x is nog CURRENT en dus beta. Je bent een rund als je dat in een productieomgeving gaat gebruiken.
[ Voor 10% gewijzigd door xzenor op 08-05-2006 15:47 ]
6.x is natuurlijk wel al stable
7.x is CURRENT en 6.x is inderdaad STABLE. En naar mijn eigen ervaringen (en die van andere) is 6.x stukken stabieler dan 5.x
En naar mijn ervaring (en die van anderen) is 5.x weer stukken stabierel van 6.x Misschien zou je ook nog eens bronnen / ervaringen / concrete aanwijzingen kunnen geven. Zomaar gillen dat 6 beter / stabieler / sneller etc. is dan 5 lijkt meer op nablaterij dan op ervaring[b][message=25712766,noline] En naar mijn eigen ervaringen (en die van andere) is 6.x stukken stabieler dan 5.x
/(bb|[^b]{2})/
offtopic:
IMHO (en die van anderen
) is 6 stabieler.
Misschien zou je ook nog eens bronnen / ervaringen / concrete aanwijzingen kunnen geven. Zomaar gillen dat 5 beter / stabieler / sneller etc. is dan 6 lijkt meer op nablaterij dan op ervaring
IMHO (en die van anderen
Misschien zou je ook nog eens bronnen / ervaringen / concrete aanwijzingen kunnen geven. Zomaar gillen dat 5 beter / stabieler / sneller etc. is dan 6 lijkt meer op nablaterij dan op ervaring
Goed punt. Misschien is het nablaterij wat ik doe, echter wat ik lees op de mailinglists ten tijde van 5.1/5.2 en als je dat nu vergelijkt met 6.0/6.1 dan trek ik voor mezelf de conclusie dat de ervaring van andere ook uitwijzen dat 6.0/6.1 toch echt een stuk beter is dan 5.0/5.1.JohnR schreef op maandag 08 mei 2006 @ 16:06:
[...]
En naar mijn ervaring (en die van anderen) is 5.x weer stukken stabierel van 6.x Misschien zou je ook nog eens bronnen / ervaringen / concrete aanwijzingen kunnen geven. Zomaar gillen dat 6 beter / stabieler / sneller etc. is dan 5 lijkt meer op nablaterij dan op ervaring
Uiteindelijk kan je volgens mij 6.0 ook meer zien als een 5.5, behalve dat bij 6.0 de VFS multithreaded is.
Maar nogmaals, ik kan het niet hard maken.
Laten we het erop houden dat 3.3 stabiel is
/(bb|[^b]{2})/
Even een iets ander vraagje. Ik zelf ben onder andere beheerder van een webserver waar FreeBSD op draait. Als ik echter in top kijk zie ik dat ALLE processen op processor 0 draaien. Iemand enig idee hoe dit kan?
viper, wat is de configuratie? Is het een echte SMP-compu, want bijvoorbeeld hyperthreading zul je separaat moeten aanzetten. Doe ook maar eens "sysctl kern.smp".
[ Voor 51% gewijzigd door begintmeta op 09-05-2006 13:27 . Reden: quote niet nodig... ]
top onder FreeBSD 6.1-RC #6 met een Athlon X2 3800+ en SMP-kernel uiteraard:
Ok, hierbij de uitvoer van sysctrl hw.smp:
Toch zie ik bij top dat alle processen op proc 0 draaien.
Oowja,
kern.smp.maxcpus: 16 kern.smp.active: 1 kern.smp.disabled: 0 kern.smp.cpus: 2 kern.smp.forward_signal_enabled: 1 kern.smp.forward_roundrobin_enabled: 1
Toch zie ik bij top dat alle processen op proc 0 draaien.
Oowja,
# cat /var/run/dmesg.boot | grep -i CPU CPU: Intel(R) Pentium(R) 4 CPU 3.00GHz (2992.52-MHz 686-class CPU) Hyperthreading: 2 logical CPUs FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs cpu0 (BSP): APIC ID: 0 cpu1 (AP): APIC ID: 1 cpu0: <ACPI CPU> on acpi0 acpi_throttle0: <ACPI CPU Throttling> on cpu0 cpu1: <ACPI CPU> on acpi0 SMP: AP CPU #1 Launched!
[ Voor 8% gewijzigd door viper op 11-05-2006 15:13 ]
Sorry?Michael schreef op maandag 08 mei 2006 @ 15:56:
7.x is CURRENT en 6.x is inderdaad STABLE. En naar mijn eigen ervaringen (en die van andere) is 6.x stukken stabieler dan 5.x
is 6.1-STABLE ?
Bij versie 5 werd het pas vanaf 5.3 stable.. hoe kan 6.1 dan ook al STABLE zijn?
Ik vraag niet of het stabiel is he, ik bedoel of ie ook echt al 6.1-STABLE heet
Verwijderd
Sinds maandag wel 
Overigens is er al een stable branch vanaf 6.0. Als er een release is, is er ook een stable. FreeBSD 7 is alleen nog maar current.
Overigens is er al een stable branch vanaf 6.0. Als er een release is, is er ook een stable. FreeBSD 7 is alleen nog maar current.
[ Voor 77% gewijzigd door Verwijderd op 11-05-2006 18:51 ]
offtopic:
Dat klopt vzimwth niet helemaal mbeis: 3-stable bij 3.1; 4-stable bij 4.0; 5-stable bij 5.3 en 6-stable bij 6.0. Het is voor de geïnteresseerde trouwens allemaal op de website van FreeBSD te vinden
Dat klopt vzimwth niet helemaal mbeis: 3-stable bij 3.1; 4-stable bij 4.0; 5-stable bij 5.3 en 6-stable bij 6.0. Het is voor de geïnteresseerde trouwens allemaal op de website van FreeBSD te vinden
Viper heb je 2 CPUs/een CPU met 2 cores of heb je slechts hyperthreading (het laastste volgens mij)? HT staat namelijk vanwege een veiligheidsprobleempje standaard uit, dat zul je apart aan moeten zetten.
Verwijderd
Zou je dat dan aan moeten zetten in FreeBSD of in het BIOS? In FreeBSD heb ik het nooit aan hoeven zetten, als je een SMP kernel maakt dan doet HT het volgens mij ook.
Hyperthreading is standaard uitgeschakeld sinds de bewuste security advisory. Je kunt het bij twijfel uitproberen door "sysctl machdep.hyperthreading_allowed=1" te doen. Als dat het beoogde resultaat heeft, kun je overwegen "machdep.hyperthreading_allowed=1" aan /boot/loader.conf toe te voegen.
Verwijderd
Vreemd. Ik heb mijn smp compu al zo'n anderhalf jaar en ik heb in FreeBSD HT nog nooit aan hoeven zetten (ook niet na een upgrade of installatie na de waarschuwing).
Het stond in het begin van 5 (geloof ik) standaard aan in de kernel. Maar na ontdekking van een security probleem is het in de standaard kernel uitgezet. Dat wil dus zeggen; de GENERAL kernel die standaard geinstalleerd wordt. Heb je de gewoonte regelmatig je kernel opnieuw te bakken met eigen config dan zal je er nooit last van gehad hebben.
Wat betreft je -RELEASE/-STABLE vergelijking. Daar zit zeker een verschil tussen.
RELEASE is niet bij voorbaat STABLE. Er is nooit een 5.2-STABLE geweest maar wel 5.2-RELEASE.
Wat betreft je -RELEASE/-STABLE vergelijking. Daar zit zeker een verschil tussen.
RELEASE is niet bij voorbaat STABLE. Er is nooit een 5.2-STABLE geweest maar wel 5.2-RELEASE.
[ Voor 3% gewijzigd door xzenor op 12-05-2006 10:59 ]
Het is 1 P4, met hyperthreading:)
Dus vandaar alles @ CPU0..
sysctl machdep.hyperthreading_allowed = 0
Dus vandaar alles @ CPU0..
Verwijderd
Mijn kernel is altijd een generic kernel geweest, alleen met toevoeging van de SMP optie.possamai schreef op vrijdag 12 mei 2006 @ 10:35:
Het stond in het begin van 5 (geloof ik) standaard aan in de kernel. Maar na ontdekking van een security probleem is het in de standaard kernel uitgezet. Dat wil dus zeggen; de GENERAL kernel die standaard geinstalleerd wordt. Heb je de gewoonte regelmatig je kernel opnieuw te bakken met eigen config dan zal je er nooit last van gehad hebben.
De release is gewoon een momentopname van de stable branche. Als er een 5.2-rel is geweest was er ook een stable. Misschien heette hij toen 5-stable ipv 5.2-stable, dat weet ik niet. Dan moet ik wel zeggen dat ze de laatste tijd niet zo consequent zijn met naamgeving. Zo is er ook een "6.1-prerelease" geweest en een "6.1-beta". Dat maakt het inderdaad niet duidelijkerWat betreft je -RELEASE/-STABLE vergelijking. Daar zit zeker een verschil tussen.
RELEASE is niet bij voorbaat STABLE. Er is nooit een 5.2-STABLE geweest maar wel 5.2-RELEASE.
Om even kort te zijn over de naamgeving:
FreeBSD heeft zijn release procedure veranderd sinds versie 6 => dus namen uit verleden != ongelijk heden
Daarnaast vind ik dat possamai een beetje zijn ervaringen uit verleden op het heden projecteert. Dat 5.0 een slechte release was wil niet zeggen dat 6.0 een slechte release is. Als je gaat kijken naar de achtergrond, dan zou je dit ook snappen.
Zover ik tot op heden gezien heb is 6.0 super stabiel met een paar tricks is mysql super snel te maken http://wikitest.freebsd.org/moin.cgi/MySQL (nu ff down)
Ook wordt er gewerkt aan het automatisch laden van de juiste kernel SMP of non-SMP (misschien is het zelfs al, kan even niet terug vinden).
Voor wat betreft hyperthreading ik heb nog geen een server met apache of mysql sneller zien werken , meerendeel zelfs langzamer (met simpele ab bench en super-smack). Vandaar dat ik als eerste hyperthreading uitzet in de bios.
FreeBSD heeft zijn release procedure veranderd sinds versie 6 => dus namen uit verleden != ongelijk heden
Daarnaast vind ik dat possamai een beetje zijn ervaringen uit verleden op het heden projecteert. Dat 5.0 een slechte release was wil niet zeggen dat 6.0 een slechte release is. Als je gaat kijken naar de achtergrond, dan zou je dit ook snappen.
Zover ik tot op heden gezien heb is 6.0 super stabiel met een paar tricks is mysql super snel te maken http://wikitest.freebsd.org/moin.cgi/MySQL (nu ff down)
Ook wordt er gewerkt aan het automatisch laden van de juiste kernel SMP of non-SMP (misschien is het zelfs al, kan even niet terug vinden).
Voor wat betreft hyperthreading ik heb nog geen een server met apache of mysql sneller zien werken , meerendeel zelfs langzamer (met simpele ab bench en super-smack). Vandaar dat ik als eerste hyperthreading uitzet in de bios.
http://www.bsdfreaks.nl Home site: http://rob.lensen.nu /me was RobL
Ho Ho, ik heb niet gezegd dat 5.0 een slechte release was. Het werd toen al die tijd afgeraden om te upgraden zolang het nog niet -STABLE was.. ook bij FreeBSD-4.x werd(en) de eerste versie(s) afgeraden in een productie-omgeving te draaien.rlensen schreef op zaterdag 13 mei 2006 @ 00:23:
Daarnaast vind ik dat possamai een beetje zijn ervaringen uit verleden op het heden projecteert. Dat 5.0 een slechte release was wil niet zeggen dat 6.0 een slechte release is. Als je gaat kijken naar de achtergrond, dan zou je dit ook snappen.
Ik zeg niet dat het slechte releases waren, ik ging er gewoon volledig vanuit dat dit de normale gang van zaken was. Dat de eerste releases die uit kwamen niet slecht waren, maar gewoon nog niet het -STABLE kenmerk hadden gekregen.
Blijkbaar zat ik er naast.
Ik zal de stap naar 6 ook eens gaan proberen.
Even voor de duidelijkheid, -STABLE wilt niet percee zeggen dat die versie stabiel is, enkel dat de kernel api niet meer zal veranderen, waardoor bijvoorbeeld drivers voor hardware niet tussen elke minor release aangepast hoeven te worden (ziei huidige linux discussies).
-STABLE is eigenlijk meer een preview van de volgende -RELEASE tag. Je kan een productieserver dus ook beter op -RELEASE laten draaien.
-STABLE is eigenlijk meer een preview van de volgende -RELEASE tag. Je kan een productieserver dus ook beter op -RELEASE laten draaien.
Met welke switch run je die top? Die 'C' zou ik er oo kwel bij willen zodat ik kan zien welke processor wat heeft.FiscBiker schreef op dinsdag 09 mei 2006 @ 23:14:
top onder FreeBSD 6.1-RC #6 met een Athlon X2 3800+ en SMP-kernel uiteraard:
[afbeelding]
jep schreef op dinsdag 16 mei 2006 @ 14:42:
[...]
Met welke switch run je die top? Die 'C' zou ik er oo kwel bij willen zodat ik kan zien welke processor wat heeft.
top
Meer is niet nodig (bij mij).
[ Voor 5% gewijzigd door FiscBiker op 17-05-2006 11:52 ]
Nog even een puntje dat release niet altijd stable is..Michael schreef op maandag 15 mei 2006 @ 14:45:
Even voor de duidelijkheid, -STABLE wilt niet percee zeggen dat die versie stabiel is, enkel dat de kernel api niet meer zal veranderen, waardoor bijvoorbeeld drivers voor hardware niet tussen elke minor release aangepast hoeven te worden (ziei huidige linux discussies).
-STABLE is eigenlijk meer een preview van de volgende -RELEASE tag. Je kan een productieserver dus ook beter op -RELEASE laten draaien.
http://www.freebsd.org/do...del/release-branches.html
(Loopt iets achter want 6.1 staat er nog niet bij..)
http://www.freebsd.org/do...oks/handbook/history.html
[ Voor 6% gewijzigd door xzenor op 17-05-2006 11:08 ]
Verwijderd
Dit lijkt mij juist te bewijzen dat alle releases wel stable zijn. Alle releases zitten in de stable branch, inclusief de "major" releases als 4.0, 5.0 etc. want de major releases zijn namelijk de eerste stable versie van de stable branch.possamai schreef op woensdag 17 mei 2006 @ 11:05:
[...]
Nog even een puntje dat release niet altijd stable is..
http://www.freebsd.org/do...del/release-branches.html
(Loopt iets achter want 6.1 staat er nog niet bij..)
Een nieuwe current kan ergens uit de voorafgaande stable release komen (zo komt 5.0-current meteen uit 4.0-release maar komt 6.0-current uit 5.3-release), totdat ze het stabiel vinden en het als eerste van een stable branch als release vrijgeven. De stable branch wordt vervolgens doorontwikkeld totdat de daaropvolgende stable branch voldoende doorontwikkeld is.
Op een productieserver wil je in principe altijd een -RELEASE-pX draaien, dus bijvoorbeeld 5.3-RELEASEp2. Normaal gezien wordt alle nieuwe code in -CURRENT gecommit, en dan na enkele weken, als het mogelijk is, gemerged naar de -STABLE branch. Op het moment dat er een nieuwe minor release aankomt, wordt de -STABLE tree gefreezed, en komt de release cycle opgang, dus verschillende beta releases en release candidates. Op het moment dat -STABLE echt stabiel is wordt die getagged als -RELEASE, en kunnen er weer patches gemerged worden vanaf -CURRENT naar -STABLE.
De -RELEASE tag heeft dan dus ook uitgebreidere test's gehad. En er worden in de toekomst enkel nog security patches aangebracht (de -pX).
Dat dit bij de eerste 3 minor release van FreeBSD 5.x anders was lag meer aan de problemen en hoeveelheid nieuwe code in die release.
De -RELEASE tag heeft dan dus ook uitgebreidere test's gehad. En er worden in de toekomst enkel nog security patches aangebracht (de -pX).
Dat dit bij de eerste 3 minor release van FreeBSD 5.x anders was lag meer aan de problemen en hoeveelheid nieuwe code in die release.
Ik herinnerde me deze discussie, nu met de release van FreeBSD 6.4 de switch -P toe is gevoegd aan top en vmstat.
top -P:
top -P:
Pagina: 1