• # Re: nouvelle technique d'optimisation

    Posté par  . Évalué à 1.

    Le lien est mort
  • # Re: nouvelle technique d'optimisation

    Posté par  . Évalué à 1.

    Faire mieux qu'une complexité linéaire pour strlen, ca parait quand même pas facile...
    • [^] # Re: nouvelle technique d'optimisation

      Posté par  . Évalué à 1.

      O(1), en stockant la chaîne avec sa longueur...
    • [^] # Re: nouvelle technique d'optimisation

      Posté par  . Évalué à 2.

      En même temps, tu peux avoir une compléxité identique et être plus rapide. Il serait arriver en disant je fais des multiplications de matrices en 0(ln(n)), je lui aurais dit qu'il s'était trompé d'un jour...
      • [^] # Re: nouvelle technique d'optimisation

        Posté par  . Évalué à 2.

        L'algo est de la même complexité mais c'est la façon de l'écrire qui permet, la plus part du temps, de réduire le nombre de condition à chaque itération. Enfin faut lire l'article (cf les 2 premiers listing)
      • [^] # Re: nouvelle technique d'optimisation

        Posté par  . Évalué à 6.

        Et puis il faut arrêter de ne regarder que la complexité. Dans la vraie vie, la constante est importante.

        Pour prendre un exemple bête,
        Heapsort est un excellent algorithme de tri en place optimal (O(n.ln n)) dans le pire des cas.
        Pourtant, tout le monde utilise quick-sort qui lui est aussi en place mais n'est certainement pas optimal puisqu'il peut avoir une execution quadratique.
        Les gens seraient-ils complètement cons? Ben non parce que quick-sort est optimal en moyenne et que la constante est plus faible que pour heap-sort.

        Et puis si on ne regarde que la complexité, on ne ferait pas de programmation linéaire puisque l'algorithme du simplexe est exponentiel non?

        Frédéric.
        • [^] # Re: nouvelle technique d'optimisation

          Posté par  . Évalué à 1.

          Disons plutôt que la constante dépend d'une autre valeur (la taille de l'ensemble des éléments par exemple) et qu'il faut pouvoir être en mesure de l'évaluer pour pouvoir appliqué correctement une solution à un problème.
          Un exemple du cas où la solution à apporter est fortement dépendante de la solution probable est l'utilisation d'un réseau de neurones (ou même l'utilisation de méthodes statistiques banales).
      • [^] # Re: nouvelle technique d'optimisation

        Posté par  . Évalué à 1.

        Enfin dans le cas de strlen, on est quand meme obligé de lire toutes les cases, et c'est ça qui prend du temps (la comaraison a zero ne coute rien sur un proc raisonnable). Donc son truc me semble violement pipo. Il propose en gros de faire un & logique de deux octets succesifs pour reperer plus vite les candidats potentiels, mais je ne crois vraiment pas qu'un & puisse être plus rapide qu'un test a zero.
        • [^] # Re: nouvelle technique d'optimisation

          Posté par  . Évalué à 1.

          Le & logique est en soit un test comme les autres, il affecte les
          flags de bit tout comme le cmp est donc peut etre utilise pour une
          comparaison c'est pour ca qu il est plus rapide de faire un & qu'une
          comparaison avec 0. Dans le temps on faisait xor ax,ax pour tester
          si la valeur etait a 0 plutot qu un cmp ax,0. Le xor etait bcp plus
          rapide. La l'interet et que and ax,ax = 2 x cmp ax,0.
          Par contre kit a faire par 2 autant faire par 4 c'est bcp plus rapide
          voir par 8 sur processeur 64 bits.
  • # Re: nouvelle technique d'optimisation

    Posté par  . Évalué à 2.

    Ca me rapelle les optimisations que proposait Imphobia il y a quelques années.
  • # Re: nouvelle technique d'optimisation

    Posté par  . Évalué à 2.

    Technique interressante un certain type d'utilisation.
    Mais il faut eviter de se jeter dessus sans en avoir compris tous les tenants et aboutissants :
    risque de ramer sur athlon XP dans certains cas selon l'auteur lui meme
    strstr risque d'etre lent dans les pires cas (du style recherche de "aaaa" dans "aaabaaabaaabaaabaaabaaab...")
    il faut bien comprendre le fonctionnement des processeurs actuel pour en profiter et adapter le DLoop aux algorithmes qu'on souhaite optimiser.
  • # Re: nouvelle technique d'optimisation

    Posté par  . Évalué à 1.

    Le gars s'est fait remettre à sa place sur les forums d'Ace's hardware (http://aceshardware.com/forum(...)).

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n’en sommes pas responsables.