• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<html>
2<head>
3<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
4<title>Comparison of Nth-root Finding Algorithms</title>
5<link rel="stylesheet" href="../../math.css" type="text/css">
6<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
7<link rel="home" href="../../index.html" title="Math Toolkit 2.12.0">
8<link rel="up" href="../root_comparison.html" title="Comparison of Root Finding Algorithms">
9<link rel="prev" href="cbrt_comparison.html" title="Comparison of Cube Root Finding Algorithms">
10<link rel="next" href="elliptic_comparison.html" title="Comparison of Elliptic Integral Root Finding Algorithms">
11</head>
12<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
13<table cellpadding="2" width="100%"><tr>
14<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
15<td align="center"><a href="../../../../../../index.html">Home</a></td>
16<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
17<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
18<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
19<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
20</tr></table>
21<hr>
22<div class="spirit-nav">
23<a accesskey="p" href="cbrt_comparison.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../root_comparison.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="elliptic_comparison.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
24</div>
25<div class="section">
26<div class="titlepage"><div><div><h3 class="title">
27<a name="math_toolkit.root_comparison.root_n_comparison"></a><a class="link" href="root_n_comparison.html" title="Comparison of Nth-root Finding Algorithms">Comparison
28      of Nth-root Finding Algorithms</a>
29</h3></div></div></div>
30<p>
31        A second example compares four generalized nth-root finding algorithms for
32        various n-th roots (5, 7 and 13) of a single value 28.0, for four floating-point
33        types, <code class="computeroutput"><span class="keyword">float</span></code>, <code class="computeroutput"><span class="keyword">double</span></code>, <code class="computeroutput"><span class="keyword">long</span>
34        <span class="keyword">double</span></code> and a <a href="../../../../../../libs/multiprecision/doc/html/index.html" target="_top">Boost.Multiprecision</a>
35        type <code class="computeroutput"><span class="identifier">cpp_bin_float_50</span></code>. In
36        each case the target accuracy was set using our "recommended" accuracy
37        limits (or at least limits that make a good starting point - which is likely
38        to give close to full accuracy without resorting to unnecessary iterations).
39      </p>
40<div class="informaltable"><table class="table">
41<colgroup>
42<col>
43<col>
44</colgroup>
45<thead><tr>
46<th>
47                <p>
48                  Function
49                </p>
50              </th>
51<th>
52                <p>
53                  Precision Requested
54                </p>
55              </th>
56</tr></thead>
57<tbody>
58<tr>
59<td>
60                <p>
61                  TOMS748
62                </p>
63              </td>
64<td>
65                <p>
66                  numeric_limits&lt;T&gt;::digits - 2
67                </p>
68              </td>
69</tr>
70<tr>
71<td>
72                <p>
73                  Newton
74                </p>
75              </td>
76<td>
77                <p>
78                  floor(numeric_limits&lt;T&gt;::digits * 0.6)
79                </p>
80              </td>
81</tr>
82<tr>
83<td>
84                <p>
85                  Halley
86                </p>
87              </td>
88<td>
89                <p>
90                  floor(numeric_limits&lt;T&gt;::digits * 0.4)
91                </p>
92              </td>
93</tr>
94<tr>
95<td>
96                <p>
97                  Schröder
98                </p>
99              </td>
100<td>
101                <p>
102                  floor(numeric_limits&lt;T&gt;::digits * 0.4)
103                </p>
104              </td>
105</tr>
106</tbody>
107</table></div>
108<p>
109        Tests used Microsoft Visual Studio 2013 (Update 1) and GCC 4.9.1 using source
110        code <a href="../../../../example/root_n_finding_algorithms.cpp" target="_top">root_n_finding_algorithms.cpp</a>.
111      </p>
112<p>
113        The timing uncertainty (especially using MSVC) is at least 5% of normalized
114        time 'Norm'.
115      </p>
116<p>
117        To pick out the 'best' and 'worst' algorithms are highlighted in blue and
118        red. More than one result can be 'best' when normalized times are indistinguishable
119        within the uncertainty.
120      </p>
121<h4>
122<a name="math_toolkit.root_comparison.root_n_comparison.h0"></a>
123        <span class="phrase"><a name="math_toolkit.root_comparison.root_n_comparison.program_example_root_n_finding_a"></a></span><a class="link" href="root_n_comparison.html#math_toolkit.root_comparison.root_n_comparison.program_example_root_n_finding_a">Program
124        ..\example\root_n_finding_algorithms.cpp, Microsoft Visual C++ version 14.1,
125        Dinkumware standard library version 650, Win32 Compiled in optimise mode.,
126        _X86_SSE2</a>
127      </h4>
128<p>
129        Fraction of full accuracy 1
130      </p>
131<div class="table">
132<a name="math_toolkit.root_comparison.root_n_comparison.root_5"></a><p class="title"><b>Table 10.3. 5th root(28) for float, double, long double and cpp_bin_float_50 types,
133        using _X86_SSE2</b></p>
134<div class="table-contents"><table class="table" summary="5th root(28) for float, double, long double and cpp_bin_float_50 types,
135        using _X86_SSE2">
136<colgroup>
137<col>
138<col>
139<col>
140<col>
141<col>
142<col>
143<col>
144<col>
145<col>
146<col>
147<col>
148<col>
149<col>
150<col>
151<col>
152<col>
153<col>
154<col>
155<col>
156<col>
157<col>
158</colgroup>
159<thead><tr>
160<th>
161              </th>
162<th>
163                <p>
164                  float
165                </p>
166              </th>
167<th>
168              </th>
169<th>
170              </th>
171<th>
172              </th>
173<th>
174              </th>
175<th>
176                <p>
177                  double
178                </p>
179              </th>
180<th>
181              </th>
182<th>
183              </th>
184<th>
185              </th>
186<th>
187              </th>
188<th>
189                <p>
190                  long d
191                </p>
192              </th>
193<th>
194              </th>
195<th>
196              </th>
197<th>
198              </th>
199<th>
200              </th>
201<th>
202                <p>
203                  cpp50
204                </p>
205              </th>
206<th>
207              </th>
208<th>
209              </th>
210<td class="auto-generated"> </td>
211<td class="auto-generated"> </td>
212</tr></thead>
213<tbody>
214<tr>
215<td>
216                <p>
217                  Algo
218                </p>
219              </td>
220<td>
221                <p>
222                  Its
223                </p>
224              </td>
225<td>
226                <p>
227                  Times
228                </p>
229              </td>
230<td>
231                <p>
232                  Norm
233                </p>
234              </td>
235<td>
236                <p>
237                  Dis
238                </p>
239              </td>
240<td>
241              </td>
242<td>
243                <p>
244                  Its
245                </p>
246              </td>
247<td>
248                <p>
249                  Times
250                </p>
251              </td>
252<td>
253                <p>
254                  Norm
255                </p>
256              </td>
257<td>
258                <p>
259                  Dis
260                </p>
261              </td>
262<td>
263              </td>
264<td>
265                <p>
266                  Its
267                </p>
268              </td>
269<td>
270                <p>
271                  Times
272                </p>
273              </td>
274<td>
275                <p>
276                  Norm
277                </p>
278              </td>
279<td>
280                <p>
281                  Dis
282                </p>
283              </td>
284<td>
285              </td>
286<td>
287                <p>
288                  Its
289                </p>
290              </td>
291<td>
292                <p>
293                  Times
294                </p>
295              </td>
296<td>
297                <p>
298                  Norm
299                </p>
300              </td>
301<td>
302                <p>
303                  Dis
304                </p>
305              </td>
306<td>
307              </td>
308</tr>
309<tr>
310<td>
311                <p>
312                  TOMS748
313                </p>
314              </td>
315<td>
316                <p>
317                  7
318                </p>
319              </td>
320<td>
321                <p>
322                  457
323                </p>
324              </td>
325<td>
326                <p>
327                  2.00
328                </p>
329              </td>
330<td>
331                <p>
332                  0
333                </p>
334              </td>
335<td>
336              </td>
337<td>
338                <p>
339                  11
340                </p>
341              </td>
342<td>
343                <p>
344                  860
345                </p>
346              </td>
347<td>
348                <p>
349                  3.54
350                </p>
351              </td>
352<td>
353                <p>
354                  1
355                </p>
356              </td>
357<td>
358              </td>
359<td>
360                <p>
361                  11
362                </p>
363              </td>
364<td>
365                <p>
366                  806
367                </p>
368              </td>
369<td>
370                <p>
371                  3.02
372                </p>
373              </td>
374<td>
375                <p>
376                  1
377                </p>
378              </td>
379<td>
380              </td>
381<td>
382                <p>
383                  12
384                </p>
385              </td>
386<td>
387                <p>
388                  226875
389                </p>
390              </td>
391<td>
392                <p>
393                  <span class="red">8.11</span>
394                </p>
395              </td>
396<td>
397                <p>
398                  0
399                </p>
400              </td>
401<td>
402              </td>
403</tr>
404<tr>
405<td>
406                <p>
407                  Newton
408                </p>
409              </td>
410<td>
411                <p>
412                  3
413                </p>
414              </td>
415<td>
416                <p>
417                  228
418                </p>
419              </td>
420<td>
421                <p>
422                  <span class="blue">1.00</span>
423                </p>
424              </td>
425<td>
426                <p>
427                  0
428                </p>
429              </td>
430<td>
431              </td>
432<td>
433                <p>
434                  4
435                </p>
436              </td>
437<td>
438                <p>
439                  243
440                </p>
441              </td>
442<td>
443                <p>
444                  <span class="blue">1.00</span>
445                </p>
446              </td>
447<td>
448                <p>
449                  -1
450                </p>
451              </td>
452<td>
453              </td>
454<td>
455                <p>
456                  4
457                </p>
458              </td>
459<td>
460                <p>
461                  298
462                </p>
463              </td>
464<td>
465                <p>
466                  1.12
467                </p>
468              </td>
469<td>
470                <p>
471                  -1
472                </p>
473              </td>
474<td>
475              </td>
476<td>
477                <p>
478                  6
479                </p>
480              </td>
481<td>
482                <p>
483                  27968
484                </p>
485              </td>
486<td>
487                <p>
488                  <span class="blue">1.00</span>
489                </p>
490              </td>
491<td>
492                <p>
493                  0
494                </p>
495              </td>
496<td>
497              </td>
498</tr>
499<tr>
500<td>
501                <p>
502                  Halley
503                </p>
504              </td>
505<td>
506                <p>
507                  2
508                </p>
509              </td>
510<td>
511                <p>
512                  250
513                </p>
514              </td>
515<td>
516                <p>
517                  1.10
518                </p>
519              </td>
520<td>
521                <p>
522                  0
523                </p>
524              </td>
525<td>
526              </td>
527<td>
528                <p>
529                  3
530                </p>
531              </td>
532<td>
533                <p>
534                  268
535                </p>
536              </td>
537<td>
538                <p>
539                  1.10
540                </p>
541              </td>
542<td>
543                <p>
544                  0
545                </p>
546              </td>
547<td>
548              </td>
549<td>
550                <p>
551                  3
552                </p>
553              </td>
554<td>
555                <p>
556                  267
557                </p>
558              </td>
559<td>
560                <p>
561                  <span class="blue">1.00</span>
562                </p>
563              </td>
564<td>
565                <p>
566                  0
567                </p>
568              </td>
569<td>
570              </td>
571<td>
572                <p>
573                  4
574                </p>
575              </td>
576<td>
577                <p>
578                  52812
579                </p>
580              </td>
581<td>
582                <p>
583                  1.89
584                </p>
585              </td>
586<td>
587                <p>
588                  0
589                </p>
590              </td>
591<td>
592              </td>
593</tr>
594<tr>
595<td>
596                <p>
597                  Schröder
598                </p>
599              </td>
600<td>
601                <p>
602                  2
603                </p>
604              </td>
605<td>
606                <p>
607                  256
608                </p>
609              </td>
610<td>
611                <p>
612                  1.12
613                </p>
614              </td>
615<td>
616                <p>
617                  0
618                </p>
619              </td>
620<td>
621              </td>
622<td>
623                <p>
624                  3
625                </p>
626              </td>
627<td>
628                <p>
629                  271
630                </p>
631              </td>
632<td>
633                <p>
634                  1.12
635                </p>
636              </td>
637<td>
638                <p>
639                  -1
640                </p>
641              </td>
642<td>
643              </td>
644<td>
645                <p>
646                  3
647                </p>
648              </td>
649<td>
650                <p>
651                  270
652                </p>
653              </td>
654<td>
655                <p>
656                  <span class="blue">1.01</span>
657                </p>
658              </td>
659<td>
660                <p>
661                  -1
662                </p>
663              </td>
664<td>
665              </td>
666<td>
667                <p>
668                  4
669                </p>
670              </td>
671<td>
672                <p>
673                  61406
674                </p>
675              </td>
676<td>
677                <p>
678                  2.20
679                </p>
680              </td>
681<td>
682                <p>
683                  0
684                </p>
685              </td>
686<td>
687              </td>
688</tr>
689</tbody>
690</table></div>
691</div>
692<br class="table-break"><div class="table">
693<a name="math_toolkit.root_comparison.root_n_comparison.root_7"></a><p class="title"><b>Table 10.4. 7th root(28) for float, double, long double and cpp_bin_float_50 types,
694        using _X86_SSE2</b></p>
695<div class="table-contents"><table class="table" summary="7th root(28) for float, double, long double and cpp_bin_float_50 types,
696        using _X86_SSE2">
697<colgroup>
698<col>
699<col>
700<col>
701<col>
702<col>
703<col>
704<col>
705<col>
706<col>
707<col>
708<col>
709<col>
710<col>
711<col>
712<col>
713<col>
714<col>
715<col>
716<col>
717<col>
718<col>
719</colgroup>
720<thead><tr>
721<th>
722              </th>
723<th>
724                <p>
725                  float
726                </p>
727              </th>
728<th>
729              </th>
730<th>
731              </th>
732<th>
733              </th>
734<th>
735              </th>
736<th>
737                <p>
738                  double
739                </p>
740              </th>
741<th>
742              </th>
743<th>
744              </th>
745<th>
746              </th>
747<th>
748              </th>
749<th>
750                <p>
751                  long d
752                </p>
753              </th>
754<th>
755              </th>
756<th>
757              </th>
758<th>
759              </th>
760<th>
761              </th>
762<th>
763                <p>
764                  cpp50
765                </p>
766              </th>
767<th>
768              </th>
769<th>
770              </th>
771<td class="auto-generated"> </td>
772<td class="auto-generated"> </td>
773</tr></thead>
774<tbody>
775<tr>
776<td>
777                <p>
778                  Algo
779                </p>
780              </td>
781<td>
782                <p>
783                  Its
784                </p>
785              </td>
786<td>
787                <p>
788                  Times
789                </p>
790              </td>
791<td>
792                <p>
793                  Norm
794                </p>
795              </td>
796<td>
797                <p>
798                  Dis
799                </p>
800              </td>
801<td>
802              </td>
803<td>
804                <p>
805                  Its
806                </p>
807              </td>
808<td>
809                <p>
810                  Times
811                </p>
812              </td>
813<td>
814                <p>
815                  Norm
816                </p>
817              </td>
818<td>
819                <p>
820                  Dis
821                </p>
822              </td>
823<td>
824              </td>
825<td>
826                <p>
827                  Its
828                </p>
829              </td>
830<td>
831                <p>
832                  Times
833                </p>
834              </td>
835<td>
836                <p>
837                  Norm
838                </p>
839              </td>
840<td>
841                <p>
842                  Dis
843                </p>
844              </td>
845<td>
846              </td>
847<td>
848                <p>
849                  Its
850                </p>
851              </td>
852<td>
853                <p>
854                  Times
855                </p>
856              </td>
857<td>
858                <p>
859                  Norm
860                </p>
861              </td>
862<td>
863                <p>
864                  Dis
865                </p>
866              </td>
867<td>
868              </td>
869</tr>
870<tr>
871<td>
872                <p>
873                  TOMS748
874                </p>
875              </td>
876<td>
877                <p>
878                  12
879                </p>
880              </td>
881<td>
882                <p>
883                  825
884                </p>
885              </td>
886<td>
887                <p>
888                  3.06
889                </p>
890              </td>
891<td>
892                <p>
893                  1
894                </p>
895              </td>
896<td>
897              </td>
898<td>
899                <p>
900                  15
901                </p>
902              </td>
903<td>
904                <p>
905                  1145
906                </p>
907              </td>
908<td>
909                <p>
910                  <span class="red">4.06</span>
911                </p>
912              </td>
913<td>
914                <p>
915                  2
916                </p>
917              </td>
918<td>
919              </td>
920<td>
921                <p>
922                  15
923                </p>
924              </td>
925<td>
926                <p>
927                  1159
928                </p>
929              </td>
930<td>
931                <p>
932                  <span class="red">4.17</span>
933                </p>
934              </td>
935<td>
936                <p>
937                  2
938                </p>
939              </td>
940<td>
941              </td>
942<td>
943                <p>
944                  14
945                </p>
946              </td>
947<td>
948                <p>
949                  295781
950                </p>
951              </td>
952<td>
953                <p>
954                  <span class="red">8.12</span>
955                </p>
956              </td>
957<td>
958                <p>
959                  0
960                </p>
961              </td>
962<td>
963              </td>
964</tr>
965<tr>
966<td>
967                <p>
968                  Newton
969                </p>
970              </td>
971<td>
972                <p>
973                  5
974                </p>
975              </td>
976<td>
977                <p>
978                  270
979                </p>
980              </td>
981<td>
982                <p>
983                  <span class="blue">1.00</span>
984                </p>
985              </td>
986<td>
987                <p>
988                  0
989                </p>
990              </td>
991<td>
992              </td>
993<td>
994                <p>
995                  6
996                </p>
997              </td>
998<td>
999                <p>
1000                  282
1001                </p>
1002              </td>
1003<td>
1004                <p>
1005                  <span class="blue">1.00</span>
1006                </p>
1007              </td>
1008<td>
1009                <p>
1010                  0
1011                </p>
1012              </td>
1013<td>
1014              </td>
1015<td>
1016                <p>
1017                  6
1018                </p>
1019              </td>
1020<td>
1021                <p>
1022                  278
1023                </p>
1024              </td>
1025<td>
1026                <p>
1027                  <span class="blue">1.00</span>
1028                </p>
1029              </td>
1030<td>
1031                <p>
1032                  0
1033                </p>
1034              </td>
1035<td>
1036              </td>
1037<td>
1038                <p>
1039                  8
1040                </p>
1041              </td>
1042<td>
1043                <p>
1044                  36406
1045                </p>
1046              </td>
1047<td>
1048                <p>
1049                  <span class="blue">1.00</span>
1050                </p>
1051              </td>
1052<td>
1053                <p>
1054                  0
1055                </p>
1056              </td>
1057<td>
1058              </td>
1059</tr>
1060<tr>
1061<td>
1062                <p>
1063                  Halley
1064                </p>
1065              </td>
1066<td>
1067                <p>
1068                  4
1069                </p>
1070              </td>
1071<td>
1072                <p>
1073                  303
1074                </p>
1075              </td>
1076<td>
1077                <p>
1078                  1.12
1079                </p>
1080              </td>
1081<td>
1082                <p>
1083                  0
1084                </p>
1085              </td>
1086<td>
1087              </td>
1088<td>
1089                <p>
1090                  5
1091                </p>
1092              </td>
1093<td>
1094                <p>
1095                  329
1096                </p>
1097              </td>
1098<td>
1099                <p>
1100                  1.17
1101                </p>
1102              </td>
1103<td>
1104                <p>
1105                  0
1106                </p>
1107              </td>
1108<td>
1109              </td>
1110<td>
1111                <p>
1112                  5
1113                </p>
1114              </td>
1115<td>
1116                <p>
1117                  335
1118                </p>
1119              </td>
1120<td>
1121                <p>
1122                  1.21
1123                </p>
1124              </td>
1125<td>
1126                <p>
1127                  0
1128                </p>
1129              </td>
1130<td>
1131              </td>
1132<td>
1133                <p>
1134                  6
1135                </p>
1136              </td>
1137<td>
1138                <p>
1139                  78281
1140                </p>
1141              </td>
1142<td>
1143                <p>
1144                  2.15
1145                </p>
1146              </td>
1147<td>
1148                <p>
1149                  0
1150                </p>
1151              </td>
1152<td>
1153              </td>
1154</tr>
1155<tr>
1156<td>
1157                <p>
1158                  Schröder
1159                </p>
1160              </td>
1161<td>
1162                <p>
1163                  5
1164                </p>
1165              </td>
1166<td>
1167                <p>
1168                  340
1169                </p>
1170              </td>
1171<td>
1172                <p>
1173                  1.26
1174                </p>
1175              </td>
1176<td>
1177                <p>
1178                  0
1179                </p>
1180              </td>
1181<td>
1182              </td>
1183<td>
1184                <p>
1185                  6
1186                </p>
1187              </td>
1188<td>
1189                <p>
1190                  432
1191                </p>
1192              </td>
1193<td>
1194                <p>
1195                  1.53
1196                </p>
1197              </td>
1198<td>
1199                <p>
1200                  0
1201                </p>
1202              </td>
1203<td>
1204              </td>
1205<td>
1206                <p>
1207                  6
1208                </p>
1209              </td>
1210<td>
1211                <p>
1212                  367
1213                </p>
1214              </td>
1215<td>
1216                <p>
1217                  1.32
1218                </p>
1219              </td>
1220<td>
1221                <p>
1222                  0
1223                </p>
1224              </td>
1225<td>
1226              </td>
1227<td>
1228                <p>
1229                  7
1230                </p>
1231              </td>
1232<td>
1233                <p>
1234                  85156
1235                </p>
1236              </td>
1237<td>
1238                <p>
1239                  2.34
1240                </p>
1241              </td>
1242<td>
1243                <p>
1244                  0
1245                </p>
1246              </td>
1247<td>
1248              </td>
1249</tr>
1250</tbody>
1251</table></div>
1252</div>
1253<br class="table-break"><div class="table">
1254<a name="math_toolkit.root_comparison.root_n_comparison.root_11"></a><p class="title"><b>Table 10.5. 11th root(28) for float, double, long double and cpp_bin_float_50
1255        types, using _X86_SSE2</b></p>
1256<div class="table-contents"><table class="table" summary="11th root(28) for float, double, long double and cpp_bin_float_50
1257        types, using _X86_SSE2">
1258<colgroup>
1259<col>
1260<col>
1261<col>
1262<col>
1263<col>
1264<col>
1265<col>
1266<col>
1267<col>
1268<col>
1269<col>
1270<col>
1271<col>
1272<col>
1273<col>
1274<col>
1275<col>
1276<col>
1277<col>
1278<col>
1279<col>
1280</colgroup>
1281<thead><tr>
1282<th>
1283              </th>
1284<th>
1285                <p>
1286                  float
1287                </p>
1288              </th>
1289<th>
1290              </th>
1291<th>
1292              </th>
1293<th>
1294              </th>
1295<th>
1296              </th>
1297<th>
1298                <p>
1299                  double
1300                </p>
1301              </th>
1302<th>
1303              </th>
1304<th>
1305              </th>
1306<th>
1307              </th>
1308<th>
1309              </th>
1310<th>
1311                <p>
1312                  long d
1313                </p>
1314              </th>
1315<th>
1316              </th>
1317<th>
1318              </th>
1319<th>
1320              </th>
1321<th>
1322              </th>
1323<th>
1324                <p>
1325                  cpp50
1326                </p>
1327              </th>
1328<th>
1329              </th>
1330<th>
1331              </th>
1332<td class="auto-generated"> </td>
1333<td class="auto-generated"> </td>
1334</tr></thead>
1335<tbody>
1336<tr>
1337<td>
1338                <p>
1339                  Algo
1340                </p>
1341              </td>
1342<td>
1343                <p>
1344                  Its
1345                </p>
1346              </td>
1347<td>
1348                <p>
1349                  Times
1350                </p>
1351              </td>
1352<td>
1353                <p>
1354                  Norm
1355                </p>
1356              </td>
1357<td>
1358                <p>
1359                  Dis
1360                </p>
1361              </td>
1362<td>
1363              </td>
1364<td>
1365                <p>
1366                  Its
1367                </p>
1368              </td>
1369<td>
1370                <p>
1371                  Times
1372                </p>
1373              </td>
1374<td>
1375                <p>
1376                  Norm
1377                </p>
1378              </td>
1379<td>
1380                <p>
1381                  Dis
1382                </p>
1383              </td>
1384<td>
1385              </td>
1386<td>
1387                <p>
1388                  Its
1389                </p>
1390              </td>
1391<td>
1392                <p>
1393                  Times
1394                </p>
1395              </td>
1396<td>
1397                <p>
1398                  Norm
1399                </p>
1400              </td>
1401<td>
1402                <p>
1403                  Dis
1404                </p>
1405              </td>
1406<td>
1407              </td>
1408<td>
1409                <p>
1410                  Its
1411                </p>
1412              </td>
1413<td>
1414                <p>
1415                  Times
1416                </p>
1417              </td>
1418<td>
1419                <p>
1420                  Norm
1421                </p>
1422              </td>
1423<td>
1424                <p>
1425                  Dis
1426                </p>
1427              </td>
1428<td>
1429              </td>
1430</tr>
1431<tr>
1432<td>
1433                <p>
1434                  TOMS748
1435                </p>
1436              </td>
1437<td>
1438                <p>
1439                  12
1440                </p>
1441              </td>
1442<td>
1443                <p>
1444                  714
1445                </p>
1446              </td>
1447<td>
1448                <p>
1449                  3.16
1450                </p>
1451              </td>
1452<td>
1453                <p>
1454                  -2
1455                </p>
1456              </td>
1457<td>
1458              </td>
1459<td>
1460                <p>
1461                  14
1462                </p>
1463              </td>
1464<td>
1465                <p>
1466                  909
1467                </p>
1468              </td>
1469<td>
1470                <p>
1471                  <span class="red">4.19</span>
1472                </p>
1473              </td>
1474<td>
1475                <p>
1476                  2
1477                </p>
1478              </td>
1479<td>
1480              </td>
1481<td>
1482                <p>
1483                  14
1484                </p>
1485              </td>
1486<td>
1487                <p>
1488                  793
1489                </p>
1490              </td>
1491<td>
1492                <p>
1493                  3.69
1494                </p>
1495              </td>
1496<td>
1497                <p>
1498                  2
1499                </p>
1500              </td>
1501<td>
1502              </td>
1503<td>
1504                <p>
1505                  17
1506                </p>
1507              </td>
1508<td>
1509                <p>
1510                  211718
1511                </p>
1512              </td>
1513<td>
1514                <p>
1515                  <span class="red">9.28</span>
1516                </p>
1517              </td>
1518<td>
1519                <p>
1520                  2
1521                </p>
1522              </td>
1523<td>
1524              </td>
1525</tr>
1526<tr>
1527<td>
1528                <p>
1529                  Newton
1530                </p>
1531              </td>
1532<td>
1533                <p>
1534                  6
1535                </p>
1536              </td>
1537<td>
1538                <p>
1539                  226
1540                </p>
1541              </td>
1542<td>
1543                <p>
1544                  <span class="blue">1.00</span>
1545                </p>
1546              </td>
1547<td>
1548                <p>
1549                  0
1550                </p>
1551              </td>
1552<td>
1553              </td>
1554<td>
1555                <p>
1556                  7
1557                </p>
1558              </td>
1559<td>
1560                <p>
1561                  217
1562                </p>
1563              </td>
1564<td>
1565                <p>
1566                  <span class="blue">1.00</span>
1567                </p>
1568              </td>
1569<td>
1570                <p>
1571                  0
1572                </p>
1573              </td>
1574<td>
1575              </td>
1576<td>
1577                <p>
1578                  7
1579                </p>
1580              </td>
1581<td>
1582                <p>
1583                  215
1584                </p>
1585              </td>
1586<td>
1587                <p>
1588                  <span class="blue">1.00</span>
1589                </p>
1590              </td>
1591<td>
1592                <p>
1593                  0
1594                </p>
1595              </td>
1596<td>
1597              </td>
1598<td>
1599                <p>
1600                  9
1601                </p>
1602              </td>
1603<td>
1604                <p>
1605                  22812
1606                </p>
1607              </td>
1608<td>
1609                <p>
1610                  <span class="blue">1.00</span>
1611                </p>
1612              </td>
1613<td>
1614                <p>
1615                  0
1616                </p>
1617              </td>
1618<td>
1619              </td>
1620</tr>
1621<tr>
1622<td>
1623                <p>
1624                  Halley
1625                </p>
1626              </td>
1627<td>
1628                <p>
1629                  4
1630                </p>
1631              </td>
1632<td>
1633                <p>
1634                  262
1635                </p>
1636              </td>
1637<td>
1638                <p>
1639                  1.16
1640                </p>
1641              </td>
1642<td>
1643                <p>
1644                  -1
1645                </p>
1646              </td>
1647<td>
1648              </td>
1649<td>
1650                <p>
1651                  5
1652                </p>
1653              </td>
1654<td>
1655                <p>
1656                  260
1657                </p>
1658              </td>
1659<td>
1660                <p>
1661                  1.20
1662                </p>
1663              </td>
1664<td>
1665                <p>
1666                  0
1667                </p>
1668              </td>
1669<td>
1670              </td>
1671<td>
1672                <p>
1673                  5
1674                </p>
1675              </td>
1676<td>
1677                <p>
1678                  260
1679                </p>
1680              </td>
1681<td>
1682                <p>
1683                  1.21
1684                </p>
1685              </td>
1686<td>
1687                <p>
1688                  0
1689                </p>
1690              </td>
1691<td>
1692              </td>
1693<td>
1694                <p>
1695                  6
1696                </p>
1697              </td>
1698<td>
1699                <p>
1700                  40781
1701                </p>
1702              </td>
1703<td>
1704                <p>
1705                  1.79
1706                </p>
1707              </td>
1708<td>
1709                <p>
1710                  0
1711                </p>
1712              </td>
1713<td>
1714              </td>
1715</tr>
1716<tr>
1717<td>
1718                <p>
1719                  Schröder
1720                </p>
1721              </td>
1722<td>
1723                <p>
1724                  6
1725                </p>
1726              </td>
1727<td>
1728                <p>
1729                  332
1730                </p>
1731              </td>
1732<td>
1733                <p>
1734                  1.47
1735                </p>
1736              </td>
1737<td>
1738                <p>
1739                  0
1740                </p>
1741              </td>
1742<td>
1743              </td>
1744<td>
1745                <p>
1746                  7
1747                </p>
1748              </td>
1749<td>
1750                <p>
1751                  314
1752                </p>
1753              </td>
1754<td>
1755                <p>
1756                  1.45
1757                </p>
1758              </td>
1759<td>
1760                <p>
1761                  0
1762                </p>
1763              </td>
1764<td>
1765              </td>
1766<td>
1767                <p>
1768                  7
1769                </p>
1770              </td>
1771<td>
1772                <p>
1773                  310
1774                </p>
1775              </td>
1776<td>
1777                <p>
1778                  1.44
1779                </p>
1780              </td>
1781<td>
1782                <p>
1783                  0
1784                </p>
1785              </td>
1786<td>
1787              </td>
1788<td>
1789                <p>
1790                  8
1791                </p>
1792              </td>
1793<td>
1794                <p>
1795                  67187
1796                </p>
1797              </td>
1798<td>
1799                <p>
1800                  2.95
1801                </p>
1802              </td>
1803<td>
1804                <p>
1805                  0
1806                </p>
1807              </td>
1808<td>
1809              </td>
1810</tr>
1811</tbody>
1812</table></div>
1813</div>
1814<br class="table-break"><h4>
1815<a name="math_toolkit.root_comparison.root_n_comparison.h1"></a>
1816        <span class="phrase"><a name="math_toolkit.root_comparison.root_n_comparison.program_root_n_finding_algorithm"></a></span><a class="link" href="root_n_comparison.html#math_toolkit.root_comparison.root_n_comparison.program_root_n_finding_algorithm">Program
1817        root_n_finding_algorithms.cpp, Microsoft Visual C++ version 12.0, Dinkumware
1818        standard library version 610, Win32 Compiled in optimise mode., _X64_AVX</a>
1819      </h4>
1820<p>
1821        Fraction of full accuracy 1
1822      </p>
1823<div class="table">
1824<a name="math_toolkit.root_comparison.root_n_comparison.root_5_0"></a><p class="title"><b>Table 10.6. 5th root(28) for float, double, long double and cpp_bin_float_50 types,
1825        using _X64_AVX</b></p>
1826<div class="table-contents"><table class="table" summary="5th root(28) for float, double, long double and cpp_bin_float_50 types,
1827        using _X64_AVX">
1828<colgroup>
1829<col>
1830<col>
1831<col>
1832<col>
1833<col>
1834<col>
1835<col>
1836<col>
1837<col>
1838<col>
1839<col>
1840<col>
1841<col>
1842<col>
1843<col>
1844<col>
1845<col>
1846<col>
1847<col>
1848<col>
1849<col>
1850</colgroup>
1851<thead><tr>
1852<th>
1853              </th>
1854<th>
1855                <p>
1856                  float
1857                </p>
1858              </th>
1859<th>
1860              </th>
1861<th>
1862              </th>
1863<th>
1864              </th>
1865<th>
1866              </th>
1867<th>
1868                <p>
1869                  double
1870                </p>
1871              </th>
1872<th>
1873              </th>
1874<th>
1875              </th>
1876<th>
1877              </th>
1878<th>
1879              </th>
1880<th>
1881                <p>
1882                  long d
1883                </p>
1884              </th>
1885<th>
1886              </th>
1887<th>
1888              </th>
1889<th>
1890              </th>
1891<th>
1892              </th>
1893<th>
1894                <p>
1895                  cpp50
1896                </p>
1897              </th>
1898<th>
1899              </th>
1900<th>
1901              </th>
1902<td class="auto-generated"> </td>
1903<td class="auto-generated"> </td>
1904</tr></thead>
1905<tbody>
1906<tr>
1907<td>
1908                <p>
1909                  Algo
1910                </p>
1911              </td>
1912<td>
1913                <p>
1914                  Its
1915                </p>
1916              </td>
1917<td>
1918                <p>
1919                  Times
1920                </p>
1921              </td>
1922<td>
1923                <p>
1924                  Norm
1925                </p>
1926              </td>
1927<td>
1928                <p>
1929                  Dis
1930                </p>
1931              </td>
1932<td>
1933              </td>
1934<td>
1935                <p>
1936                  Its
1937                </p>
1938              </td>
1939<td>
1940                <p>
1941                  Times
1942                </p>
1943              </td>
1944<td>
1945                <p>
1946                  Norm
1947                </p>
1948              </td>
1949<td>
1950                <p>
1951                  Dis
1952                </p>
1953              </td>
1954<td>
1955              </td>
1956<td>
1957                <p>
1958                  Its
1959                </p>
1960              </td>
1961<td>
1962                <p>
1963                  Times
1964                </p>
1965              </td>
1966<td>
1967                <p>
1968                  Norm
1969                </p>
1970              </td>
1971<td>
1972                <p>
1973                  Dis
1974                </p>
1975              </td>
1976<td>
1977              </td>
1978<td>
1979                <p>
1980                  Its
1981                </p>
1982              </td>
1983<td>
1984                <p>
1985                  Times
1986                </p>
1987              </td>
1988<td>
1989                <p>
1990                  Norm
1991                </p>
1992              </td>
1993<td>
1994                <p>
1995                  Dis
1996                </p>
1997              </td>
1998<td>
1999              </td>
2000</tr>
2001<tr>
2002<td>
2003                <p>
2004                  TOMS748
2005                </p>
2006              </td>
2007<td>
2008                <p>
2009                  7
2010                </p>
2011              </td>
2012<td>
2013                <p>
2014                  239
2015                </p>
2016              </td>
2017<td>
2018                <p>
2019                  1.50
2020                </p>
2021              </td>
2022<td>
2023                <p>
2024                  0
2025                </p>
2026              </td>
2027<td>
2028              </td>
2029<td>
2030                <p>
2031                  11
2032                </p>
2033              </td>
2034<td>
2035                <p>
2036                  451
2037                </p>
2038              </td>
2039<td>
2040                <p>
2041                  2.53
2042                </p>
2043              </td>
2044<td>
2045                <p>
2046                  1
2047                </p>
2048              </td>
2049<td>
2050              </td>
2051<td>
2052                <p>
2053                  11
2054                </p>
2055              </td>
2056<td>
2057                <p>
2058                  439
2059                </p>
2060              </td>
2061<td>
2062                <p>
2063                  2.49
2064                </p>
2065              </td>
2066<td>
2067                <p>
2068                  1
2069                </p>
2070              </td>
2071<td>
2072              </td>
2073<td>
2074                <p>
2075                  12
2076                </p>
2077              </td>
2078<td>
2079                <p>
2080                  90312
2081                </p>
2082              </td>
2083<td>
2084                <p>
2085                  <span class="red">7.51</span>
2086                </p>
2087              </td>
2088<td>
2089                <p>
2090                  0
2091                </p>
2092              </td>
2093<td>
2094              </td>
2095</tr>
2096<tr>
2097<td>
2098                <p>
2099                  Newton
2100                </p>
2101              </td>
2102<td>
2103                <p>
2104                  3
2105                </p>
2106              </td>
2107<td>
2108                <p>
2109                  159
2110                </p>
2111              </td>
2112<td>
2113                <p>
2114                  <span class="blue">1.00</span>
2115                </p>
2116              </td>
2117<td>
2118                <p>
2119                  0
2120                </p>
2121              </td>
2122<td>
2123              </td>
2124<td>
2125                <p>
2126                  4
2127                </p>
2128              </td>
2129<td>
2130                <p>
2131                  178
2132                </p>
2133              </td>
2134<td>
2135                <p>
2136                  <span class="blue">1.00</span>
2137                </p>
2138              </td>
2139<td>
2140                <p>
2141                  -1
2142                </p>
2143              </td>
2144<td>
2145              </td>
2146<td>
2147                <p>
2148                  4
2149                </p>
2150              </td>
2151<td>
2152                <p>
2153                  176
2154                </p>
2155              </td>
2156<td>
2157                <p>
2158                  <span class="blue">1.00</span>
2159                </p>
2160              </td>
2161<td>
2162                <p>
2163                  -1
2164                </p>
2165              </td>
2166<td>
2167              </td>
2168<td>
2169                <p>
2170                  6
2171                </p>
2172              </td>
2173<td>
2174                <p>
2175                  12031
2176                </p>
2177              </td>
2178<td>
2179                <p>
2180                  <span class="blue">1.00</span>
2181                </p>
2182              </td>
2183<td>
2184                <p>
2185                  0
2186                </p>
2187              </td>
2188<td>
2189              </td>
2190</tr>
2191<tr>
2192<td>
2193                <p>
2194                  Halley
2195                </p>
2196              </td>
2197<td>
2198                <p>
2199                  2
2200                </p>
2201              </td>
2202<td>
2203                <p>
2204                  168
2205                </p>
2206              </td>
2207<td>
2208                <p>
2209                  1.06
2210                </p>
2211              </td>
2212<td>
2213                <p>
2214                  0
2215                </p>
2216              </td>
2217<td>
2218              </td>
2219<td>
2220                <p>
2221                  3
2222                </p>
2223              </td>
2224<td>
2225                <p>
2226                  203
2227                </p>
2228              </td>
2229<td>
2230                <p>
2231                  1.14
2232                </p>
2233              </td>
2234<td>
2235                <p>
2236                  0
2237                </p>
2238              </td>
2239<td>
2240              </td>
2241<td>
2242                <p>
2243                  3
2244                </p>
2245              </td>
2246<td>
2247                <p>
2248                  198
2249                </p>
2250              </td>
2251<td>
2252                <p>
2253                  1.13
2254                </p>
2255              </td>
2256<td>
2257                <p>
2258                  0
2259                </p>
2260              </td>
2261<td>
2262              </td>
2263<td>
2264                <p>
2265                  4
2266                </p>
2267              </td>
2268<td>
2269                <p>
2270                  20937
2271                </p>
2272              </td>
2273<td>
2274                <p>
2275                  1.74
2276                </p>
2277              </td>
2278<td>
2279                <p>
2280                  0
2281                </p>
2282              </td>
2283<td>
2284              </td>
2285</tr>
2286<tr>
2287<td>
2288                <p>
2289                  Schröder
2290                </p>
2291              </td>
2292<td>
2293                <p>
2294                  2
2295                </p>
2296              </td>
2297<td>
2298                <p>
2299                  173
2300                </p>
2301              </td>
2302<td>
2303                <p>
2304                  1.09
2305                </p>
2306              </td>
2307<td>
2308                <p>
2309                  0
2310                </p>
2311              </td>
2312<td>
2313              </td>
2314<td>
2315                <p>
2316                  3
2317                </p>
2318              </td>
2319<td>
2320                <p>
2321                  206
2322                </p>
2323              </td>
2324<td>
2325                <p>
2326                  1.16
2327                </p>
2328              </td>
2329<td>
2330                <p>
2331                  -1
2332                </p>
2333              </td>
2334<td>
2335              </td>
2336<td>
2337                <p>
2338                  3
2339                </p>
2340              </td>
2341<td>
2342                <p>
2343                  203
2344                </p>
2345              </td>
2346<td>
2347                <p>
2348                  1.15
2349                </p>
2350              </td>
2351<td>
2352                <p>
2353                  -1
2354                </p>
2355              </td>
2356<td>
2357              </td>
2358<td>
2359                <p>
2360                  4
2361                </p>
2362              </td>
2363<td>
2364                <p>
2365                  26250
2366                </p>
2367              </td>
2368<td>
2369                <p>
2370                  2.18
2371                </p>
2372              </td>
2373<td>
2374                <p>
2375                  0
2376                </p>
2377              </td>
2378<td>
2379              </td>
2380</tr>
2381</tbody>
2382</table></div>
2383</div>
2384<br class="table-break"><div class="table">
2385<a name="math_toolkit.root_comparison.root_n_comparison.root_7_0"></a><p class="title"><b>Table 10.7. 7th root(28) for float, double, long double and cpp_bin_float_50 types,
2386        using _X64_AVX</b></p>
2387<div class="table-contents"><table class="table" summary="7th root(28) for float, double, long double and cpp_bin_float_50 types,
2388        using _X64_AVX">
2389<colgroup>
2390<col>
2391<col>
2392<col>
2393<col>
2394<col>
2395<col>
2396<col>
2397<col>
2398<col>
2399<col>
2400<col>
2401<col>
2402<col>
2403<col>
2404<col>
2405<col>
2406<col>
2407<col>
2408<col>
2409<col>
2410<col>
2411</colgroup>
2412<thead><tr>
2413<th>
2414              </th>
2415<th>
2416                <p>
2417                  float
2418                </p>
2419              </th>
2420<th>
2421              </th>
2422<th>
2423              </th>
2424<th>
2425              </th>
2426<th>
2427              </th>
2428<th>
2429                <p>
2430                  double
2431                </p>
2432              </th>
2433<th>
2434              </th>
2435<th>
2436              </th>
2437<th>
2438              </th>
2439<th>
2440              </th>
2441<th>
2442                <p>
2443                  long d
2444                </p>
2445              </th>
2446<th>
2447              </th>
2448<th>
2449              </th>
2450<th>
2451              </th>
2452<th>
2453              </th>
2454<th>
2455                <p>
2456                  cpp50
2457                </p>
2458              </th>
2459<th>
2460              </th>
2461<th>
2462              </th>
2463<td class="auto-generated"> </td>
2464<td class="auto-generated"> </td>
2465</tr></thead>
2466<tbody>
2467<tr>
2468<td>
2469                <p>
2470                  Algo
2471                </p>
2472              </td>
2473<td>
2474                <p>
2475                  Its
2476                </p>
2477              </td>
2478<td>
2479                <p>
2480                  Times
2481                </p>
2482              </td>
2483<td>
2484                <p>
2485                  Norm
2486                </p>
2487              </td>
2488<td>
2489                <p>
2490                  Dis
2491                </p>
2492              </td>
2493<td>
2494              </td>
2495<td>
2496                <p>
2497                  Its
2498                </p>
2499              </td>
2500<td>
2501                <p>
2502                  Times
2503                </p>
2504              </td>
2505<td>
2506                <p>
2507                  Norm
2508                </p>
2509              </td>
2510<td>
2511                <p>
2512                  Dis
2513                </p>
2514              </td>
2515<td>
2516              </td>
2517<td>
2518                <p>
2519                  Its
2520                </p>
2521              </td>
2522<td>
2523                <p>
2524                  Times
2525                </p>
2526              </td>
2527<td>
2528                <p>
2529                  Norm
2530                </p>
2531              </td>
2532<td>
2533                <p>
2534                  Dis
2535                </p>
2536              </td>
2537<td>
2538              </td>
2539<td>
2540                <p>
2541                  Its
2542                </p>
2543              </td>
2544<td>
2545                <p>
2546                  Times
2547                </p>
2548              </td>
2549<td>
2550                <p>
2551                  Norm
2552                </p>
2553              </td>
2554<td>
2555                <p>
2556                  Dis
2557                </p>
2558              </td>
2559<td>
2560              </td>
2561</tr>
2562<tr>
2563<td>
2564                <p>
2565                  TOMS748
2566                </p>
2567              </td>
2568<td>
2569                <p>
2570                  12
2571                </p>
2572              </td>
2573<td>
2574                <p>
2575                  385
2576                </p>
2577              </td>
2578<td>
2579                <p>
2580                  2.19
2581                </p>
2582              </td>
2583<td>
2584                <p>
2585                  1
2586                </p>
2587              </td>
2588<td>
2589              </td>
2590<td>
2591                <p>
2592                  15
2593                </p>
2594              </td>
2595<td>
2596                <p>
2597                  635
2598                </p>
2599              </td>
2600<td>
2601                <p>
2602                  3.13
2603                </p>
2604              </td>
2605<td>
2606                <p>
2607                  2
2608                </p>
2609              </td>
2610<td>
2611              </td>
2612<td>
2613                <p>
2614                  15
2615                </p>
2616              </td>
2617<td>
2618                <p>
2619                  621
2620                </p>
2621              </td>
2622<td>
2623                <p>
2624                  3.17
2625                </p>
2626              </td>
2627<td>
2628                <p>
2629                  2
2630                </p>
2631              </td>
2632<td>
2633              </td>
2634<td>
2635                <p>
2636                  14
2637                </p>
2638              </td>
2639<td>
2640                <p>
2641                  114843
2642                </p>
2643              </td>
2644<td>
2645                <p>
2646                  <span class="red">6.81</span>
2647                </p>
2648              </td>
2649<td>
2650                <p>
2651                  0
2652                </p>
2653              </td>
2654<td>
2655              </td>
2656</tr>
2657<tr>
2658<td>
2659                <p>
2660                  Newton
2661                </p>
2662              </td>
2663<td>
2664                <p>
2665                  5
2666                </p>
2667              </td>
2668<td>
2669                <p>
2670                  176
2671                </p>
2672              </td>
2673<td>
2674                <p>
2675                  <span class="blue">1.00</span>
2676                </p>
2677              </td>
2678<td>
2679                <p>
2680                  0
2681                </p>
2682              </td>
2683<td>
2684              </td>
2685<td>
2686                <p>
2687                  6
2688                </p>
2689              </td>
2690<td>
2691                <p>
2692                  203
2693                </p>
2694              </td>
2695<td>
2696                <p>
2697                  <span class="blue">1.00</span>
2698                </p>
2699              </td>
2700<td>
2701                <p>
2702                  0
2703                </p>
2704              </td>
2705<td>
2706              </td>
2707<td>
2708                <p>
2709                  6
2710                </p>
2711              </td>
2712<td>
2713                <p>
2714                  196
2715                </p>
2716              </td>
2717<td>
2718                <p>
2719                  <span class="blue">1.00</span>
2720                </p>
2721              </td>
2722<td>
2723                <p>
2724                  0
2725                </p>
2726              </td>
2727<td>
2728              </td>
2729<td>
2730                <p>
2731                  8
2732                </p>
2733              </td>
2734<td>
2735                <p>
2736                  16875
2737                </p>
2738              </td>
2739<td>
2740                <p>
2741                  <span class="blue">1.00</span>
2742                </p>
2743              </td>
2744<td>
2745                <p>
2746                  0
2747                </p>
2748              </td>
2749<td>
2750              </td>
2751</tr>
2752<tr>
2753<td>
2754                <p>
2755                  Halley
2756                </p>
2757              </td>
2758<td>
2759                <p>
2760                  4
2761                </p>
2762              </td>
2763<td>
2764                <p>
2765                  209
2766                </p>
2767              </td>
2768<td>
2769                <p>
2770                  1.19
2771                </p>
2772              </td>
2773<td>
2774                <p>
2775                  0
2776                </p>
2777              </td>
2778<td>
2779              </td>
2780<td>
2781                <p>
2782                  5
2783                </p>
2784              </td>
2785<td>
2786                <p>
2787                  254
2788                </p>
2789              </td>
2790<td>
2791                <p>
2792                  1.25
2793                </p>
2794              </td>
2795<td>
2796                <p>
2797                  0
2798                </p>
2799              </td>
2800<td>
2801              </td>
2802<td>
2803                <p>
2804                  5
2805                </p>
2806              </td>
2807<td>
2808                <p>
2809                  246
2810                </p>
2811              </td>
2812<td>
2813                <p>
2814                  1.26
2815                </p>
2816              </td>
2817<td>
2818                <p>
2819                  0
2820                </p>
2821              </td>
2822<td>
2823              </td>
2824<td>
2825                <p>
2826                  6
2827                </p>
2828              </td>
2829<td>
2830                <p>
2831                  32343
2832                </p>
2833              </td>
2834<td>
2835                <p>
2836                  1.92
2837                </p>
2838              </td>
2839<td>
2840                <p>
2841                  0
2842                </p>
2843              </td>
2844<td>
2845              </td>
2846</tr>
2847<tr>
2848<td>
2849                <p>
2850                  Schröder
2851                </p>
2852              </td>
2853<td>
2854                <p>
2855                  5
2856                </p>
2857              </td>
2858<td>
2859                <p>
2860                  223
2861                </p>
2862              </td>
2863<td>
2864                <p>
2865                  1.27
2866                </p>
2867              </td>
2868<td>
2869                <p>
2870                  0
2871                </p>
2872              </td>
2873<td>
2874              </td>
2875<td>
2876                <p>
2877                  6
2878                </p>
2879              </td>
2880<td>
2881                <p>
2882                  273
2883                </p>
2884              </td>
2885<td>
2886                <p>
2887                  1.34
2888                </p>
2889              </td>
2890<td>
2891                <p>
2892                  0
2893                </p>
2894              </td>
2895<td>
2896              </td>
2897<td>
2898                <p>
2899                  6
2900                </p>
2901              </td>
2902<td>
2903                <p>
2904                  275
2905                </p>
2906              </td>
2907<td>
2908                <p>
2909                  1.40
2910                </p>
2911              </td>
2912<td>
2913                <p>
2914                  0
2915                </p>
2916              </td>
2917<td>
2918              </td>
2919<td>
2920                <p>
2921                  7
2922                </p>
2923              </td>
2924<td>
2925                <p>
2926                  45156
2927                </p>
2928              </td>
2929<td>
2930                <p>
2931                  2.68
2932                </p>
2933              </td>
2934<td>
2935                <p>
2936                  0
2937                </p>
2938              </td>
2939<td>
2940              </td>
2941</tr>
2942</tbody>
2943</table></div>
2944</div>
2945<br class="table-break"><div class="table">
2946<a name="math_toolkit.root_comparison.root_n_comparison.root_11_0"></a><p class="title"><b>Table 10.8. 11th root(28) for float, double, long double and cpp_bin_float_50
2947        types, using _X64_AVX</b></p>
2948<div class="table-contents"><table class="table" summary="11th root(28) for float, double, long double and cpp_bin_float_50
2949        types, using _X64_AVX">
2950<colgroup>
2951<col>
2952<col>
2953<col>
2954<col>
2955<col>
2956<col>
2957<col>
2958<col>
2959<col>
2960<col>
2961<col>
2962<col>
2963<col>
2964<col>
2965<col>
2966<col>
2967<col>
2968<col>
2969<col>
2970<col>
2971<col>
2972</colgroup>
2973<thead><tr>
2974<th>
2975              </th>
2976<th>
2977                <p>
2978                  float
2979                </p>
2980              </th>
2981<th>
2982              </th>
2983<th>
2984              </th>
2985<th>
2986              </th>
2987<th>
2988              </th>
2989<th>
2990                <p>
2991                  double
2992                </p>
2993              </th>
2994<th>
2995              </th>
2996<th>
2997              </th>
2998<th>
2999              </th>
3000<th>
3001              </th>
3002<th>
3003                <p>
3004                  long d
3005                </p>
3006              </th>
3007<th>
3008              </th>
3009<th>
3010              </th>
3011<th>
3012              </th>
3013<th>
3014              </th>
3015<th>
3016                <p>
3017                  cpp50
3018                </p>
3019              </th>
3020<th>
3021              </th>
3022<th>
3023              </th>
3024<td class="auto-generated"> </td>
3025<td class="auto-generated"> </td>
3026</tr></thead>
3027<tbody>
3028<tr>
3029<td>
3030                <p>
3031                  Algo
3032                </p>
3033              </td>
3034<td>
3035                <p>
3036                  Its
3037                </p>
3038              </td>
3039<td>
3040                <p>
3041                  Times
3042                </p>
3043              </td>
3044<td>
3045                <p>
3046                  Norm
3047                </p>
3048              </td>
3049<td>
3050                <p>
3051                  Dis
3052                </p>
3053              </td>
3054<td>
3055              </td>
3056<td>
3057                <p>
3058                  Its
3059                </p>
3060              </td>
3061<td>
3062                <p>
3063                  Times
3064                </p>
3065              </td>
3066<td>
3067                <p>
3068                  Norm
3069                </p>
3070              </td>
3071<td>
3072                <p>
3073                  Dis
3074                </p>
3075              </td>
3076<td>
3077              </td>
3078<td>
3079                <p>
3080                  Its
3081                </p>
3082              </td>
3083<td>
3084                <p>
3085                  Times
3086                </p>
3087              </td>
3088<td>
3089                <p>
3090                  Norm
3091                </p>
3092              </td>
3093<td>
3094                <p>
3095                  Dis
3096                </p>
3097              </td>
3098<td>
3099              </td>
3100<td>
3101                <p>
3102                  Its
3103                </p>
3104              </td>
3105<td>
3106                <p>
3107                  Times
3108                </p>
3109              </td>
3110<td>
3111                <p>
3112                  Norm
3113                </p>
3114              </td>
3115<td>
3116                <p>
3117                  Dis
3118                </p>
3119              </td>
3120<td>
3121              </td>
3122</tr>
3123<tr>
3124<td>
3125                <p>
3126                  TOMS748
3127                </p>
3128              </td>
3129<td>
3130                <p>
3131                  12
3132                </p>
3133              </td>
3134<td>
3135                <p>
3136                  467
3137                </p>
3138              </td>
3139<td>
3140                <p>
3141                  2.42
3142                </p>
3143              </td>
3144<td>
3145                <p>
3146                  -2
3147                </p>
3148              </td>
3149<td>
3150              </td>
3151<td>
3152                <p>
3153                  14
3154                </p>
3155              </td>
3156<td>
3157                <p>
3158                  648
3159                </p>
3160              </td>
3161<td>
3162                <p>
3163                  3.06
3164                </p>
3165              </td>
3166<td>
3167                <p>
3168                  2
3169                </p>
3170              </td>
3171<td>
3172              </td>
3173<td>
3174                <p>
3175                  14
3176                </p>
3177              </td>
3178<td>
3179                <p>
3180                  640
3181                </p>
3182              </td>
3183<td>
3184                <p>
3185                  2.99
3186                </p>
3187              </td>
3188<td>
3189                <p>
3190                  2
3191                </p>
3192              </td>
3193<td>
3194              </td>
3195<td>
3196                <p>
3197                  17
3198                </p>
3199              </td>
3200<td>
3201                <p>
3202                  170000
3203                </p>
3204              </td>
3205<td>
3206                <p>
3207                  <span class="red">8.85</span>
3208                </p>
3209              </td>
3210<td>
3211                <p>
3212                  2
3213                </p>
3214              </td>
3215<td>
3216              </td>
3217</tr>
3218<tr>
3219<td>
3220                <p>
3221                  Newton
3222                </p>
3223              </td>
3224<td>
3225                <p>
3226                  6
3227                </p>
3228              </td>
3229<td>
3230                <p>
3231                  193
3232                </p>
3233              </td>
3234<td>
3235                <p>
3236                  <span class="blue">1.00</span>
3237                </p>
3238              </td>
3239<td>
3240                <p>
3241                  0
3242                </p>
3243              </td>
3244<td>
3245              </td>
3246<td>
3247                <p>
3248                  7
3249                </p>
3250              </td>
3251<td>
3252                <p>
3253                  212
3254                </p>
3255              </td>
3256<td>
3257                <p>
3258                  <span class="blue">1.00</span>
3259                </p>
3260              </td>
3261<td>
3262                <p>
3263                  0
3264                </p>
3265              </td>
3266<td>
3267              </td>
3268<td>
3269                <p>
3270                  7
3271                </p>
3272              </td>
3273<td>
3274                <p>
3275                  214
3276                </p>
3277              </td>
3278<td>
3279                <p>
3280                  <span class="blue">1.00</span>
3281                </p>
3282              </td>
3283<td>
3284                <p>
3285                  0
3286                </p>
3287              </td>
3288<td>
3289              </td>
3290<td>
3291                <p>
3292                  9
3293                </p>
3294              </td>
3295<td>
3296                <p>
3297                  19218
3298                </p>
3299              </td>
3300<td>
3301                <p>
3302                  <span class="blue">1.00</span>
3303                </p>
3304              </td>
3305<td>
3306                <p>
3307                  0
3308                </p>
3309              </td>
3310<td>
3311              </td>
3312</tr>
3313<tr>
3314<td>
3315                <p>
3316                  Halley
3317                </p>
3318              </td>
3319<td>
3320                <p>
3321                  4
3322                </p>
3323              </td>
3324<td>
3325                <p>
3326                  209
3327                </p>
3328              </td>
3329<td>
3330                <p>
3331                  1.08
3332                </p>
3333              </td>
3334<td>
3335                <p>
3336                  -1
3337                </p>
3338              </td>
3339<td>
3340              </td>
3341<td>
3342                <p>
3343                  5
3344                </p>
3345              </td>
3346<td>
3347                <p>
3348                  256
3349                </p>
3350              </td>
3351<td>
3352                <p>
3353                  1.21
3354                </p>
3355              </td>
3356<td>
3357                <p>
3358                  0
3359                </p>
3360              </td>
3361<td>
3362              </td>
3363<td>
3364                <p>
3365                  5
3366                </p>
3367              </td>
3368<td>
3369                <p>
3370                  250
3371                </p>
3372              </td>
3373<td>
3374                <p>
3375                  1.17
3376                </p>
3377              </td>
3378<td>
3379                <p>
3380                  0
3381                </p>
3382              </td>
3383<td>
3384              </td>
3385<td>
3386                <p>
3387                  6
3388                </p>
3389              </td>
3390<td>
3391                <p>
3392                  32656
3393                </p>
3394              </td>
3395<td>
3396                <p>
3397                  1.70
3398                </p>
3399              </td>
3400<td>
3401                <p>
3402                  0
3403                </p>
3404              </td>
3405<td>
3406              </td>
3407</tr>
3408<tr>
3409<td>
3410                <p>
3411                  Schröder
3412                </p>
3413              </td>
3414<td>
3415                <p>
3416                  6
3417                </p>
3418              </td>
3419<td>
3420                <p>
3421                  248
3422                </p>
3423              </td>
3424<td>
3425                <p>
3426                  1.28
3427                </p>
3428              </td>
3429<td>
3430                <p>
3431                  0
3432                </p>
3433              </td>
3434<td>
3435              </td>
3436<td>
3437                <p>
3438                  7
3439                </p>
3440              </td>
3441<td>
3442                <p>
3443                  306
3444                </p>
3445              </td>
3446<td>
3447                <p>
3448                  1.44
3449                </p>
3450              </td>
3451<td>
3452                <p>
3453                  0
3454                </p>
3455              </td>
3456<td>
3457              </td>
3458<td>
3459                <p>
3460                  7
3461                </p>
3462              </td>
3463<td>
3464                <p>
3465                  298
3466                </p>
3467              </td>
3468<td>
3469                <p>
3470                  1.39
3471                </p>
3472              </td>
3473<td>
3474                <p>
3475                  0
3476                </p>
3477              </td>
3478<td>
3479              </td>
3480<td>
3481                <p>
3482                  8
3483                </p>
3484              </td>
3485<td>
3486                <p>
3487                  53437
3488                </p>
3489              </td>
3490<td>
3491                <p>
3492                  2.78
3493                </p>
3494              </td>
3495<td>
3496                <p>
3497                  0
3498                </p>
3499              </td>
3500<td>
3501              </td>
3502</tr>
3503</tbody>
3504</table></div>
3505</div>
3506<br class="table-break"><h4>
3507<a name="math_toolkit.root_comparison.root_n_comparison.h2"></a>
3508        <span class="phrase"><a name="math_toolkit.root_comparison.root_n_comparison.program_example_root_n_finding_0"></a></span><a class="link" href="root_n_comparison.html#math_toolkit.root_comparison.root_n_comparison.program_example_root_n_finding_0">Program
3509        ..\example\root_n_finding_algorithms.cpp, GNU C++ version 7.1.0, GNU libstdc++
3510        version 20170502, Win32 Compiled in optimise mode., _X64_SSE2</a>
3511      </h4>
3512<p>
3513        Fraction of full accuracy 1
3514      </p>
3515<div class="table">
3516<a name="math_toolkit.root_comparison.root_n_comparison.root_5_1"></a><p class="title"><b>Table 10.9. 5th root(28) for float, double, long double and cpp_bin_float_50 types,
3517        using _X64_SSE2</b></p>
3518<div class="table-contents"><table class="table" summary="5th root(28) for float, double, long double and cpp_bin_float_50 types,
3519        using _X64_SSE2">
3520<colgroup>
3521<col>
3522<col>
3523<col>
3524<col>
3525<col>
3526<col>
3527<col>
3528<col>
3529<col>
3530<col>
3531<col>
3532<col>
3533<col>
3534<col>
3535<col>
3536<col>
3537<col>
3538<col>
3539<col>
3540<col>
3541<col>
3542</colgroup>
3543<thead><tr>
3544<th>
3545              </th>
3546<th>
3547                <p>
3548                  float
3549                </p>
3550              </th>
3551<th>
3552              </th>
3553<th>
3554              </th>
3555<th>
3556              </th>
3557<th>
3558              </th>
3559<th>
3560                <p>
3561                  double
3562                </p>
3563              </th>
3564<th>
3565              </th>
3566<th>
3567              </th>
3568<th>
3569              </th>
3570<th>
3571              </th>
3572<th>
3573                <p>
3574                  long d
3575                </p>
3576              </th>
3577<th>
3578              </th>
3579<th>
3580              </th>
3581<th>
3582              </th>
3583<th>
3584              </th>
3585<th>
3586                <p>
3587                  cpp50
3588                </p>
3589              </th>
3590<th>
3591              </th>
3592<th>
3593              </th>
3594<td class="auto-generated"> </td>
3595<td class="auto-generated"> </td>
3596</tr></thead>
3597<tbody>
3598<tr>
3599<td>
3600                <p>
3601                  Algo
3602                </p>
3603              </td>
3604<td>
3605                <p>
3606                  Its
3607                </p>
3608              </td>
3609<td>
3610                <p>
3611                  Times
3612                </p>
3613              </td>
3614<td>
3615                <p>
3616                  Norm
3617                </p>
3618              </td>
3619<td>
3620                <p>
3621                  Dis
3622                </p>
3623              </td>
3624<td>
3625              </td>
3626<td>
3627                <p>
3628                  Its
3629                </p>
3630              </td>
3631<td>
3632                <p>
3633                  Times
3634                </p>
3635              </td>
3636<td>
3637                <p>
3638                  Norm
3639                </p>
3640              </td>
3641<td>
3642                <p>
3643                  Dis
3644                </p>
3645              </td>
3646<td>
3647              </td>
3648<td>
3649                <p>
3650                  Its
3651                </p>
3652              </td>
3653<td>
3654                <p>
3655                  Times
3656                </p>
3657              </td>
3658<td>
3659                <p>
3660                  Norm
3661                </p>
3662              </td>
3663<td>
3664                <p>
3665                  Dis
3666                </p>
3667              </td>
3668<td>
3669              </td>
3670<td>
3671                <p>
3672                  Its
3673                </p>
3674              </td>
3675<td>
3676                <p>
3677                  Times
3678                </p>
3679              </td>
3680<td>
3681                <p>
3682                  Norm
3683                </p>
3684              </td>
3685<td>
3686                <p>
3687                  Dis
3688                </p>
3689              </td>
3690<td>
3691              </td>
3692</tr>
3693<tr>
3694<td>
3695                <p>
3696                  TOMS748
3697                </p>
3698              </td>
3699<td>
3700                <p>
3701                  7
3702                </p>
3703              </td>
3704<td>
3705                <p>
3706                  206
3707                </p>
3708              </td>
3709<td>
3710                <p>
3711                  2.24
3712                </p>
3713              </td>
3714<td>
3715                <p>
3716                  0
3717                </p>
3718              </td>
3719<td>
3720              </td>
3721<td>
3722                <p>
3723                  11
3724                </p>
3725              </td>
3726<td>
3727                <p>
3728                  460
3729                </p>
3730              </td>
3731<td>
3732                <p>
3733                  <span class="red">4.04</span>
3734                </p>
3735              </td>
3736<td>
3737                <p>
3738                  1
3739                </p>
3740              </td>
3741<td>
3742              </td>
3743<td>
3744                <p>
3745                  9
3746                </p>
3747              </td>
3748<td>
3749                <p>
3750                  554
3751                </p>
3752              </td>
3753<td>
3754                <p>
3755                  <span class="red">4.40</span>
3756                </p>
3757              </td>
3758<td>
3759                <p>
3760                  0
3761                </p>
3762              </td>
3763<td>
3764              </td>
3765<td>
3766                <p>
3767                  12
3768                </p>
3769              </td>
3770<td>
3771                <p>
3772                  57656
3773                </p>
3774              </td>
3775<td>
3776                <p>
3777                  <span class="red">8.39</span>
3778                </p>
3779              </td>
3780<td>
3781                <p>
3782                  0
3783                </p>
3784              </td>
3785<td>
3786              </td>
3787</tr>
3788<tr>
3789<td>
3790                <p>
3791                  Newton
3792                </p>
3793              </td>
3794<td>
3795                <p>
3796                  3
3797                </p>
3798              </td>
3799<td>
3800                <p>
3801                  92
3802                </p>
3803              </td>
3804<td>
3805                <p>
3806                  <span class="blue">1.00</span>
3807                </p>
3808              </td>
3809<td>
3810                <p>
3811                  0
3812                </p>
3813              </td>
3814<td>
3815              </td>
3816<td>
3817                <p>
3818                  4
3819                </p>
3820              </td>
3821<td>
3822                <p>
3823                  114
3824                </p>
3825              </td>
3826<td>
3827                <p>
3828                  <span class="blue">1.00</span>
3829                </p>
3830              </td>
3831<td>
3832                <p>
3833                  -1
3834                </p>
3835              </td>
3836<td>
3837              </td>
3838<td>
3839                <p>
3840                  5
3841                </p>
3842              </td>
3843<td>
3844                <p>
3845                  126
3846                </p>
3847              </td>
3848<td>
3849                <p>
3850                  <span class="blue">1.00</span>
3851                </p>
3852              </td>
3853<td>
3854                <p>
3855                  0
3856                </p>
3857              </td>
3858<td>
3859              </td>
3860<td>
3861                <p>
3862                  6
3863                </p>
3864              </td>
3865<td>
3866                <p>
3867                  6875
3868                </p>
3869              </td>
3870<td>
3871                <p>
3872                  <span class="blue">1.00</span>
3873                </p>
3874              </td>
3875<td>
3876                <p>
3877                  0
3878                </p>
3879              </td>
3880<td>
3881              </td>
3882</tr>
3883<tr>
3884<td>
3885                <p>
3886                  Halley
3887                </p>
3888              </td>
3889<td>
3890                <p>
3891                  2
3892                </p>
3893              </td>
3894<td>
3895                <p>
3896                  106
3897                </p>
3898              </td>
3899<td>
3900                <p>
3901                  1.15
3902                </p>
3903              </td>
3904<td>
3905                <p>
3906                  0
3907                </p>
3908              </td>
3909<td>
3910              </td>
3911<td>
3912                <p>
3913                  3
3914                </p>
3915              </td>
3916<td>
3917                <p>
3918                  134
3919                </p>
3920              </td>
3921<td>
3922                <p>
3923                  1.18
3924                </p>
3925              </td>
3926<td>
3927                <p>
3928                  0
3929                </p>
3930              </td>
3931<td>
3932              </td>
3933<td>
3934                <p>
3935                  3
3936                </p>
3937              </td>
3938<td>
3939                <p>
3940                  178
3941                </p>
3942              </td>
3943<td>
3944                <p>
3945                  1.41
3946                </p>
3947              </td>
3948<td>
3949                <p>
3950                  0
3951                </p>
3952              </td>
3953<td>
3954              </td>
3955<td>
3956                <p>
3957                  4
3958                </p>
3959              </td>
3960<td>
3961                <p>
3962                  12500
3963                </p>
3964              </td>
3965<td>
3966                <p>
3967                  1.82
3968                </p>
3969              </td>
3970<td>
3971                <p>
3972                  0
3973                </p>
3974              </td>
3975<td>
3976              </td>
3977</tr>
3978<tr>
3979<td>
3980                <p>
3981                  Schröder
3982                </p>
3983              </td>
3984<td>
3985                <p>
3986                  2
3987                </p>
3988              </td>
3989<td>
3990                <p>
3991                  126
3992                </p>
3993              </td>
3994<td>
3995                <p>
3996                  1.37
3997                </p>
3998              </td>
3999<td>
4000                <p>
4001                  0
4002                </p>
4003              </td>
4004<td>
4005              </td>
4006<td>
4007                <p>
4008                  3
4009                </p>
4010              </td>
4011<td>
4012                <p>
4013                  143
4014                </p>
4015              </td>
4016<td>
4017                <p>
4018                  1.25
4019                </p>
4020              </td>
4021<td>
4022                <p>
4023                  -1
4024                </p>
4025              </td>
4026<td>
4027              </td>
4028<td>
4029                <p>
4030                  3
4031                </p>
4032              </td>
4033<td>
4034                <p>
4035                  198
4036                </p>
4037              </td>
4038<td>
4039                <p>
4040                  1.57
4041                </p>
4042              </td>
4043<td>
4044                <p>
4045                  0
4046                </p>
4047              </td>
4048<td>
4049              </td>
4050<td>
4051                <p>
4052                  4
4053                </p>
4054              </td>
4055<td>
4056                <p>
4057                  15312
4058                </p>
4059              </td>
4060<td>
4061                <p>
4062                  2.23
4063                </p>
4064              </td>
4065<td>
4066                <p>
4067                  0
4068                </p>
4069              </td>
4070<td>
4071              </td>
4072</tr>
4073</tbody>
4074</table></div>
4075</div>
4076<br class="table-break"><div class="table">
4077<a name="math_toolkit.root_comparison.root_n_comparison.root_7_1"></a><p class="title"><b>Table 10.10. 7th root(28) for float, double, long double and cpp_bin_float_50 types,
4078        using _X64_SSE2</b></p>
4079<div class="table-contents"><table class="table" summary="7th root(28) for float, double, long double and cpp_bin_float_50 types,
4080        using _X64_SSE2">
4081<colgroup>
4082<col>
4083<col>
4084<col>
4085<col>
4086<col>
4087<col>
4088<col>
4089<col>
4090<col>
4091<col>
4092<col>
4093<col>
4094<col>
4095<col>
4096<col>
4097<col>
4098<col>
4099<col>
4100<col>
4101<col>
4102<col>
4103</colgroup>
4104<thead><tr>
4105<th>
4106              </th>
4107<th>
4108                <p>
4109                  float
4110                </p>
4111              </th>
4112<th>
4113              </th>
4114<th>
4115              </th>
4116<th>
4117              </th>
4118<th>
4119              </th>
4120<th>
4121                <p>
4122                  double
4123                </p>
4124              </th>
4125<th>
4126              </th>
4127<th>
4128              </th>
4129<th>
4130              </th>
4131<th>
4132              </th>
4133<th>
4134                <p>
4135                  long d
4136                </p>
4137              </th>
4138<th>
4139              </th>
4140<th>
4141              </th>
4142<th>
4143              </th>
4144<th>
4145              </th>
4146<th>
4147                <p>
4148                  cpp50
4149                </p>
4150              </th>
4151<th>
4152              </th>
4153<th>
4154              </th>
4155<td class="auto-generated"> </td>
4156<td class="auto-generated"> </td>
4157</tr></thead>
4158<tbody>
4159<tr>
4160<td>
4161                <p>
4162                  Algo
4163                </p>
4164              </td>
4165<td>
4166                <p>
4167                  Its
4168                </p>
4169              </td>
4170<td>
4171                <p>
4172                  Times
4173                </p>
4174              </td>
4175<td>
4176                <p>
4177                  Norm
4178                </p>
4179              </td>
4180<td>
4181                <p>
4182                  Dis
4183                </p>
4184              </td>
4185<td>
4186              </td>
4187<td>
4188                <p>
4189                  Its
4190                </p>
4191              </td>
4192<td>
4193                <p>
4194                  Times
4195                </p>
4196              </td>
4197<td>
4198                <p>
4199                  Norm
4200                </p>
4201              </td>
4202<td>
4203                <p>
4204                  Dis
4205                </p>
4206              </td>
4207<td>
4208              </td>
4209<td>
4210                <p>
4211                  Its
4212                </p>
4213              </td>
4214<td>
4215                <p>
4216                  Times
4217                </p>
4218              </td>
4219<td>
4220                <p>
4221                  Norm
4222                </p>
4223              </td>
4224<td>
4225                <p>
4226                  Dis
4227                </p>
4228              </td>
4229<td>
4230              </td>
4231<td>
4232                <p>
4233                  Its
4234                </p>
4235              </td>
4236<td>
4237                <p>
4238                  Times
4239                </p>
4240              </td>
4241<td>
4242                <p>
4243                  Norm
4244                </p>
4245              </td>
4246<td>
4247                <p>
4248                  Dis
4249                </p>
4250              </td>
4251<td>
4252              </td>
4253</tr>
4254<tr>
4255<td>
4256                <p>
4257                  TOMS748
4258                </p>
4259              </td>
4260<td>
4261                <p>
4262                  12
4263                </p>
4264              </td>
4265<td>
4266                <p>
4267                  345
4268                </p>
4269              </td>
4270<td>
4271                <p>
4272                  2.09
4273                </p>
4274              </td>
4275<td>
4276                <p>
4277                  1
4278                </p>
4279              </td>
4280<td>
4281              </td>
4282<td>
4283                <p>
4284                  15
4285                </p>
4286              </td>
4287<td>
4288                <p>
4289                  615
4290                </p>
4291              </td>
4292<td>
4293                <p>
4294                  3.14
4295                </p>
4296              </td>
4297<td>
4298                <p>
4299                  2
4300                </p>
4301              </td>
4302<td>
4303              </td>
4304<td>
4305                <p>
4306                  13
4307                </p>
4308              </td>
4309<td>
4310                <p>
4311                  875
4312                </p>
4313              </td>
4314<td>
4315                <p>
4316                  3.98
4317                </p>
4318              </td>
4319<td>
4320                <p>
4321                  0
4322                </p>
4323              </td>
4324<td>
4325              </td>
4326<td>
4327                <p>
4328                  14
4329                </p>
4330              </td>
4331<td>
4332                <p>
4333                  70937
4334                </p>
4335              </td>
4336<td>
4337                <p>
4338                  <span class="red">7.32</span>
4339                </p>
4340              </td>
4341<td>
4342                <p>
4343                  0
4344                </p>
4345              </td>
4346<td>
4347              </td>
4348</tr>
4349<tr>
4350<td>
4351                <p>
4352                  Newton
4353                </p>
4354              </td>
4355<td>
4356                <p>
4357                  5
4358                </p>
4359              </td>
4360<td>
4361                <p>
4362                  165
4363                </p>
4364              </td>
4365<td>
4366                <p>
4367                  <span class="blue">1.00</span>
4368                </p>
4369              </td>
4370<td>
4371                <p>
4372                  0
4373                </p>
4374              </td>
4375<td>
4376              </td>
4377<td>
4378                <p>
4379                  6
4380                </p>
4381              </td>
4382<td>
4383                <p>
4384                  196
4385                </p>
4386              </td>
4387<td>
4388                <p>
4389                  <span class="blue">1.00</span>
4390                </p>
4391              </td>
4392<td>
4393                <p>
4394                  0
4395                </p>
4396              </td>
4397<td>
4398              </td>
4399<td>
4400                <p>
4401                  7
4402                </p>
4403              </td>
4404<td>
4405                <p>
4406                  220
4407                </p>
4408              </td>
4409<td>
4410                <p>
4411                  <span class="blue">1.00</span>
4412                </p>
4413              </td>
4414<td>
4415                <p>
4416                  0
4417                </p>
4418              </td>
4419<td>
4420              </td>
4421<td>
4422                <p>
4423                  8
4424                </p>
4425              </td>
4426<td>
4427                <p>
4428                  9687
4429                </p>
4430              </td>
4431<td>
4432                <p>
4433                  <span class="blue">1.00</span>
4434                </p>
4435              </td>
4436<td>
4437                <p>
4438                  0
4439                </p>
4440              </td>
4441<td>
4442              </td>
4443</tr>
4444<tr>
4445<td>
4446                <p>
4447                  Halley
4448                </p>
4449              </td>
4450<td>
4451                <p>
4452                  4
4453                </p>
4454              </td>
4455<td>
4456                <p>
4457                  193
4458                </p>
4459              </td>
4460<td>
4461                <p>
4462                  1.17
4463                </p>
4464              </td>
4465<td>
4466                <p>
4467                  0
4468                </p>
4469              </td>
4470<td>
4471              </td>
4472<td>
4473                <p>
4474                  5
4475                </p>
4476              </td>
4477<td>
4478                <p>
4479                  239
4480                </p>
4481              </td>
4482<td>
4483                <p>
4484                  1.22
4485                </p>
4486              </td>
4487<td>
4488                <p>
4489                  0
4490                </p>
4491              </td>
4492<td>
4493              </td>
4494<td>
4495                <p>
4496                  5
4497                </p>
4498              </td>
4499<td>
4500                <p>
4501                  298
4502                </p>
4503              </td>
4504<td>
4505                <p>
4506                  1.35
4507                </p>
4508              </td>
4509<td>
4510                <p>
4511                  0
4512                </p>
4513              </td>
4514<td>
4515              </td>
4516<td>
4517                <p>
4518                  6
4519                </p>
4520              </td>
4521<td>
4522                <p>
4523                  19062
4524                </p>
4525              </td>
4526<td>
4527                <p>
4528                  1.97
4529                </p>
4530              </td>
4531<td>
4532                <p>
4533                  0
4534                </p>
4535              </td>
4536<td>
4537              </td>
4538</tr>
4539<tr>
4540<td>
4541                <p>
4542                  Schröder
4543                </p>
4544              </td>
4545<td>
4546                <p>
4547                  5
4548                </p>
4549              </td>
4550<td>
4551                <p>
4552                  217
4553                </p>
4554              </td>
4555<td>
4556                <p>
4557                  1.32
4558                </p>
4559              </td>
4560<td>
4561                <p>
4562                  0
4563                </p>
4564              </td>
4565<td>
4566              </td>
4567<td>
4568                <p>
4569                  6
4570                </p>
4571              </td>
4572<td>
4573                <p>
4574                  270
4575                </p>
4576              </td>
4577<td>
4578                <p>
4579                  1.38
4580                </p>
4581              </td>
4582<td>
4583                <p>
4584                  0
4585                </p>
4586              </td>
4587<td>
4588              </td>
4589<td>
4590                <p>
4591                  6
4592                </p>
4593              </td>
4594<td>
4595                <p>
4596                  367
4597                </p>
4598              </td>
4599<td>
4600                <p>
4601                  1.67
4602                </p>
4603              </td>
4604<td>
4605                <p>
4606                  0
4607                </p>
4608              </td>
4609<td>
4610              </td>
4611<td>
4612                <p>
4613                  7
4614                </p>
4615              </td>
4616<td>
4617                <p>
4618                  27343
4619                </p>
4620              </td>
4621<td>
4622                <p>
4623                  2.82
4624                </p>
4625              </td>
4626<td>
4627                <p>
4628                  0
4629                </p>
4630              </td>
4631<td>
4632              </td>
4633</tr>
4634</tbody>
4635</table></div>
4636</div>
4637<br class="table-break"><div class="table">
4638<a name="math_toolkit.root_comparison.root_n_comparison.root_11_1"></a><p class="title"><b>Table 10.11. 11th root(28) for float, double, long double and cpp_bin_float_50
4639        types, using _X64_SSE2</b></p>
4640<div class="table-contents"><table class="table" summary="11th root(28) for float, double, long double and cpp_bin_float_50
4641        types, using _X64_SSE2">
4642<colgroup>
4643<col>
4644<col>
4645<col>
4646<col>
4647<col>
4648<col>
4649<col>
4650<col>
4651<col>
4652<col>
4653<col>
4654<col>
4655<col>
4656<col>
4657<col>
4658<col>
4659<col>
4660<col>
4661<col>
4662<col>
4663<col>
4664</colgroup>
4665<thead><tr>
4666<th>
4667              </th>
4668<th>
4669                <p>
4670                  float
4671                </p>
4672              </th>
4673<th>
4674              </th>
4675<th>
4676              </th>
4677<th>
4678              </th>
4679<th>
4680              </th>
4681<th>
4682                <p>
4683                  double
4684                </p>
4685              </th>
4686<th>
4687              </th>
4688<th>
4689              </th>
4690<th>
4691              </th>
4692<th>
4693              </th>
4694<th>
4695                <p>
4696                  long d
4697                </p>
4698              </th>
4699<th>
4700              </th>
4701<th>
4702              </th>
4703<th>
4704              </th>
4705<th>
4706              </th>
4707<th>
4708                <p>
4709                  cpp50
4710                </p>
4711              </th>
4712<th>
4713              </th>
4714<th>
4715              </th>
4716<td class="auto-generated"> </td>
4717<td class="auto-generated"> </td>
4718</tr></thead>
4719<tbody>
4720<tr>
4721<td>
4722                <p>
4723                  Algo
4724                </p>
4725              </td>
4726<td>
4727                <p>
4728                  Its
4729                </p>
4730              </td>
4731<td>
4732                <p>
4733                  Times
4734                </p>
4735              </td>
4736<td>
4737                <p>
4738                  Norm
4739                </p>
4740              </td>
4741<td>
4742                <p>
4743                  Dis
4744                </p>
4745              </td>
4746<td>
4747              </td>
4748<td>
4749                <p>
4750                  Its
4751                </p>
4752              </td>
4753<td>
4754                <p>
4755                  Times
4756                </p>
4757              </td>
4758<td>
4759                <p>
4760                  Norm
4761                </p>
4762              </td>
4763<td>
4764                <p>
4765                  Dis
4766                </p>
4767              </td>
4768<td>
4769              </td>
4770<td>
4771                <p>
4772                  Its
4773                </p>
4774              </td>
4775<td>
4776                <p>
4777                  Times
4778                </p>
4779              </td>
4780<td>
4781                <p>
4782                  Norm
4783                </p>
4784              </td>
4785<td>
4786                <p>
4787                  Dis
4788                </p>
4789              </td>
4790<td>
4791              </td>
4792<td>
4793                <p>
4794                  Its
4795                </p>
4796              </td>
4797<td>
4798                <p>
4799                  Times
4800                </p>
4801              </td>
4802<td>
4803                <p>
4804                  Norm
4805                </p>
4806              </td>
4807<td>
4808                <p>
4809                  Dis
4810                </p>
4811              </td>
4812<td>
4813              </td>
4814</tr>
4815<tr>
4816<td>
4817                <p>
4818                  TOMS748
4819                </p>
4820              </td>
4821<td>
4822                <p>
4823                  12
4824                </p>
4825              </td>
4826<td>
4827                <p>
4828                  412
4829                </p>
4830              </td>
4831<td>
4832                <p>
4833                  2.15
4834                </p>
4835              </td>
4836<td>
4837                <p>
4838                  -2
4839                </p>
4840              </td>
4841<td>
4842              </td>
4843<td>
4844                <p>
4845                  14
4846                </p>
4847              </td>
4848<td>
4849                <p>
4850                  646
4851                </p>
4852              </td>
4853<td>
4854                <p>
4855                  2.96
4856                </p>
4857              </td>
4858<td>
4859                <p>
4860                  2
4861                </p>
4862              </td>
4863<td>
4864              </td>
4865<td>
4866                <p>
4867                  14
4868                </p>
4869              </td>
4870<td>
4871                <p>
4872                  1054
4873                </p>
4874              </td>
4875<td>
4876                <p>
4877                  <span class="red">4.22</span>
4878                </p>
4879              </td>
4880<td>
4881                <p>
4882                  1
4883                </p>
4884              </td>
4885<td>
4886              </td>
4887<td>
4888                <p>
4889                  17
4890                </p>
4891              </td>
4892<td>
4893                <p>
4894                  107187
4895                </p>
4896              </td>
4897<td>
4898                <p>
4899                  <span class="red">9.53</span>
4900                </p>
4901              </td>
4902<td>
4903                <p>
4904                  2
4905                </p>
4906              </td>
4907<td>
4908              </td>
4909</tr>
4910<tr>
4911<td>
4912                <p>
4913                  Newton
4914                </p>
4915              </td>
4916<td>
4917                <p>
4918                  6
4919                </p>
4920              </td>
4921<td>
4922                <p>
4923                  192
4924                </p>
4925              </td>
4926<td>
4927                <p>
4928                  <span class="blue">1.00</span>
4929                </p>
4930              </td>
4931<td>
4932                <p>
4933                  0
4934                </p>
4935              </td>
4936<td>
4937              </td>
4938<td>
4939                <p>
4940                  7
4941                </p>
4942              </td>
4943<td>
4944                <p>
4945                  218
4946                </p>
4947              </td>
4948<td>
4949                <p>
4950                  <span class="blue">1.00</span>
4951                </p>
4952              </td>
4953<td>
4954                <p>
4955                  0
4956                </p>
4957              </td>
4958<td>
4959              </td>
4960<td>
4961                <p>
4962                  7
4963                </p>
4964              </td>
4965<td>
4966                <p>
4967                  250
4968                </p>
4969              </td>
4970<td>
4971                <p>
4972                  <span class="blue">1.00</span>
4973                </p>
4974              </td>
4975<td>
4976                <p>
4977                  0
4978                </p>
4979              </td>
4980<td>
4981              </td>
4982<td>
4983                <p>
4984                  9
4985                </p>
4986              </td>
4987<td>
4988                <p>
4989                  11250
4990                </p>
4991              </td>
4992<td>
4993                <p>
4994                  <span class="blue">1.00</span>
4995                </p>
4996              </td>
4997<td>
4998                <p>
4999                  0
5000                </p>
5001              </td>
5002<td>
5003              </td>
5004</tr>
5005<tr>
5006<td>
5007                <p>
5008                  Halley
5009                </p>
5010              </td>
5011<td>
5012                <p>
5013                  4
5014                </p>
5015              </td>
5016<td>
5017                <p>
5018                  200
5019                </p>
5020              </td>
5021<td>
5022                <p>
5023                  <span class="blue">1.04</span>
5024                </p>
5025              </td>
5026<td>
5027                <p>
5028                  -1
5029                </p>
5030              </td>
5031<td>
5032              </td>
5033<td>
5034                <p>
5035                  5
5036                </p>
5037              </td>
5038<td>
5039                <p>
5040                  243
5041                </p>
5042              </td>
5043<td>
5044                <p>
5045                  1.11
5046                </p>
5047              </td>
5048<td>
5049                <p>
5050                  0
5051                </p>
5052              </td>
5053<td>
5054              </td>
5055<td>
5056                <p>
5057                  5
5058                </p>
5059              </td>
5060<td>
5061                <p>
5062                  345
5063                </p>
5064              </td>
5065<td>
5066                <p>
5067                  1.38
5068                </p>
5069              </td>
5070<td>
5071                <p>
5072                  0
5073                </p>
5074              </td>
5075<td>
5076              </td>
5077<td>
5078                <p>
5079                  6
5080                </p>
5081              </td>
5082<td>
5083                <p>
5084                  19687
5085                </p>
5086              </td>
5087<td>
5088                <p>
5089                  1.75
5090                </p>
5091              </td>
5092<td>
5093                <p>
5094                  0
5095                </p>
5096              </td>
5097<td>
5098              </td>
5099</tr>
5100<tr>
5101<td>
5102                <p>
5103                  Schröder
5104                </p>
5105              </td>
5106<td>
5107                <p>
5108                  6
5109                </p>
5110              </td>
5111<td>
5112                <p>
5113                  254
5114                </p>
5115              </td>
5116<td>
5117                <p>
5118                  1.32
5119                </p>
5120              </td>
5121<td>
5122                <p>
5123                  0
5124                </p>
5125              </td>
5126<td>
5127              </td>
5128<td>
5129                <p>
5130                  7
5131                </p>
5132              </td>
5133<td>
5134                <p>
5135                  321
5136                </p>
5137              </td>
5138<td>
5139                <p>
5140                  1.47
5141                </p>
5142              </td>
5143<td>
5144                <p>
5145                  0
5146                </p>
5147              </td>
5148<td>
5149              </td>
5150<td>
5151                <p>
5152                  7
5153                </p>
5154              </td>
5155<td>
5156                <p>
5157                  471
5158                </p>
5159              </td>
5160<td>
5161                <p>
5162                  1.88
5163                </p>
5164              </td>
5165<td>
5166                <p>
5167                  0
5168                </p>
5169              </td>
5170<td>
5171              </td>
5172<td>
5173                <p>
5174                  8
5175                </p>
5176              </td>
5177<td>
5178                <p>
5179                  33281
5180                </p>
5181              </td>
5182<td>
5183                <p>
5184                  2.96
5185                </p>
5186              </td>
5187<td>
5188                <p>
5189                  0
5190                </p>
5191              </td>
5192<td>
5193              </td>
5194</tr>
5195</tbody>
5196</table></div>
5197</div>
5198<br class="table-break"><p>
5199        Some tentative conclusions can be drawn from this limited exercise.
5200      </p>
5201<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
5202<li class="listitem">
5203            Perhaps surprisingly, there is little difference between the various
5204            algorithms for <a href="http://en.cppreference.com/w/cpp/language/types" target="_top">fundamental
5205            (built-in) types</a> floating-point types. Using the first derivatives
5206            (<a class="link" href="../roots_deriv.html#math_toolkit.roots_deriv.newton">Newton-Raphson iteration</a>)
5207            is usually the best, but while the improvement over the no-derivative
5208            <a href="http://portal.acm.org/citation.cfm?id=210111" target="_top">TOMS Algorithm
5209            748: enclosing zeros of continuous functions</a> is considerable
5210            in number of iterations, but little in execution time. This reflects
5211            the fact that the function we are finding the root for is trivial to
5212            evaluate, so runtimetimes are dominated by the time taken by the boilerplate
5213            code in each method.
5214          </li>
5215<li class="listitem">
5216            The extra cost of evaluating the second derivatives (<a class="link" href="../roots_deriv.html#math_toolkit.roots_deriv.halley">Halley</a>
5217            or <a class="link" href="../roots_deriv.html#math_toolkit.roots_deriv.schroder">Schröder</a>)
5218            is usually too much for any net benefit: as with the cube root, these
5219            functors are so cheap to evaluate that the runtime is largely dominated
5220            by the complexity of the root finding method.
5221          </li>
5222<li class="listitem">
5223            For a <a href="../../../../../../libs/multiprecision/doc/html/index.html" target="_top">Boost.Multiprecision</a>
5224            floating-point type, the <a class="link" href="../roots_deriv.html#math_toolkit.roots_deriv.newton">Newton-Raphson
5225            iteration</a> is a clear winner with a several-fold gain over <a href="http://portal.acm.org/citation.cfm?id=210111" target="_top">TOMS Algorithm 748:
5226            enclosing zeros of continuous functions</a>, and again no improvement
5227            from the second-derivative algorithms.
5228          </li>
5229<li class="listitem">
5230            The run-time of 50 decimal-digit <a href="../../../../../../libs/multiprecision/doc/html/index.html" target="_top">Boost.Multiprecision</a>
5231            is about 30-fold greater than <code class="computeroutput"><span class="keyword">double</span></code>.
5232          </li>
5233<li class="listitem">
5234            The column 'dis' showing the number of bits distance from the correct
5235            result. The Newton-Raphson algorithm shows a bit or two better accuracy
5236            than <a href="http://portal.acm.org/citation.cfm?id=210111" target="_top">TOMS Algorithm
5237            748: enclosing zeros of continuous functions</a>.
5238          </li>
5239<li class="listitem">
5240            The goodness of the 'guess' is especially crucial for <a href="../../../../../../libs/multiprecision/doc/html/index.html" target="_top">Boost.Multiprecision</a>.
5241            Separate experiments show that evaluating the 'guess' using <code class="computeroutput"><span class="keyword">double</span></code> allows convergence to the final
5242            exact result in one or two iterations. So in this contrived example,
5243            crudely dividing the exponent by N for a 'guess', it would be far better
5244            to use a <code class="computeroutput"><span class="identifier">pow</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;</span></code>
5245            or , if more precise <code class="computeroutput"><span class="identifier">pow</span><span class="special">&lt;</span><span class="keyword">long</span> <span class="keyword">double</span><span class="special">&gt;</span></code>,
5246            function to estimate a 'guess'. The limitation of this tactic is that
5247            the range of possible (exponent) values may be less than the multiprecision
5248            type.
5249          </li>
5250<li class="listitem">
5251            Using floating-point extension <a href="http://en.wikipedia.org/wiki/SSE2" target="_top">SSE2
5252            instructions</a> made a modest ten-percent speedup.
5253          </li>
5254<li class="listitem">
5255            Using MSVC, there was some improvement using 64-bit, markedly for <a href="../../../../../../libs/multiprecision/doc/html/index.html" target="_top">Boost.Multiprecision</a>.
5256          </li>
5257<li class="listitem">
5258            The GCC compiler 4.9.1 using 64-bit was at least five-folder faster that
5259            32-bit, apparently reflecting better optimization.
5260          </li>
5261</ul></div>
5262<p>
5263        Clearly, your mileage <span class="bold"><strong>will vary</strong></span>, but in
5264        summary, <a class="link" href="../roots_deriv.html#math_toolkit.roots_deriv.newton">Newton-Raphson iteration</a>
5265        seems the first choice of algorithm, and effort to find a good 'guess' the
5266        first speed-up target, especially for <a href="../../../../../../libs/multiprecision/doc/html/index.html" target="_top">Boost.Multiprecision</a>.
5267        And of course, compiler optimisation is crucial for speed.
5268      </p>
5269</div>
5270<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
5271<td align="left"></td>
5272<td align="right"><div class="copyright-footer">Copyright © 2006-2019 Nikhar
5273      Agrawal, Anton Bikineev, Paul A. Bristow, Marco Guazzone, Christopher Kormanyos,
5274      Hubert Holin, Bruno Lalande, John Maddock, Jeremy Murphy, Matthew Pulver, Johan
5275      Råde, Gautam Sewani, Benjamin Sobotta, Nicholas Thompson, Thijs van den Berg,
5276      Daryle Walker and Xiaogang Zhang<p>
5277        Distributed under the Boost Software License, Version 1.0. (See accompanying
5278        file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
5279      </p>
5280</div></td>
5281</tr></table>
5282<hr>
5283<div class="spirit-nav">
5284<a accesskey="p" href="cbrt_comparison.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../root_comparison.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="elliptic_comparison.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
5285</div>
5286</body>
5287</html>
5288