Le 30/07/07, Eric Noulard <address@hidden> a écrit :
Est-ce que quelqu'un pourrait m'expliquer le rôle
de mul_offset dans l'implémentation du ringbuf de TSP.
J'ai bien un vague souvenir : Il concerne le cas des ringbuf dynamiques, et le problème de padding pour optimiser les accès mémoire.
Supposons une machine qui aligne nativement sur 32 bits :
- Imagine allouer un ringbuf sur avec comme element une structure de 13 octets. Par soucis d'optimisation vitesse, on va aligner ces structures sur 16 octets. Le muloffset reste de 1.
- Par contre si tu as un ringbuf de 2 octets, et que ta machine aligne sur 4 en natif, le muloffset vaut 2.
Voila en gros ce dont je me rappelle.
Son rôle est un peu obscur pour moi :))
Comme tu vois, je ne suis pas beaucoup plus clair que toi. Je pense que Ivano, le père de ce ringbuf pourrait sans doute te faire une meilleure explication
Yves