Das gleiche Programm, das 'mmap' verwendet, verhält sich auf verschiedenen Maschinen unterschiedlich

Das gleiche Programm, das 'mmap' verwendet, verhält sich auf verschiedenen Maschinen unterschiedlich

Ich führe eine Anwendung aus, die eine riesige Speicherzuordnungsdatei auf zwei verschiedenen Maschinen verwendet (CentOS 7).

Ich habe festgestellt, dass die Leistung desselben Programms erheblich abweicht, wenn es auf zwei verschiedenen Computern ausgeführt wird.

Der Grund hierfür lag darin, dass eine Maschine eine übermäßige Menge an Festplatten-E/A verwendete, da die meisten Seiten auf Festplatten ausgelagert wurden.

Wenn ich den Befehl ausführe top , beträgt die Größe des gemeinsam genutzten Speicherbereichs auf der langsamen Maschine nur wenige Megabyte. Auf der schnelleren Maschine beträgt die Größe des gemeinsam genutzten Speicherbereichs etwa 6 GB, was bedeutet, dass die meisten Daten im OS-Seitencache zwischengespeichert sind.

Ich habe überprüft, dass genügend (mehr als 16 GB) freier Speicherplatz vorhanden ist, der ausreicht, um die gesamte im Speicher zugeordnete Datei zwischenzuspeichern.

Kann mir jemand eine Idee zu diesem Problem geben?

verwandte Informationen