Salut ,
Je poste se topic car comme il est dit dans le titre , j'ai un problème
Depuis quelque jours , il est impossible pour moi de joué en darkrp , car quand j'essaye de rejoindre un serveur , quelques secondes de chargements , un message d'erreur apparaît , le message dit , je cite : " lua panic something went horribly wrong not enough memory " , j'ai beau chercher sur internet , aucune réponse à cette question
Maintenant , je vais parler de ma config :
MSI AP16 Flex-001EU
Intel Celeron J1900 4 Go 500 Go LED 15.6" Tactile Wi-Fi AC/Bluetooth Webcam Windows 8.1 64 bits
Je vous remercie d'avance pour cette aide.
t'a plus de place...
malloc fail
T'as pas assez de ram
Le 26 juin 2015 à 16:09:37 EA_France a écrit :
malloc failT'as pas assez de ram
Portant sa fait au moins un ans que j'ai garry's mod , avec le même ordinateur & j'ai jamais eu ça ...
too bad
Sélection naturelle.
Le 26 juin 2015 à 19:46:17 Dr-Steinman a écrit :
Sélection naturelle.
?
Vérifie la place restante sur ton disque dur.
"malloc fail"
Lapin, je vais te demander quelque chose, car tu m'as l'air le plus qualifié pour répondre à cette question: Oui, il n'a pas assez de Ram pour gérer ça, mais cependant, est ce que libérer de la ram utilisée pourrait lui permettre de pouvoir le faire? Est ce que ce n'est pas un problème venant des différentes tâches exécutées? Car peut être que le fonctionnement de ce calcul se fait par rapport à la capacité de la carte RAM en elle même, mais peut être aussi du calcul de l'allocation dynamique "possible" par rapport à la mémoire vive disponible? Je ne vais pas cacher mon manque d'expérience, Car je souhaite apprendre, je mélange encore peut être les pinceaux.
Quand tu alloue de mémoire sous windows il y a deux cas :
1er : Il y a de la place, donc ca fonctionne
Dans ca cas, ca va prendre un seul et même bloc phisiquement dans la ram, ca va occupée un espace unique non séparé, il n'y aura pas de fragmentation (comme sur le disque dur)
2eme cas: Il n'y a pas de place dans la ram
Alors là on va cherche dans le swap, c'est la ram de secour... qui est en faire le disque dur, mais evidemment, ca fait que 100mb/sec contre du 10gb/s en moyenne pour la ram.
S'il n'y a pas de SWAP de dispo, là c'est la merde, car normalement dans ton programme, quand tu le fais, et que tu alloue de la mémoire, la fonction qui aloue de la mémoire te retourne (en gros) l'adresse physique où est stockée la donnée sur ta ram. Si ca fail, ca retourne une valeur null (A la place de 0xA4BC57FB (ou un truc dans le genre), on aura 0x00000000, et si tu verifie pas que la valeur est égale a une valeur fausse (0x00000000, ton programme va crash )
Pour en revenir à ta question : Oui, si d'autres programmes prennent de la ram, et s'il n'y a pas de bloc libre assez gros, ca va poser problème.
Tu peux degager les autres progs pour liberer de l'espace, oui.
Un programme ne peut pas se planter en croyant qu'il n'y pas assez de ram, y'a pas de "je check avant de sauvegarder la mémoire", c'est :
Je sauvegarde ma mémoire et je regarde si ca casse, si ca casse, je balance un message d'erreure et je choisis de fermer mon programme ou pas (car de toute facon, si t'as pu' de ram tu peux plus faire grand chose)
Après y'a des alternatives à ca, les listes chainés, pour illustrer ca :
Le malloc traditionnel revient à mettre toute une rangée de maisons dans une rue.
Disons que une rue peut avoir 20 maisons.
Si tu veux allouer 21 maisons, ca passe pas, ca va vers le swap (disque dur)
Si tu veux en allouer 10, ca passe, SAUF s'il y a une seule maison case 7 et une autre case 15, là tu ne pourra pas loger ton bloc de 10 maisons, la solution est de sauvegarder une maison par une maison, et coller sur la maison l'adresse de la maison suivante, donc c'est juste histoire de place libre et pas de "taille du plus gros bloc libre" dans la ram.
Après cette technique est plus lente coté CPU, pour attendre la toute dernière maison, tu vas pas au bout de la rue (car tu sais pas ou est la dernière maison etant donné que tu remplis des casses de 1, 1 par 1, donc tu remplis les trous libres et pas les grosses plages libres)) tu dois donc parcourir maison par maison, regarder sur le mur de chaque maison, où est la maison suivante que tu cherche, jusqu'a arriver a la maison qui n'a pas "d'adresse de maison suivante dessus".
Déso pour les fautes (et surtout accents) je suis sur un QWERTY, c'est pas EZ
Ah mais oui! Quel con, Le SWAP! On avait étudié ça en systèmes! Oui dans ce cas là, je te te remercie énormément pour ta réponse, elle est très formateur, je la sauvegarderais aussi quand j'aurais encore besoin d'apprendre mes différents concepts d'allocations!
Merci encore Lapin, ça m'aide énormément.
Bonjour, du coup comment on fait de la place? On doit supprimer des logiciels sur l'ordi?
google :
Activer swap
(swap, pas swag)
Le swap c'est bien la mémoire virtuelle , si oui , j'ai beau augmenter la taille initiale & la taille maximal , toujours la même erreur , si je reformate mon ordinateur , mon gmod marchera t'il ou pas ?
Qui ne tente rien de mange pas de pain.
J'ai exactement le meme problème alors que je viens de restaurer mon pc et j'ai 266 GO libres
Encore un qui confond la RAM et le Disque Dur.
disk tré dur lol
Bonjour,
j'ai aussi le même souci, pourtant j'"ai 16 Go de ram . Gmod marche sur d'autres servers mais je lancement n'aboutis pas sur un server précis.
@itsEvan as tu eu la solution stp ?
Bonjours , j'ai également le même problème ,
ma config:
-i5 6600k
-gtx 960
-8go de ram
C'est la premier fois que j'ai se probleme en 850h de jeux ..
une solution ?