16-04-2013, Tuesday-17:11:24
Ich frage mich oft, was der eigentliche Flaschenhals bei Simutrans ist. Ich hatte immer wider den verdacht, dass vor allem bei großen karten mit vielen fahrzeugen die Speicherbandbreite zum Begrenzenden Faktor wird - Simutrans muss dann so viele Datem aus dem Speicher lesen und zurückschreiben, dass der Bus zu 100% ausgeslastet ist.
Ich konnte das nie richtig verfizieren, aber ein Testprogramm ergab, dass verteile Speicherzugriffe auf größere Speicherbrteiche wie sie für Simutrans typisch sind, den Durchsatz der Speicherbusse drastisch senken. Auf meinem Testsystem (es war 2002 oder 2003, ich gleube ein Pentium II mit 350 Mhz) brach z.B. der Durchsatz meines Testprogramms von etwa 120Mb/s auf unter 5MB/s ein, wenn die Zugriffe schlecht verteilt waren. Heute ist die Speicherbandbreite ein Vielfaches davon, aber man spielt heute auch viel größere Karten, somit habe ich immer noch den Verdacht, dass bei großern Karten weder Anzahl der Cores noch der Takt entscheident sind, sondern lediglich die Speicherzugriffe - die Grafikdarstellung transferiert auch noch mal fleissig Speicher, vor allem bei großen Fenstern/großer Aulfösung, somit deckt sich das mit der Beobachung, dass eine Reduktion der Framerate hilft. Viel gerechnet wird beider Grafikdarstellung nicht, aber viel Speicher kopiert.
Ich konnte das nie richtig verfizieren, aber ein Testprogramm ergab, dass verteile Speicherzugriffe auf größere Speicherbrteiche wie sie für Simutrans typisch sind, den Durchsatz der Speicherbusse drastisch senken. Auf meinem Testsystem (es war 2002 oder 2003, ich gleube ein Pentium II mit 350 Mhz) brach z.B. der Durchsatz meines Testprogramms von etwa 120Mb/s auf unter 5MB/s ein, wenn die Zugriffe schlecht verteilt waren. Heute ist die Speicherbandbreite ein Vielfaches davon, aber man spielt heute auch viel größere Karten, somit habe ich immer noch den Verdacht, dass bei großern Karten weder Anzahl der Cores noch der Takt entscheident sind, sondern lediglich die Speicherzugriffe - die Grafikdarstellung transferiert auch noch mal fleissig Speicher, vor allem bei großen Fenstern/großer Aulfösung, somit deckt sich das mit der Beobachung, dass eine Reduktion der Framerate hilft. Viel gerechnet wird beider Grafikdarstellung nicht, aber viel Speicher kopiert.
Blogger blog blog