AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Speichernutzung > 2 GB in Windows Vista Home 32
Thema durchsuchen
Ansicht
Themen-Optionen

Speichernutzung > 2 GB in Windows Vista Home 32

Ein Thema von xcs · begonnen am 28. Nov 2008 · letzter Beitrag vom 28. Nov 2008
Antwort Antwort
xcs

Registriert seit: 31. Mär 2008
14 Beiträge
 
#1

Speichernutzung > 2 GB in Windows Vista Home 32

  Alt 28. Nov 2008, 08:15
Hallo,
ich habe ein Programm geschrieben, welches mehr als 2 GB RAM benötigt.
Ich benutze Delphi 7.0 bzw. Delphi 2006 for Win 32.
In den Quelltext der Projektdatei habe ich den Schalter

{setPEFLAGS $20}

eingefügt.

Unter Windows XP funktioniert das Programm super (ich kann bis 3 GB RAM nutzen).
Aber unter Windows Vista Home Edition (32 Bit) funktioniert das nicht, obwohl ich bereits den Schalter

bcdedit -set loadoptions " /3GB"

gesetzt habe.
Wenn das Programm den Speicher reservieren will, kommt bei ziemlich genau 2 GB die Windows-Meldung: "zu wenig Arbeitsspeicher".
(das System hat 4 GB RAM)


Kann mir da jemand helfen? Muss ich für Windows Vista eine andere compiler-Anweisung als [setPEFLAGS $20} eingeben?
Oder muss ich es extra unter Windows Vista kompilieren?
(habe es bisher immer auf dem Windows XP System kompiliert)



Danke.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Speichernutzung > 2 GB in Windows Vista Home 32

  Alt 28. Nov 2008, 08:23
Zitat von xcs:
ich habe ein Programm geschrieben, welches mehr als 2 GB RAM benötigt.
Da würde ich mir noch mal über das Design Gedanken machen. Was macht denn dein Programm, dass es so viel Speicher benötigt?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#3

Re: Speichernutzung > 2 GB in Windows Vista Home 32

  Alt 28. Nov 2008, 09:17
Der Compilerschalter ist der gleiche, aber die nötigen Einstellungen im OS-Bootmenü sind AFAIK andere.

Aber ich kann Luckie zustimmen: Sind wirklich 2 GB nötig? Sowas kann ich mir nur im CAD-Bereich vorstellen wo z.B. ein kompletes Auto im CAD-Programm geladen wird. Dort sind 2 GB schon sehr wenig (trotz Optimierter implementierung).
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
xcs

Registriert seit: 31. Mär 2008
14 Beiträge
 
#4

Re: Speichernutzung > 2 GB in Windows Vista Home 32

  Alt 28. Nov 2008, 10:48
Zitat von Luckie:
Da würde ich mir noch mal über das Design Gedanken machen. Was macht denn dein Programm, dass es so viel Speicher benötigt?
Wusste ich, dass diese Frage kommt.
JA, es ist notwendig, weil ich numerische Berechnungen durchführe, für die ich Speicher für mehr als 4 Millionen Instanzen eines Objektes reservieren muss. Eine Instanz benötigt 500 bis 1000 Byte (abhängig davon, ob ich double oder single verwende).

Also zurück zur eigentlichen Frage:
Es liegt also NICHT am Compiler-Schalter?
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Speichernutzung > 2 GB in Windows Vista Home 32

  Alt 28. Nov 2008, 11:04
Eine Klasse wird 4 Milionen man instanziert? Und du brauchts alle 4 Millionen Instanzen gleichzeitig? Kannst du uns etwas mehr über den Aufbau und die Funktionweise deines Programmes sagen?

An über 2 GB RAM kommt man nur, wenn man in der Boot.ini einen entsprechenden Schalter setzt und den Compiler entsprechend anweist diesen bei der Kompilierung zu berücksichtigen. Aber das ist eigentlich keine Lösung, da 1 GB für das Betriebssystenm schon hart an der untersten Grenze ist. Würde mich nicht wundern, wenn du da auf der ein oder anderen Windows Installation Probleme bekommen könntest. Es läuft also immer auf ein Verbangspiel hinaus, ob dein Programm läuft oder nicht. Das nur mal so als Hinweis.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#6

Re: Speichernutzung > 2 GB in Windows Vista Home 32

  Alt 28. Nov 2008, 11:04
Zitat von xcs:
Eine Instanz benötigt 500 bis 1000 Byte (abhängig davon, ob ich double oder single verwende).
Mit oder ohne Debug-Infos? Und wieso machst du Objekte? Jede-Objektinstanz hat selbst noch einen Overhead. Hier ist evtl. sinnvoller ein Masterobjekt zu haben da z.B. über ein verkettete List/Array die "Objekte" als Records realisiert.

Zitat von xcs:
Also zurück zur eigentlichen Frage:
Es liegt also NICHT am Compiler-Schalter?
Nein. Hab auch schon mal probiert Vista (Business) "zu pimpen" und bin selbst gescheidert. Stört aber nicht da ich es dann auf unserem Windows 2008 Server mit 8 GB teste
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:04 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz