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 :

Lecture fichier plat


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2013
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Avril 2013
    Messages : 93
    Par défaut Lecture fichier plat
    Bonjour,

    Je souhaite me renseigner sur la lecture de data directement sur le disque.
    Le but n'est pas de lire classiquement mais d'utiliser tout ce qui est possible pour améliorer les performances de ce genre de système car les fichiers que je veux lire dépasse la RAM que j'ai a ma disposition.

    J'ai fouiller un peu et j'ai vu que l'on peut faire du swapping. Peut-on charger des morceaux du fichier en RAM et les stocker temporairement sur le disque pour pouvoir y accéder plus facilement ensuite?

    Je crois avoir vu aussi une histoire d'adressage physique. Ce qui correspondrai a avoir directement l'adresse des données sur le disque pour pouvoir y accéder encore plus rapidement, c'est possible?

    Si il y a d'autre chose intéressante je suis totalement preneur.

    Merci de votre aide.

    Cordialement

  2. #2
    Membre émérite Avatar de SkyZoThreaD
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juillet 2013
    Messages
    585
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2013
    Messages : 585
    Par défaut
    Salut. Je n'ai pas la réponse à ton soucis mais ça m'm’intéresse aussi.
    Je pense qu'il est important pour ta question de préciser l'OS que tu utilises.

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2013
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Avril 2013
    Messages : 93
    Par défaut
    Oui c'est vrai. Je suis principalement intéressé pour Windows 7 et 8.

  4. #4
    Rédacteur

    Avatar de Davidbrcz
    Homme Profil pro
    Ing Supaéro - Doctorant ONERA
    Inscrit en
    Juin 2006
    Messages
    2 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ing Supaéro - Doctorant ONERA

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 307
    Par défaut
    En gros, si j'ai bien compris, tu as un gros fichier que tu veux lire le plus rapidement possible ?

    Dans la hierarchie des performances mémoires, on Cache>RAM>Disque. Il faut comprendre que ce qui va pénaliser les performances, ce sont les accès au disque dur, il faut donc en faire le moins possible.

    L’idéal, c'est de placer tout le contenu fichier en RAM. Sauf que tu dis que tu ne peux pas. La solution, c'est donc de lire la partie du fichier dont tu as besoin (car on a très rarement besoin de TOUT le contenu d'un fichier), de placer ca en RAM et de bosser dessus.

    Le mot clé c'est memory mapped file. Et google donne des réponses
    "Never use brute force in fighting an exponential." (Andrei Alexandrescu)

    Mes articles dont Conseils divers sur le C++
    Une très bonne doc sur le C++ (en) Why linux is better (fr)

  5. #5
    Membre confirmé
    Inscrit en
    Avril 2013
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Avril 2013
    Messages : 93
    Par défaut
    Merci pour le mot-clef!!

    Oui, l'idée est de prendre des bouts du fichier pour travailler dessus mais il va y avoir beaucoup de permutations entre la RAM et le disque car c'est pour être appliqué à de gros algo.

    Je vais poursuivre mes recherches a partir des infos que tu m'a déjà passé.

    Je n'hésiterai pas à mettre ce que je trouve ici.

  6. #6
    Membre Expert
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    1 415
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 1 415
    Par défaut
    Salut !

    Les choix techniques que tu feras vont aussi dépendre du type d'application : as-tu des grosses données d'entrées et une sortie petite ? Une sortie très grosse elle aussi ? As-tu besoin de toutes les données pour calculer le résultat ou peux-tu calculer ses composantes indépendamment ?

Discussions similaires

  1. lecture fichier plat TXT sans espace dans excel
    Par julio44 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 29/06/2011, 18h31
  2. [Batch] Lecture fichier plat : IncorrectTokenCountException
    Par yvera dans le forum Spring
    Réponses: 3
    Dernier message: 10/06/2010, 15h53
  3. Réponses: 2
    Dernier message: 16/11/2009, 14h23
  4. [LG]Probleme lecture fichier file of ....
    Par John_win dans le forum Langage
    Réponses: 11
    Dernier message: 11/11/2003, 18h53
  5. [langage] prob lecture fichier .txt
    Par martijan dans le forum Langage
    Réponses: 3
    Dernier message: 16/07/2003, 11h08

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