• [^] # Re: File mapping

    Posté par (site web personnel) . En réponse au message DMA en C++ ?. Évalué à 2.

    Utilises write et read plutot que fread et fwrite qui bufferise en espace utilisateur par contre n'utilise surtout pas O_direct qui est fait pour faire sa propre couche de cache.

    Utilises des gros write (genre >> 1 Mo). Si tu maitrises ton systeme de fichier privilegies, utilises des gros cluster, ils sont plus rapide que les petits si tu as des gros fichiers.

    Logiquement, il sera plus rapide d'ouvrir une seul fichier que plusieurs, la tête du disque n'aura pas a bouger.

    Oublies mmap() qui ne permet pas de faire grossir un fichier.

    Fais gaffe que fseek utilise un entier 32 bits, cela peut poser des ennuis sur un fichier de plus de 2 Go.

    Le top des perfs devrait etre obtenu avec un thread lecteur qui utilise select() ou un equivalent (poll ?) et un thread d'ecriture.

    "La première sécurité est la liberté"