Poster une réponse à un sujet: lecture réseau & performance
Attention, ce sujet est un sujet ancien (5226 jours sans réponse)
Altar
Bon voilà, j'ai implémenté un simple envoi d'un fichier à travers un socket tcp en c. Petit tuning du socket TCP avec le SO_SNDBUF à 256kib. Pareil pour le client en c#, sauf qu'on modifie le SO_RCVBUF et magie, je suis à 110Mio/sec... c'est ce que je devrais avoir avec smb aussi.
Ca sent la sodo made in microsoft ça ...
Je le savais que j'aurais du faire développeur web et rejeter tous les soucis de performances sur les développeurs de butineurs
Ca sent la sodo made in microsoft ça ...
Je le savais que j'aurais du faire développeur web et rejeter tous les soucis de performances sur les développeurs de butineurs
Clandestino
En mettant des poils, ça glissera mieux ?
zion
Très bonne question et euh...
Ben voila quoi
Ben voila quoi
Altar
Dr_Dan > c'est bien ce que j'ai fait xD
J'ai essayé 32kib / 64kib / 128kib / 256kib / 512kib / 1Mib / 2Mib / 4Mib avec handle avec tampon et sans tampon.
64kib semble être la meilleur valeur avec un handle avec tampon et 1Mib avec un handle sans tampon.
J'ai essayé 32kib / 64kib / 128kib / 256kib / 512kib / 1Mib / 2Mib / 4Mib avec handle avec tampon et sans tampon.
64kib semble être la meilleur valeur avec un handle avec tampon et 1Mib avec un handle sans tampon.
Dr_Dan
Essaye d'augmenter la taille des bloc de la fonction read
Altar
Hello les amiches \o/
J'ai un petit soucis de performance avec la lecture d'un fichier sur un serveur de fichiers avec win7.
Serveur de fichiers sous linux (centOS 5.4) avec samba 3.4 / connexion fiber 10g, client sous windows 7 avec une connexion gigabit.
Taille moyenne d'un fichier 25Gib.
Si j'effectue une copie d'un fichier vers le/du nas du/vers le client avec explorer, j'obtiens une vitesse de 110Mib/sec. L'interface gigabit étant le bottleneck.
Si j'essaye de faire une simple boucle while(read()!=0) en c# sur un fichier stocké sur le nas, j'obtiens 25mo/sec... pathétique hein ? en c, en utilisant un handle asynchrone et non bufferé sur le fichier, j'arrive à monter à 66Mib/sec de moyenne avec un buffer de 1Mib.
Il a quoi de magique l'explorer ?
Merchi ^^
J'ai un petit soucis de performance avec la lecture d'un fichier sur un serveur de fichiers avec win7.
Serveur de fichiers sous linux (centOS 5.4) avec samba 3.4 / connexion fiber 10g, client sous windows 7 avec une connexion gigabit.
Taille moyenne d'un fichier 25Gib.
Si j'effectue une copie d'un fichier vers le/du nas du/vers le client avec explorer, j'obtiens une vitesse de 110Mib/sec. L'interface gigabit étant le bottleneck.
Si j'essaye de faire une simple boucle while(read()!=0) en c# sur un fichier stocké sur le nas, j'obtiens 25mo/sec... pathétique hein ? en c, en utilisant un handle asynchrone et non bufferé sur le fichier, j'arrive à monter à 66Mib/sec de moyenne avec un buffer de 1Mib.
Il a quoi de magique l'explorer ?
Merchi ^^