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

C++ Discussion :

Max memory allcoation


Sujet :

C++

  1. #1
    Membre �prouv� Avatar de uriotcea
    Homme Profil pro
    Ing�nieur / physicien
    Inscrit en
    Septembre 2003
    Messages
    1 301
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activit� : Ing�nieur / physicien
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2003
    Messages : 1 301
    Par d�faut Max memory allcoation
    Bonjour,

    J'ai un compilateur C++ (32 bits) et je l'utilise sur une machine Xp 64bits
    Visiblement quand j'implemente des alloction m�moire avec des "new" je suis je pense donc que je devrais etre limit� � 2GOctets d'allocation max due au compilateur?.
    J'ai 8 GO sur ma machine et pourtant je n'arrive pas � allouer plus de 1.1 GO d'un coup et 1.5 par petit bout.
    Qu'est ce qui peut bien me limiter comme ca. J'ai 8 Go de m�moire libre !

    Merci d'avance de votre aide

  2. #2
    Membre �clair�
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    646
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 646
    Par d�faut
    Salut
    Citation Envoy� par uriotcea
    Bonjour,
    J'ai 8 GO sur ma machine et pourtant je n'arrive pas � allouer plus de 1.1 GO d'un coup et 1.5 par petit bout.
    Qu'est ce qui peut bien me limiter comme ca. J'ai 8 Go de m�moire libre !
    concernant ce probleme, en fait c'est parce que ta memoire est fractionner. Le plus simple c'est par l'exemple:
    - - - - -
    5 case de 1 Mo chacune
    Si un programme en utilise 2:
    + + - - -
    - = libre
    + = utilise
    Il t'en reste 3

    Maintenant si un autre programme veut 1 Mo, on se retrouve dans ce cas la:
    + + + - -
    Il t'en reste 2

    Maintenant le premier programme se termine, il te restera 4Mo apres liberation:
    - - + - -
    Mais tu es incapable d'allouer 3Mo d'un coup, Ok? par contre tu pourra allouer 3 fois 1Mo ou 1 fois 2Mo et 1 fois 1Mo, par petit bout comme tu dis .

    et pour l'autre question je suis pas expert en matos donc je saurai pas dire.

    PS: tu les vois bien tes 8Giga, ils sont bien reconnus par windows?
    Un test interessant serait d'essayer de faire monter ta memoire et de regarder a combien il se met a swapper.

  3. #3
    Membre �prouv� Avatar de uriotcea
    Homme Profil pro
    Ing�nieur / physicien
    Inscrit en
    Septembre 2003
    Messages
    1 301
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activit� : Ing�nieur / physicien
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2003
    Messages : 1 301
    Par d�faut
    Oui windows voit bien les 8 Go
    Quand je lance plusieurs applis consommant 1Go chacune, pas de probleme je peux en lancer 7 ou 8

  4. #4
    Expert confirm�

    Homme Profil pro
    Ing�nieur syst�mes et r�seaux
    Inscrit en
    F�vrier 2007
    Messages
    4 253
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rh�ne (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : Ing�nieur syst�mes et r�seaux
    Secteur : High Tech - Multim�dia et Internet

    Informations forums :
    Inscription : F�vrier 2007
    Messages : 4 253
    Billets dans le blog
    3
    Par d�faut
    C'est pas vraiment un probl�me de fragmentation...

    Dans Windows, chaque process a son propre mapping d'addresse (donc non fragment�, en tout cas au d�marrage de l'appli ) par pages de 64K (IIRC).


    Par contre:
    - Compiles tu bien pour windows 64 ? (pour faire du code x64 et non x86)
    - Quand tu executes ton programme, le vois tu dans le task-manager sans asterisque ?

    Si la r�ponse est non dans l'une ou l'autre, alors ton programme est en 32bits et tourne en mode WOW32, et donc comme n'importe quelle appli 32 bits sous XP 32 bits, avec un espace d'addressage limit� � 2Go (- les Mo pris par les DLLs et EXEs).

  5. #5
    Membre �prouv� Avatar de uriotcea
    Homme Profil pro
    Ing�nieur / physicien
    Inscrit en
    Septembre 2003
    Messages
    1 301
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activit� : Ing�nieur / physicien
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2003
    Messages : 1 301
    Par d�faut
    Oui je compile en 32 bits, c'est pourquoi de doit etre limit� � 2 G
    Mais pourquoi ne puis-je pas allouer plus de 1.1 G d'un coup et 1.6 G par petit bout. j'esperais pouvoir allouer au moins 1.9G d'un coup. mon solft n'uilise pas grand chose en m�moire, dll incluse

  6. #6
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    Pour ce genre de question, je serais tent� de dire "il y a un truc, on ne sait pas quoi, qui occupe 400Mo d'adressage" et "il n'y a pas d'espace libre contigu de plus d'1.1G".

    La premi�re affirmation est douteuse, la seconde est par contre tr�s probable...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  7. #7
    Membre �prouv� Avatar de uriotcea
    Homme Profil pro
    Ing�nieur / physicien
    Inscrit en
    Septembre 2003
    Messages
    1 301
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activit� : Ing�nieur / physicien
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2003
    Messages : 1 301
    Par d�faut
    Avec 8 G de m�moire sur la machine, je suis surpris qu'il n'y ai pas plus de 1G contigu?

  8. #8
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    Il n'est pas question ici des 8Go de la machine, mais des 2Go Utilisateur de ton programme 32 bits.
    (et �a ne s'appelle pas WOW32 mais WOW64 : WOW32, c'�tait du Win16 sur du Win32, et on appelait juste �a "WOW")
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

Discussions similaires

  1. [11gR2] MEMORY MAX TARGET
    Par lynxdu37 dans le forum Administration
    R�ponses: 14
    Dernier message: 19/04/2015, 18h23
  2. [2008R2] Max sever memory
    Par Kropernic dans le forum Administration
    R�ponses: 12
    Dernier message: 13/03/2013, 14h44
  3. Augmenter le max memory ASE
    Par bouzahme dans le forum Adaptive Server Enterprise
    R�ponses: 10
    Dernier message: 26/10/2010, 22h19
  4. R�ponses: 3
    Dernier message: 14/02/2007, 16h51
  5. Utilisation de MAX dans une requ�te SQL
    Par Evil onE dans le forum Langage SQL
    R�ponses: 7
    Dernier message: 15/06/2004, 18h38

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