Annonces Google
Serveur IRC
Serveur : irc.portlane.se
Canal : #AmigaNG
Activité du Site

Pages vues depuis 25/07/2007 : 25 183 503

  • Nb. de membres 187
  • Nb. d'articles 1 270
  • Nb. de forums 19
  • Nb. de sujets 20
  • Nb. de critiques 24

Top 10  Statistiques

Index du forum »»  OS4 sur AmigaOne X5000 »» A la recherche de RAM disparue

A la recherche de RAM disparue#2609

6Contributeur(s)
AmiguyK-LElwoodthelliercorto
3 Modérateur(s)
K-LElwoodcorto
Amiguy Amiguyicon_post
Salut à tous,

Mon AmigaOne X5000 est équipé d'une barrette de RAM de 4Go. Or, je ne dispose en permanence que de 2Go. La commande Avail du Shell montre d'ailleurs :

Installée : 2 147 479 552 <= ???
Libre : 1 829 507 072

Est-ce normal ? Pour ceux qui possèdent un X5000, avez-vous le même comportement ?
AmigaOne X5000 2Ghz / 8Go Ram - Radeon RX 560 4Go- SSD 2x4To - Sound Blaster Audigy FX 5.1 SBX - AmigaOS4.1 FE
K-L K-Licon_post
C'est normal : AmigaOS4.1 ne sait pas gérer plus de 2 Go de RAM.

Bon, en fait si, mais il faut que le logiciel soit codé de manière à utiliser cette mémoire au-delà des 2 Go (mais cela n'apparaîtra de toute façon pas avec la commande avail).
--
AmigaONE X1000/1,8 Ghz (A-Eon), Radeon RX560, 2 Go de Ram et OS4.1 FE
Elwood Elwoodicon_post
il suffirait de modifier Avail pour qu'il prenne en compte cette nouvelle gestion de la mémoire.

Mais dans tous les cas, si j'ai bien compris, on n'a jamais 4Go utilisés en même temps. En fait Exec ment au logiciel qui demande à travailler sur de la mémoire "au delà des 2 Go". A chaque fois qu'une telle mémoire a besoin d'être accédée, Exec va s?EUR(TM)occuper de la déplacer de la mémoire virtuelle sur disque vers la mémoire "en dessous des 2 Go" pour que ces données soient utilisables par le programme. Pour faire ça, Exec va libérer cette zone "< 2 Go" pour enlever des données et les stocker sur le disque.
Donc il va y avoir beaucoup de copies de zones mémoire dès qu'on veut utiliser plus de 2 Go. Je ne donne pas cher des performances dans ce cas :-(
--
Philippe Ferrucci
Avec une Sam460 et AmigaOS 4.1, je suis eco-responsable. Cool !


Message édité par : Elwood / 25-08-2019 13:39
icon_post
http://amigablogs.net/feed/2014/05/breaking-memory-barrier

Dans la version du wiki il y a un exemple de code.


[addsig]
Message édité par : kamelito / 25-08-2019 17:16
Amiguy Amiguyicon_post
Merci pour vos réponses. C'est très intéressant tout ça.

Je n'avais pas pensé aux implications d'une machine typiquement 32 bits (le PPC n'est plus tout récent). A l'heure où nous pensons tous 64 bits, c'est-à-dire sans la limitation des 4Go d'antan, je n'avais pas imaginé qu'il pouvait exister une restriction en matière de RAM. Mon étonnement est d'autant plus grand que Amiga On The Lake vend des barrettes de RAM allant jusqu'à 16Go pour un X5000 (voir ici), d'où mon insouciance initiale. On peut donc s'étonner de cette offre commerciale.

Espérons que les développements progresseront rapidement, car on a tendance à reproduire les habitudes de fonctionnement, courant sur d'autres OS, avec une machine qui n'en fait pas plus pour l'instant .
AmigaOne X5000 2Ghz / 8Go Ram - Radeon RX 560 4Go- SSD 2x4To - Sound Blaster Audigy FX 5.1 SBX - AmigaOS4.1 FE
K-L K-Licon_post
Linux supporte cette quantité de mémoire :-)
--
AmigaONE X1000/1,8 Ghz (A-Eon), Radeon RX560, 2 Go de Ram et OS4.1 FE
thellier thelliericon_post

@Elwood

Non en fait tu as tort

Telle que je l'ai compris les "extended memory object" sont plus comparable à un accès disque

Un peu comme sur un A500 avec 512k qui accède à une disquette de 880 k ou à un disque dur plus grand que sa RAM.

Cad que le prog ne voit qu'une "fenêtre" sur ce grand bloc de mémoire et non pas tout le grand bloc de mémoire de N Go

Le reste du grand bloc n'est pas visible du tout (pas mappé avec la MMU)

Mais évidemment comme sur un disque on peut déplacer la "fenetre" 

>Exec va s?EUR(TM)occuper de la déplacer de la mémoire virtuelle sur disque vers la mémoire "en dessous des 2 Go" pour que ces données soient utilisables par le programme.

Non justement il va pas la "déplacer"(copier) mais il va la mapper avec la MMU pour qu'elle soit enfin visible cad que "à ce moment" la fenêtre dans le grand bloc de mémoire aura une adresse visible dans l'espace des  2Go où l'on pourra lire/ écrire des données






 



Sam440 - Sam460 - X5000 - PowerBookG4 - WinUAE - MiniMig

Message édité par : thellier / 26-08-2019 10:16
thellier thelliericon_post

> vend des barrettes de RAM allant jusqu'à 16Go pour un X5000

Ca peut servir puisque le RAM Disk peut gérer au delà du 2 Go

En plus des développeur peuvent se mettre à utiliser les "extended memory object" dans des programmes donc au delà du 2 Go.  Mais je ne sais s'il en existe actuellement...

Edit: Il semblerait que sketchblock utilise déjà la mémoire au delà des 2 Go par ce procédé

http://www.broad.ology.org.uk/amiga/sketchblock/

Note: Si le système "adresse" 2 Go toutes ces "adresses" ne sont pas utilisable par la RAM car certaines adresses sont réservées pour les 256 Mo de la carte vidéo, pour la mémoire de la carte PCI, etc... et laissent donc que circa 1.7 Go

[ Ca parait un peu étrange mais il suffit de penser que le CPU peu écrire dans la RAM de la carte vidéo (ecran) et donc doit utiliser une adresse valide donc dans les 2Go ]

C'est un peu la même problématique que sur les classics : une partie de la RAM devait être de la Chip Ram

Sur les 4000 & co une partie des adresses mémoires était aussi réservées pour les cartes Zorro (mémoire et registres) donc on avait jamais le max non plus


Sam440 - Sam460 - X5000 - PowerBookG4 - WinUAE - MiniMig


Message édité par : thellier / 26-08-2019 14:00
corto cortoicon_post
Je n'ai pas regardé à nouveau le wiki mais il me semble que l'explication d'Alain avec la "fenêtre" est juste.
A ma connaissance, ça n'est effectivement utilisé que par le ram disk et par Sketchblock. Son utilisation demande au programmeur de comprendre le mécanisme et de l'implémenter spécifiquement pour gérer un cas qui ne se présente pas dans toutes les applications.
Je ne sais pas ce qui aurait pu être fait dans ce sens là mais il aurait fallu que le système gère ça, pas le programmeur, qui du coup, ne sait pas trop dans quels cas implémenter ça. Et dans la mesure où ça représente du travail supplémentaire, celui par exemple porte une grosse appli qui en bénéficierait devrait mettre le nez dans une gestion spécifique de la mémoire ... Ca peut être décourageant.
Je pense que ça a demandé pas mal de temps pour ajouter cette fonctionnalité et il y a d'ailleurs eu des bugs, pour un usage disons ... limité.
X1000 - 8GB - Radeon HD6570
Sam440 flex - Radeon 9250
thellier thelliericon_post

D'après le WIKI il suffit d'une centaine de ligne de code pour s'en servir donc c'est pas trop dur

C'est quasi identique à les gestion d'un VBO sur une carte 3D cad une zone de mémoire "quelque part" à laquelle on accède par un offset  et une fonction

Sam440 - Sam460 - X5000 - PowerBookG4 - WinUAE - MiniMig
Petites Annonces

0 annonce(s) publiée(s)

Consulter

AmigaOS 4.1

Laissez-vous tenter par
AmigaOS 4.1
AmiTheme

AmiTheme