|
begin process at 2008 07 05 15:10:40
Derniers logiciels
|
Trouver une ressource (Nouvelle version du moteur, plus rapide & pertinent, essayez le !)
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
Sujet : Taille maximum d'un tableau de byte ? [ Algorithme / Divers ] (cretthie)
|
Taille maximum d'un tableau de byte ?
le 24/04/2008 00:38:21

cretthie
|
Bonjour, Comme indiqué dans le titre, j'aimerai bien savoir si la taille d'un tableau de byte est limité. Si oui, a quelle taille. D'apres moi, comme on peut mettre une taille uniquement avec un integer, la taille max est un integer. mais est ce inferieur ? Y A-t-il des alternatives ? Merci pour votre aide, A bientot Thierry
|
|
|
|
Re : Taille maximum d'un tableau de byte ?
le 24/04/2008 09:43:25

Renfield
(Admin CS)
|
la taille de ta mémoire, je dirai
au pire, fais plusieurs tableau ... ca fragmentera les données..
|
|
|
|
Re : Taille maximum d'un tableau de byte ?
le 24/04/2008 16:37:07

Kevin.Ory
|
Salut, En Integer le max serait donc à plus de 2Go de donnés, je te déconseil fortement de faire un tableau de cette taille 
|
|
|
|
Re : Taille maximum d'un tableau de byte ?
le 24/04/2008 16:45:06

Renfield
(Admin CS)
|
sur, ca va forcer ta mahine a paginer, etc...
|
|
|
|
Re : Taille maximum d'un tableau de byte ?
le 24/04/2008 18:15:50

cretthie
|
Bonjour, tout d'abord, merci pour vos reponses.
ca va forcer la RAM, oui, mais est ce que ca peut marcher avec une machine 512 ram et un tableau de 1 giga ou meme 700 mo ?
J'ai songé a fractionner, mais c'est toujours un methode de plus... blabla, je suis un peu flémard. et est ce que ca change qqc avec en fractionnant ?
Je vais tout de meme suivre vos conseils je pense. et tester.
A bientot.
Thierry
|
|
|
|
Re : Taille maximum d'un tableau de byte ?
le 24/04/2008 21:35:44

Kevin.Ory
|
Re,
Je suis tout de même curieux de savoir quelles données de cette taille tu voudrais charger en mémoire. Je n'ai aucune fichier de cette taille sur mon DD moi ;p (à part le fichier d'échange peut-etre) A la limite, tu peux avoir de tels fichiers lorsque tu RIP un film en HD, ou voir un fichier base de données d'un seveur, mais bon...
Si tu veux traiter un fichier de cette taille, ce qu'il faut faire c'est le faire par petits morceaux. Tu charge qq MB du fichiers à traiter, une fois les données traitées, tu les enregistre dans un nouveau fichier. Puis tu recharge qq MB du fichier source, tu traite, et tu les enregistre à la suite dans le nouveau fichier, etc. Une fois toutes les données traité, tu efface le fichier source et tu renomme le nouveau fichier. (même chose pour une copie de fichier)
Comme le dit Renfield, si tu tente de charger tout ca en mémoire, Windows sera obligé de passer par le fichier d'échange (qui est donc un fichier sur le disque-dur dans lequel Windows enregistre les données lorsque la mémoire vive est pleine). Ca obligera donc Windows à faire des échanges entre la mémoire vive et le fichier d'échange complètement inutile, et ca ralentira tout ton processus (et les accès disque de tous les autres processus):
Au pire des cas, ca te donnerait donc ça: 1. Ton fichier -> mémoire vive - Lecture sur le disque-dur 2. Mémoire vive -> fichier d'échange - Ecriture sur le disque dur 3. Fichier d'échange -> mémoire vive - Lecture sur le disque dur 4. Traitement 5. Mémoire vive -> fichier d'échange - Ecriture sur le disque-dur 6. Fichier d'échange -> mémoire vive - Lecture sur le disque-dur 7. Mémoire vive -> ton nouveau fichier - Ecriture sur le disque-dur
Au lieu de ça: 1. Ton fichier -> mémoire vive - Lecture sur le disque-dur 2. Traitement 3. Mémoire vive -> ton nouveau fichier - Ecriture sur le disque-dur
A+
|
|
|
|
Re : Taille maximum d'un tableau de byte ?
le 24/04/2008 21:42:54

Kevin.Ory
|
Ah j'ai pas assez bien lu ton message précédent :) Tu parle d'un tableau d'1 GB ou de 700 MB, je pense donc que tu veux charger un DivX en mémoire.
Un lecteur vidéo va charger le fichier source (le DivX) au fur et a mesure que la lecture avance (par petits bouts de qq MB), et pas la totalité dès le début. Donc si tu efface le fichier DivX pdt sa lecture, la lecture continue qq secondes (la partie chargé en mémoire) et s'arrete (ce n'est pas le cas avec WMP, car celui-ci fais une copie du fichier à lire dans un dossier tempo)
Voila :)
|
|
|
|
Re : Taille maximum d'un tableau de byte ?
le 24/04/2008 23:22:47
|
|
Re : Taille maximum d'un tableau de byte ?
le 25/04/2008 01:18:10

Kevin.Ory
|
Oui c'est juste, mais c'est fortement lié. Tout ce que je dis ne répond pas à sa question, mais explique que de toute façon on ne travaillera jamais avec des tableaux dans cet ordre de grandeur. Mais c'est vrai que ça peut être utile de le savoir :-) Mais je viens d'essayer. La taille d'un tableau ne semble limité que par la mémoire disponible ( d'ailleur je n'ai vu nul part qu'il parlaient de taille en integer sur MSDN) Ceci veut dire que Windows ne peut donc pas paginer un tableau, du moins pas pendant sa création. Chez moi la taille max se trouve entre 578 et 579MB, au dessus: OutOfMemoryException. J'ai 768 MB de RAM Je suis étonné par la rapidité de la création du tableau... A chaud, ça m'affiche 0 ticks dans la plupart des cas, et qqfois des valeurs max 200 000 ticks (20 ms, certainement la pagination de la mémoire) CQFD 
|
|
|
|
Re : Taille maximum d'un tableau de byte ?
le 25/04/2008 01:31:13

Kevin.Ory
|
... Entre 0 et 200 000 ticks, alors qu'apparement l'heure système (que j'utilie) à apparement une résolution de 2 000 000 de ticks  Faut pas faire attention à mes Ticks, mais en tout cas ça n'a rien de lent 
|
|
|
Classé sous : taille, tableau, byte, integer, maximum
|
CalendriCode
| | | L | M | M | J | V | S | D |
| | 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 | | | |
|
Téléchargements
Logiciels à télécharger sur le même thème :
|
|