Mittels SETOBJACC, das ist meine Erfahrung, verschlechterst du das Pagingverhalten.
Du nimmst nämlich ordentlich Speicher weg, der dem Paging dann nicht mehr zur Verfügung stellst.
Benutzt du da keinen eigenen Pool, bringt das noch weniger, da die geladenen Objekte per Paging wieder verdrängt werden. Hinzu kommt, dass SETOBJACC das gesamte Objekt in den Speicher lädt.
Außerdem ist der Zugriff auf die Tabellen nicht das Problem, sondern der Zugriff über Indizes.
Fehlende Indizes sind dazu noch störender und VARLEN/Varying Felder erfodern u.U. doppelte Zugriffe.

Die Frage ist eben, welche Objekte genau in den RAM geladen werden.

Ich nehme mal nur eine einfache Tabelle, in der Informationen per Datum über die letzten 20 Jahre gespeichert sind.
Wie ist die Verteilung der Zugriffe hier?
Sind da nicht i.d.R. 99% der Zugriffe auf 5% der Daten?
Und nehme ich nun kleinere Tabellen (incl. Indizes!) auf die sehr häufig zugegriffen werden, so landen diese langfristig sowieso fast statisch in den Speicher.