Voici comme promis les résultats. Tout est expliqué et
détaillé ici, avec de jolis graphiques:
http://myjmnhome.dyndns.org/bench/benchcpm.htm
En résumé:
----------
- CopyMemory() est le grand gagnant, pourvu que l'on déclare
la destination en "As String" et pas en "As Any".
- J'ai fait une Dll en C qui donne des résultats comparables,
voire un tout petit peu mieux.
- Le Cast explicit avec StrConv() est aussi très rapide, mais
quand même une fois et demi plus lent que les 2 premières.
- Enfin, par rapport à l'implémentation naïve que j'avais faite,
l'usage de ces fonctions/méthodes permet un gain de performance
d'un facteur 35, ce qui est énorme.
- SafeArray: surement très rapide (voir le bench) mais pas directement
exploitable dans mon cas. Ceci dit je vais creuser l'idée car les
performances sont impressionantes.
Un grand merci à tous :-)
--
Jean-marc
Tester mon serveur (VB6) => http://myjmnhome.dyndns.org
"There are only 10 kind of people
those who understand binary and those who don't."
mailto: remove '_no_spam_' ; _no_spam_jean_marc_n2@yahoo.fr
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jean-Marc
Hello à tous,
j'ai complété mes tests de copie de string. La méthode indiquée par François (SAFEARRAY) est effectivement la meilleure, puisqu'elle est 8 fois plus rapide que la meilleure des fonctions (copymemory).
Par rapport à l'implémentation naïve, on gagne un facteur 280 !
Tous les résultats mis à jour ici: http://myjmnhome.dyndns.org/bench/benchcpm.htm
Encore merci à François et Jacques :-)
-- Jean-marc Tester mon serveur (VB6) => http://myjmnhome.dyndns.org "There are only 10 kind of people those who understand binary and those who don't." mailto: remove '_no_spam_' ;
Hello à tous,
j'ai complété mes tests de copie de string. La méthode indiquée
par François (SAFEARRAY) est effectivement la meilleure, puisqu'elle
est 8 fois plus rapide que la meilleure des fonctions (copymemory).
Par rapport à l'implémentation naïve, on gagne un facteur 280 !
Tous les résultats mis à jour ici:
http://myjmnhome.dyndns.org/bench/benchcpm.htm
Encore merci à François et Jacques :-)
--
Jean-marc
Tester mon serveur (VB6) => http://myjmnhome.dyndns.org
"There are only 10 kind of people
those who understand binary and those who don't."
mailto: remove '_no_spam_' ; _no_spam_jean_marc_n2@yahoo.fr
j'ai complété mes tests de copie de string. La méthode indiquée par François (SAFEARRAY) est effectivement la meilleure, puisqu'elle est 8 fois plus rapide que la meilleure des fonctions (copymemory).
Par rapport à l'implémentation naïve, on gagne un facteur 280 !
Tous les résultats mis à jour ici: http://myjmnhome.dyndns.org/bench/benchcpm.htm
Encore merci à François et Jacques :-)
-- Jean-marc Tester mon serveur (VB6) => http://myjmnhome.dyndns.org "There are only 10 kind of people those who understand binary and those who don't." mailto: remove '_no_spam_' ;