• [^] # Re: Possible lien avec Inotify

    Posté par . En réponse à la dépêche Sortie de Fim 1.0.2, qui vérifie l'intégrité de vos fichiers. Évalué à 5.

    Chacun à des propriétés très différentes.

    Un HDD c'est grosso modo un tourne disque. C'est efficace pour faire de la lecture séquentielle (~100Mo/s) et ça coute pas cher, mais si tu veux accéder un endroit précis ça dans les 10ms ce qui est une éternité (cf Latency Numbers Every Programmer Should Know

    Un SDD c'est grosso modo de la RAM. Ça va pas beaucoup plus vite qu'un HDD si tu lis séquentiellement mais tu peux accéder un endroit précis en ~100us.

    Ce genre de propriétés est fondamentale quand tu conçois un système. Sur un HDD tu vas chercher à toujours lire et écrire séquentiellement pour ne pas faire bouger les têtes. Même si ça implique de lire beaucoup trop de donnée c'est toujours plus rapide (c'est par exemple aussi vrai pour la RAM non pas du a un facteur mécanique mais au prefetch).

    Tu as ce genre de décision à prendre partout. Les choix de design sont dirigées par le fonctionnement du matériel (CPU, mémoire, disque, réseau) et des systèmes d'exploitation. Si j'ai un interconnect à 5ns pour pas cher, ça coute peut être moins cher de dédier une machine bourrée de RAM pour faire un cache qui va être attaqué par X machines que de faire le cache sur les machines directement. De même si j'ai un très disque rapide en accès aléatoire peut être qu'un gros mmap va devenir plus efficace qu'un LRU avec éviction qui va demander de recalculer la valeur plus tard etc.

    Si tu ignores ça, tu conçois des trucs qui tournent des ordres de grandeurs plus lentement que ce que permet le matériel. C'est pour ça qu'il est important de comprendre les fonctionnements de ce qu'on utilise et de connaitre par cœur les ordres de grandeur. Sinon c'est impossible de designer quoi que ce soit, ni de faire des dimensionnement au dos de l'enveloppe.

    PS: Oui j'ai beaucoup beaucoup simplifié