IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Delphi Discussion :

Maximum d'adressage mémoire


Sujet :

Langage Delphi

  1. #1
    Membre habitué Avatar de neodelphi2007
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    202
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 202
    Points : 179
    Points
    179
    Par défaut Maximum d'adressage mémoire
    Bonjour,

    Je voudrais savoir si il existe un moyen d'adresser plus de 4 gigas de ram que permet Delphi pour des applications 64bits ou 32Bits(3 Gigas).

    Merci.

  2. #2
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 534
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 534
    Points : 25 082
    Points
    25 082
    Par défaut
    A partir de Delphi XE... oui
    En 32bits, tu seras limité à 2Go ou 3Go selon le commutateur en base de registre, même si une variable Delphi sera toujours limité à 2Go
    En 64bits, le processus peut utiliser plus de RAM, mais j'ignore si la limite de la taille d'une variable s'applique ou non !

    Suffit de faire le test suivant que j'ai repris de mon post sur Phidels
    Ayant un poste de 4Go, je ne peux pas te dire si cela dépasse !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
    procedure TFrmTestMemory.BtnPointerIntArray2GoClick(Sender: TObject); 
    type 
      TByteMatrix1024By1024 = array [0..1023, 0..1023] of Byte; 
     // TByteMatrix1024By1024Array = array[0..2047] of ^TByteMatrix1024By1024; // 32Bit - 2Go 
      TByteMatrix1024By1024Array = array[0..16383] of ^TByteMatrix1024By1024; // 64Bit - 16 Go, si  tu as 8 To en stock, tu peux théoriquement les utiliser :mouarf:
    var 
      Tableau: TByteMatrix1024By1024Array; 
      I, K: Integer; 
    begin 
      //for I := 0 to 2047 do // 32Bit - 2Go 
      for I := 0 to 16383 do // 64Bit - 16 Go
      begin 
        try 
          GetMem(Tableau[I], 1024*1024); 
          K := I; 
        except 
          on E: Exception do 
          begin 
            ShowMessage(IntToStr(I)); 
            Break; 
          end; 
        end; 
      end; 
     
      for I := K downto 0 do 
        try 
          FreeMem(Tableau[I]); 
        except 
          on E: Exception do 
            OutputDebugString(PChar(Format('Free %d : %s', [K, E.Message]))); 
        end; 
    end;
    Edit
    Je viens de redémarrer, déjà 1,51 Go de bruit de fond de l'OS et autre
    Trois essais :
    32: Last Alloc 1793 à 1795
    64: Last Alloc 10175 à 16383

    Je ne sais pas comment il m'alloue 10Go avec seulement 4Go physique ? le swap ????
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  3. #3
    Membre habitué Avatar de neodelphi2007
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    202
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 202
    Points : 179
    Points
    179
    Par défaut
    Merci ShaiLeTroll,

    j'arrive à utiliser 64gigas de RAM sur mes 96 gigas disponible !

    Aucun doute que je peux en utiliser plus... :-)

Discussions similaires

  1. [CR XI] Probleme Adressage Mémoire CRW32.exe
    Par jalel75 dans le forum Débuter
    Réponses: 1
    Dernier message: 10/02/2011, 08h35
  2. Réponses: 2
    Dernier message: 03/12/2010, 09h59
  3. Calcul d'adressage mémoire
    Par khadi8 dans le forum Autres architectures
    Réponses: 1
    Dernier message: 07/11/2010, 00h14
  4. Réponses: 20
    Dernier message: 21/04/2008, 14h12
  5. adressage mémoire avec gcc
    Par fraisdos dans le forum C
    Réponses: 4
    Dernier message: 29/09/2005, 15h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo