Eisenfaust
Well-Known Member
Hallo.
Vielleicht kann mir einer der Experten weiterhelfen.
ich arbeite mit zwei verschienden Hardwareplattformen mit FreeBSD 6.2-PRE in der jeweils aktuellsten Version und mit nahezu identischer Konfiguration, soweit das möglich ist. Meine Labormaschine ist eine i386-Maschine, die andere eine amd64-Maschine.
i386: P4 Prescott, 3.0 GHz, 1MB 2nd Level Cache, HT (eingeschaltet), 2GB DDR400 RAM, Mainboard ASUS P4P800. 2x ATA100 Platten, WD, a 130 GB, am selben Controller, kein RAID 0. SMP-Kernel.
amd64: Athlon64 3500+ (Winchester), 2,2 GHz, 512KB Level 2 Cache, 2GB DDR400-ECC RAM, Mainboard ASUS A8N32-SLI, 2x Hitachi T7K250 SATA II a 250 GB, RAID 0 am nForce4 Controller. UP Kernel.
Die AMD64 Maschine läuft als __reine__ 64Bit Maschine, keine 32Bit Kompatibilität.
Beide Rechner sind derzeit mit FreeBSD 6.2-PRE konfiguriert, cvsupdate heute, make buildworl auch heute. Der i386 Rechner hat einen SMP Kernel, um HT nutzen zu können, die amd64 Box einen UP Kern.
Wenn ich auf beiden Maschinen ein make -j2 buildworld installworld starte, benötigt die i386 Maschine ca. 60 Minuten, die amd64 Kiste über 90 Minuten. Das Bild ändert sich nicht signifikant mit make ohne -j-Option und i386 mit UP Kernel ohne HT.
Generell stelle ich seit ca. 2 Monaten fest, daß der amd64 Port auf meinem Rechner zunehmend 'langsamer' wird.
Das Problem läßt sich auch nicht durch Wechsel des Schedulers beheben. Lobte man zur zeit von FreeBSD 6.0 noch SCHED_ULE, wird ab version 6.2 wieder SCHED_4BSD favorisiert, weil SCHED_ULE ganz offenbar mit SMP Systemen Probleme bereitet. In meinem Falle, unter amd64, ist es aber umgekehrt, SCHED_4BSD läßt die Maschine ruckeliger erscheinen als mit SCHED_4BSD.
Obwohl mein Laborrechner die deutlich ältere und leistungsschwächere Hardware hat, ist diese Maschine __deutlich__ schneller! Während auf der i386 Platform noch MySQL, cups laufen, ist der amd64 Kasten von solchen Diensten 'befreit' - und dennoch wesentlich langsamer! Auch eine Neuübersetzung aller Ports hat nichts an diesem verzerrten Bild geändert!
Da ich nicht ganz neu mit FreeBSD bin und gewissermaßen beobachten konnte, wie sich von cvsupdate zu cvsupdate die Leistung der 64Bit Version 'verschlechterte', will ich hier fragen, wer ebenfalls solche Beobachtungen gemacht hat. In den offiziellen Mailinglisten kriegt man hierzu oft nur lapidare Bemerkungen zurück, man habe etwas falsch gemacht. Wenn ich beschreiben würde, was ich alles schon zur Optimierung ausprobiert habe, würde keiner die lange eMail lesen.
Mich enttäuscht im Moment sehr, daß der vielgelobte SCHED-ULE nun auch schon zum Problemfall geworden ist und man wieder auf den betagten und inadäquaten SCHED_4BSD zurückfällt. Wie jüngst zu lesen war ist scheinbar auch die Netzwerkleistung unter FBSD 6.X UP/SMP weit abgeschlagen hinter FreeBSD 4.11 und Linux Kernel 2.6.15.
Grüße ...
Vielleicht kann mir einer der Experten weiterhelfen.
ich arbeite mit zwei verschienden Hardwareplattformen mit FreeBSD 6.2-PRE in der jeweils aktuellsten Version und mit nahezu identischer Konfiguration, soweit das möglich ist. Meine Labormaschine ist eine i386-Maschine, die andere eine amd64-Maschine.
i386: P4 Prescott, 3.0 GHz, 1MB 2nd Level Cache, HT (eingeschaltet), 2GB DDR400 RAM, Mainboard ASUS P4P800. 2x ATA100 Platten, WD, a 130 GB, am selben Controller, kein RAID 0. SMP-Kernel.
amd64: Athlon64 3500+ (Winchester), 2,2 GHz, 512KB Level 2 Cache, 2GB DDR400-ECC RAM, Mainboard ASUS A8N32-SLI, 2x Hitachi T7K250 SATA II a 250 GB, RAID 0 am nForce4 Controller. UP Kernel.
Die AMD64 Maschine läuft als __reine__ 64Bit Maschine, keine 32Bit Kompatibilität.
Beide Rechner sind derzeit mit FreeBSD 6.2-PRE konfiguriert, cvsupdate heute, make buildworl auch heute. Der i386 Rechner hat einen SMP Kernel, um HT nutzen zu können, die amd64 Box einen UP Kern.
Wenn ich auf beiden Maschinen ein make -j2 buildworld installworld starte, benötigt die i386 Maschine ca. 60 Minuten, die amd64 Kiste über 90 Minuten. Das Bild ändert sich nicht signifikant mit make ohne -j-Option und i386 mit UP Kernel ohne HT.
Generell stelle ich seit ca. 2 Monaten fest, daß der amd64 Port auf meinem Rechner zunehmend 'langsamer' wird.
Das Problem läßt sich auch nicht durch Wechsel des Schedulers beheben. Lobte man zur zeit von FreeBSD 6.0 noch SCHED_ULE, wird ab version 6.2 wieder SCHED_4BSD favorisiert, weil SCHED_ULE ganz offenbar mit SMP Systemen Probleme bereitet. In meinem Falle, unter amd64, ist es aber umgekehrt, SCHED_4BSD läßt die Maschine ruckeliger erscheinen als mit SCHED_4BSD.
Obwohl mein Laborrechner die deutlich ältere und leistungsschwächere Hardware hat, ist diese Maschine __deutlich__ schneller! Während auf der i386 Platform noch MySQL, cups laufen, ist der amd64 Kasten von solchen Diensten 'befreit' - und dennoch wesentlich langsamer! Auch eine Neuübersetzung aller Ports hat nichts an diesem verzerrten Bild geändert!
Da ich nicht ganz neu mit FreeBSD bin und gewissermaßen beobachten konnte, wie sich von cvsupdate zu cvsupdate die Leistung der 64Bit Version 'verschlechterte', will ich hier fragen, wer ebenfalls solche Beobachtungen gemacht hat. In den offiziellen Mailinglisten kriegt man hierzu oft nur lapidare Bemerkungen zurück, man habe etwas falsch gemacht. Wenn ich beschreiben würde, was ich alles schon zur Optimierung ausprobiert habe, würde keiner die lange eMail lesen.
Mich enttäuscht im Moment sehr, daß der vielgelobte SCHED-ULE nun auch schon zum Problemfall geworden ist und man wieder auf den betagten und inadäquaten SCHED_4BSD zurückfällt. Wie jüngst zu lesen war ist scheinbar auch die Netzwerkleistung unter FBSD 6.X UP/SMP weit abgeschlagen hinter FreeBSD 4.11 und Linux Kernel 2.6.15.
Grüße ...