Je suis en train de mettre en œuvre une fonction mathématique comme My_AddMod, My_SubMod, My_MulMod, et mettre le résultat à vec_long & - données de type résultat.Ralentissez le code sans utiliser résultat de la fonction NTL
Quand je vous appelle à la fois la fonction moi et NTL et en utilisant le résultat de NTL comme:
long tmpt_My = My_AddMod(long a, long b, long n); //(a+b)%n
long tmpt_NTL = AddMod(long a, long b, long n); //function from NTL
vec_long& result[i] = tmpt_NTL; //choosing result from NTL_function
Il marchait bien et rapide, cependant, si j'utilise le résultat de ma_fonction:
long tmpt_My = My_AddMod(long a, long b, long n); //(a+b)%n
long tmpt_NTL = AddMod(long a, long b, long n); //function from NTL
vec_long& result[i] = tmpt_My; //choosing result from My_function
Cela fonctionnait bien, mais provoquait une latence importante dans le code.
Lors de l'impression de la valeur et du type de données tmpt_NTL
et tmpt_My
, ils ont la même valeur et le même type de données long
.
Étant donné que les deux fonctions sont appelées (il semble que cela n'a rien à voir avec le temps d'exécution de My_function) et qu'elles génèrent la même valeur, quelle est la cause d'une latence importante ou comment la réparer?