]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/multiprecision/doc/html/boost_multiprecision/perf/rational_performance.html
bump version to 12.2.2-pve1
[ceph.git] / ceph / src / boost / libs / multiprecision / doc / html / boost_multiprecision / perf / rational_performance.html
1 <html>
2 <head>
3 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
4 <title>Rational Type Performance</title>
5 <link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
6 <meta name="generator" content="DocBook XSL Stylesheets V1.77.1">
7 <link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Boost.Multiprecision">
8 <link rel="up" href="../perf.html" title="Performance Comparison">
9 <link rel="prev" href="integer_performance.html" title="Integer Algorithm Performance">
10 <link rel="next" href="../map.html" title="Roadmap">
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="integer_performance.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../perf.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="../map.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="boost_multiprecision.perf.rational_performance"></a><a class="link" href="rational_performance.html" title="Rational Type Performance">Rational
28 Type Performance</a>
29 </h3></div></div></div>
30 <p>
31 Note that these tests are carefully designed to test performance of the underlying
32 algorithms and not memory allocation or variable copying. As usual, performance
33 results should be taken with a healthy dose of scepticism, and real-world
34 performance may vary widely depending upon the specifics of the program.
35 In each table relative times are given first, with the best performer given
36 a score of 1. Total actual times are given in brackets, measured in seconds
37 for 500000 operations.
38 </p>
39 <div class="table">
40 <a name="boost_multiprecision.perf.rational_performance.operator"></a><p class="title"><b>Table&#160;1.66.&#160;Operator +</b></p>
41 <div class="table-contents"><table class="table" summary="Operator +">
42 <colgroup>
43 <col>
44 <col>
45 <col>
46 <col>
47 <col>
48 </colgroup>
49 <thead><tr>
50 <th>
51 <p>
52 Backend
53 </p>
54 </th>
55 <th>
56 <p>
57 128 Bits
58 </p>
59 </th>
60 <th>
61 <p>
62 256 Bits
63 </p>
64 </th>
65 <th>
66 <p>
67 512 Bits
68 </p>
69 </th>
70 <th>
71 <p>
72 1024 Bits
73 </p>
74 </th>
75 </tr></thead>
76 <tbody>
77 <tr>
78 <td>
79 <p>
80 cpp_rational
81 </p>
82 </td>
83 <td>
84 <p>
85 5.89417 (18.4116s)
86 </p>
87 </td>
88 <td>
89 <p>
90 6.87256 (47.4698s)
91 </p>
92 </td>
93 <td>
94 <p>
95 6.65008 (107.715s)
96 </p>
97 </td>
98 <td>
99 <p>
100 6.53801 (256.244s)
101 </p>
102 </td>
103 </tr>
104 <tr>
105 <td>
106 <p>
107 mpq_rational
108 </p>
109 </td>
110 <td>
111 <p>
112 <span class="bold"><strong>1</strong></span> (3.1237s)
113 </p>
114 </td>
115 <td>
116 <p>
117 <span class="bold"><strong>1</strong></span> (6.90715s)
118 </p>
119 </td>
120 <td>
121 <p>
122 <span class="bold"><strong>1</strong></span> (16.1975s)
123 </p>
124 </td>
125 <td>
126 <p>
127 <span class="bold"><strong>1</strong></span> (39.1929s)
128 </p>
129 </td>
130 </tr>
131 </tbody>
132 </table></div>
133 </div>
134 <br class="table-break"><div class="table">
135 <a name="boost_multiprecision.perf.rational_performance.operator_int"></a><p class="title"><b>Table&#160;1.67.&#160;Operator +(int)</b></p>
136 <div class="table-contents"><table class="table" summary="Operator +(int)">
137 <colgroup>
138 <col>
139 <col>
140 <col>
141 <col>
142 <col>
143 </colgroup>
144 <thead><tr>
145 <th>
146 <p>
147 Backend
148 </p>
149 </th>
150 <th>
151 <p>
152 128 Bits
153 </p>
154 </th>
155 <th>
156 <p>
157 256 Bits
158 </p>
159 </th>
160 <th>
161 <p>
162 512 Bits
163 </p>
164 </th>
165 <th>
166 <p>
167 1024 Bits
168 </p>
169 </th>
170 </tr></thead>
171 <tbody>
172 <tr>
173 <td>
174 <p>
175 cpp_rational
176 </p>
177 </td>
178 <td>
179 <p>
180 3.62367 (2.46488s)
181 </p>
182 </td>
183 <td>
184 <p>
185 4.18291 (2.94603s)
186 </p>
187 </td>
188 <td>
189 <p>
190 4.726 (3.74866s)
191 </p>
192 </td>
193 <td>
194 <p>
195 6.1388 (5.56817s)
196 </p>
197 </td>
198 </tr>
199 <tr>
200 <td>
201 <p>
202 mpq_rational
203 </p>
204 </td>
205 <td>
206 <p>
207 <span class="bold"><strong>1</strong></span> (0.680215s)
208 </p>
209 </td>
210 <td>
211 <p>
212 <span class="bold"><strong>1</strong></span> (0.704303s)
213 </p>
214 </td>
215 <td>
216 <p>
217 <span class="bold"><strong>1</strong></span> (0.7932s)
218 </p>
219 </td>
220 <td>
221 <p>
222 <span class="bold"><strong>1</strong></span> (0.907046s)
223 </p>
224 </td>
225 </tr>
226 </tbody>
227 </table></div>
228 </div>
229 <br class="table-break"><div class="table">
230 <a name="boost_multiprecision.perf.rational_performance.operator_unsigned_long_long"></a><p class="title"><b>Table&#160;1.68.&#160;Operator +(unsigned long long)</b></p>
231 <div class="table-contents"><table class="table" summary="Operator +(unsigned long long)">
232 <colgroup>
233 <col>
234 <col>
235 <col>
236 <col>
237 <col>
238 </colgroup>
239 <thead><tr>
240 <th>
241 <p>
242 Backend
243 </p>
244 </th>
245 <th>
246 <p>
247 128 Bits
248 </p>
249 </th>
250 <th>
251 <p>
252 256 Bits
253 </p>
254 </th>
255 <th>
256 <p>
257 512 Bits
258 </p>
259 </th>
260 <th>
261 <p>
262 1024 Bits
263 </p>
264 </th>
265 </tr></thead>
266 <tbody>
267 <tr>
268 <td>
269 <p>
270 cpp_rational
271 </p>
272 </td>
273 <td>
274 <p>
275 1.1527 (2.6378s)
276 </p>
277 </td>
278 <td>
279 <p>
280 1.31751 (3.09863s)
281 </p>
282 </td>
283 <td>
284 <p>
285 1.58996 (4.00714s)
286 </p>
287 </td>
288 <td>
289 <p>
290 2.15642 (5.75702s)
291 </p>
292 </td>
293 </tr>
294 <tr>
295 <td>
296 <p>
297 mpq_rational
298 </p>
299 </td>
300 <td>
301 <p>
302 <span class="bold"><strong>1</strong></span> (2.28837s)
303 </p>
304 </td>
305 <td>
306 <p>
307 <span class="bold"><strong>1</strong></span> (2.35189s)
308 </p>
309 </td>
310 <td>
311 <p>
312 <span class="bold"><strong>1</strong></span> (2.52028s)
313 </p>
314 </td>
315 <td>
316 <p>
317 <span class="bold"><strong>1</strong></span> (2.66971s)
318 </p>
319 </td>
320 </tr>
321 </tbody>
322 </table></div>
323 </div>
324 <br class="table-break"><div class="table">
325 <a name="boost_multiprecision.perf.rational_performance.operator_unsigned_long_long0"></a><p class="title"><b>Table&#160;1.69.&#160;Operator +=(unsigned long long)</b></p>
326 <div class="table-contents"><table class="table" summary="Operator +=(unsigned long long)">
327 <colgroup>
328 <col>
329 <col>
330 <col>
331 <col>
332 <col>
333 </colgroup>
334 <thead><tr>
335 <th>
336 <p>
337 Backend
338 </p>
339 </th>
340 <th>
341 <p>
342 128 Bits
343 </p>
344 </th>
345 <th>
346 <p>
347 256 Bits
348 </p>
349 </th>
350 <th>
351 <p>
352 512 Bits
353 </p>
354 </th>
355 <th>
356 <p>
357 1024 Bits
358 </p>
359 </th>
360 </tr></thead>
361 <tbody>
362 <tr>
363 <td>
364 <p>
365 cpp_rational
366 </p>
367 </td>
368 <td>
369 <p>
370 1.18436 (2.7059s)
371 </p>
372 </td>
373 <td>
374 <p>
375 1.32279 (3.11099s)
376 </p>
377 </td>
378 <td>
379 <p>
380 1.61398 (4.05389s)
381 </p>
382 </td>
383 <td>
384 <p>
385 2.20048 (5.84623s)
386 </p>
387 </td>
388 </tr>
389 <tr>
390 <td>
391 <p>
392 mpq_rational
393 </p>
394 </td>
395 <td>
396 <p>
397 <span class="bold"><strong>1</strong></span> (2.2847s)
398 </p>
399 </td>
400 <td>
401 <p>
402 <span class="bold"><strong>1</strong></span> (2.35183s)
403 </p>
404 </td>
405 <td>
406 <p>
407 <span class="bold"><strong>1</strong></span> (2.51174s)
408 </p>
409 </td>
410 <td>
411 <p>
412 <span class="bold"><strong>1</strong></span> (2.6568s)
413 </p>
414 </td>
415 </tr>
416 </tbody>
417 </table></div>
418 </div>
419 <br class="table-break"><div class="table">
420 <a name="boost_multiprecision.perf.rational_performance.operator0"></a><p class="title"><b>Table&#160;1.70.&#160;Operator -</b></p>
421 <div class="table-contents"><table class="table" summary="Operator -">
422 <colgroup>
423 <col>
424 <col>
425 <col>
426 <col>
427 <col>
428 </colgroup>
429 <thead><tr>
430 <th>
431 <p>
432 Backend
433 </p>
434 </th>
435 <th>
436 <p>
437 128 Bits
438 </p>
439 </th>
440 <th>
441 <p>
442 256 Bits
443 </p>
444 </th>
445 <th>
446 <p>
447 512 Bits
448 </p>
449 </th>
450 <th>
451 <p>
452 1024 Bits
453 </p>
454 </th>
455 </tr></thead>
456 <tbody>
457 <tr>
458 <td>
459 <p>
460 cpp_rational
461 </p>
462 </td>
463 <td>
464 <p>
465 5.81893 (18.3457s)
466 </p>
467 </td>
468 <td>
469 <p>
470 6.82209 (47.1928s)
471 </p>
472 </td>
473 <td>
474 <p>
475 6.64143 (107.498s)
476 </p>
477 </td>
478 <td>
479 <p>
480 6.51362 (255.137s)
481 </p>
482 </td>
483 </tr>
484 <tr>
485 <td>
486 <p>
487 mpq_rational
488 </p>
489 </td>
490 <td>
491 <p>
492 <span class="bold"><strong>1</strong></span> (3.15277s)
493 </p>
494 </td>
495 <td>
496 <p>
497 <span class="bold"><strong>1</strong></span> (6.91765s)
498 </p>
499 </td>
500 <td>
501 <p>
502 <span class="bold"><strong>1</strong></span> (16.1859s)
503 </p>
504 </td>
505 <td>
506 <p>
507 <span class="bold"><strong>1</strong></span> (39.1698s)
508 </p>
509 </td>
510 </tr>
511 </tbody>
512 </table></div>
513 </div>
514 <br class="table-break"><div class="table">
515 <a name="boost_multiprecision.perf.rational_performance.operator_int0"></a><p class="title"><b>Table&#160;1.71.&#160;Operator -(int)</b></p>
516 <div class="table-contents"><table class="table" summary="Operator -(int)">
517 <colgroup>
518 <col>
519 <col>
520 <col>
521 <col>
522 <col>
523 </colgroup>
524 <thead><tr>
525 <th>
526 <p>
527 Backend
528 </p>
529 </th>
530 <th>
531 <p>
532 128 Bits
533 </p>
534 </th>
535 <th>
536 <p>
537 256 Bits
538 </p>
539 </th>
540 <th>
541 <p>
542 512 Bits
543 </p>
544 </th>
545 <th>
546 <p>
547 1024 Bits
548 </p>
549 </th>
550 </tr></thead>
551 <tbody>
552 <tr>
553 <td>
554 <p>
555 cpp_rational
556 </p>
557 </td>
558 <td>
559 <p>
560 3.72441 (2.48756s)
561 </p>
562 </td>
563 <td>
564 <p>
565 4.27663 (2.98713s)
566 </p>
567 </td>
568 <td>
569 <p>
570 4.62109 (3.72114s)
571 </p>
572 </td>
573 <td>
574 <p>
575 6.17605 (5.56503s)
576 </p>
577 </td>
578 </tr>
579 <tr>
580 <td>
581 <p>
582 mpq_rational
583 </p>
584 </td>
585 <td>
586 <p>
587 <span class="bold"><strong>1</strong></span> (0.667908s)
588 </p>
589 </td>
590 <td>
591 <p>
592 <span class="bold"><strong>1</strong></span> (0.698479s)
593 </p>
594 </td>
595 <td>
596 <p>
597 <span class="bold"><strong>1</strong></span> (0.805252s)
598 </p>
599 </td>
600 <td>
601 <p>
602 <span class="bold"><strong>1</strong></span> (0.901066s)
603 </p>
604 </td>
605 </tr>
606 </tbody>
607 </table></div>
608 </div>
609 <br class="table-break"><div class="table">
610 <a name="boost_multiprecision.perf.rational_performance.operator_unsigned_long_long1"></a><p class="title"><b>Table&#160;1.72.&#160;Operator -(unsigned long long)</b></p>
611 <div class="table-contents"><table class="table" summary="Operator -(unsigned long long)">
612 <colgroup>
613 <col>
614 <col>
615 <col>
616 <col>
617 <col>
618 </colgroup>
619 <thead><tr>
620 <th>
621 <p>
622 Backend
623 </p>
624 </th>
625 <th>
626 <p>
627 128 Bits
628 </p>
629 </th>
630 <th>
631 <p>
632 256 Bits
633 </p>
634 </th>
635 <th>
636 <p>
637 512 Bits
638 </p>
639 </th>
640 <th>
641 <p>
642 1024 Bits
643 </p>
644 </th>
645 </tr></thead>
646 <tbody>
647 <tr>
648 <td>
649 <p>
650 cpp_rational
651 </p>
652 </td>
653 <td>
654 <p>
655 1.15627 (2.63239s)
656 </p>
657 </td>
658 <td>
659 <p>
660 1.32096 (3.12092s)
661 </p>
662 </td>
663 <td>
664 <p>
665 1.61044 (4.00106s)
666 </p>
667 </td>
668 <td>
669 <p>
670 2.19378 (5.7644s)
671 </p>
672 </td>
673 </tr>
674 <tr>
675 <td>
676 <p>
677 mpq_rational
678 </p>
679 </td>
680 <td>
681 <p>
682 <span class="bold"><strong>1</strong></span> (2.27663s)
683 </p>
684 </td>
685 <td>
686 <p>
687 <span class="bold"><strong>1</strong></span> (2.36262s)
688 </p>
689 </td>
690 <td>
691 <p>
692 <span class="bold"><strong>1</strong></span> (2.48445s)
693 </p>
694 </td>
695 <td>
696 <p>
697 <span class="bold"><strong>1</strong></span> (2.62761s)
698 </p>
699 </td>
700 </tr>
701 </tbody>
702 </table></div>
703 </div>
704 <br class="table-break"><div class="table">
705 <a name="boost_multiprecision.perf.rational_performance.operator_unsigned_long_long2"></a><p class="title"><b>Table&#160;1.73.&#160;Operator -=(unsigned long long)</b></p>
706 <div class="table-contents"><table class="table" summary="Operator -=(unsigned long long)">
707 <colgroup>
708 <col>
709 <col>
710 <col>
711 <col>
712 <col>
713 </colgroup>
714 <thead><tr>
715 <th>
716 <p>
717 Backend
718 </p>
719 </th>
720 <th>
721 <p>
722 128 Bits
723 </p>
724 </th>
725 <th>
726 <p>
727 256 Bits
728 </p>
729 </th>
730 <th>
731 <p>
732 512 Bits
733 </p>
734 </th>
735 <th>
736 <p>
737 1024 Bits
738 </p>
739 </th>
740 </tr></thead>
741 <tbody>
742 <tr>
743 <td>
744 <p>
745 cpp_rational
746 </p>
747 </td>
748 <td>
749 <p>
750 1.1984 (2.73444s)
751 </p>
752 </td>
753 <td>
754 <p>
755 1.34141 (3.15698s)
756 </p>
757 </td>
758 <td>
759 <p>
760 1.64159 (4.06997s)
761 </p>
762 </td>
763 <td>
764 <p>
765 2.23017 (5.88108s)
766 </p>
767 </td>
768 </tr>
769 <tr>
770 <td>
771 <p>
772 mpq_rational
773 </p>
774 </td>
775 <td>
776 <p>
777 <span class="bold"><strong>1</strong></span> (2.28174s)
778 </p>
779 </td>
780 <td>
781 <p>
782 <span class="bold"><strong>1</strong></span> (2.35348s)
783 </p>
784 </td>
785 <td>
786 <p>
787 <span class="bold"><strong>1</strong></span> (2.47929s)
788 </p>
789 </td>
790 <td>
791 <p>
792 <span class="bold"><strong>1</strong></span> (2.63706s)
793 </p>
794 </td>
795 </tr>
796 </tbody>
797 </table></div>
798 </div>
799 <br class="table-break"><div class="table">
800 <a name="boost_multiprecision.perf.rational_performance.operator1"></a><p class="title"><b>Table&#160;1.74.&#160;Operator *</b></p>
801 <div class="table-contents"><table class="table" summary="Operator *">
802 <colgroup>
803 <col>
804 <col>
805 <col>
806 <col>
807 <col>
808 </colgroup>
809 <thead><tr>
810 <th>
811 <p>
812 Backend
813 </p>
814 </th>
815 <th>
816 <p>
817 128 Bits
818 </p>
819 </th>
820 <th>
821 <p>
822 256 Bits
823 </p>
824 </th>
825 <th>
826 <p>
827 512 Bits
828 </p>
829 </th>
830 <th>
831 <p>
832 1024 Bits
833 </p>
834 </th>
835 </tr></thead>
836 <tbody>
837 <tr>
838 <td>
839 <p>
840 cpp_rational
841 </p>
842 </td>
843 <td>
844 <p>
845 5.4306 (32.5882s)
846 </p>
847 </td>
848 <td>
849 <p>
850 6.91805 (89.9436s)
851 </p>
852 </td>
853 <td>
854 <p>
855 6.94556 (207.307s)
856 </p>
857 </td>
858 <td>
859 <p>
860 6.88704 (492.151s)
861 </p>
862 </td>
863 </tr>
864 <tr>
865 <td>
866 <p>
867 mpq_rational
868 </p>
869 </td>
870 <td>
871 <p>
872 <span class="bold"><strong>1</strong></span> (6.00084s)
873 </p>
874 </td>
875 <td>
876 <p>
877 <span class="bold"><strong>1</strong></span> (13.0013s)
878 </p>
879 </td>
880 <td>
881 <p>
882 <span class="bold"><strong>1</strong></span> (29.8475s)
883 </p>
884 </td>
885 <td>
886 <p>
887 <span class="bold"><strong>1</strong></span> (71.4604s)
888 </p>
889 </td>
890 </tr>
891 </tbody>
892 </table></div>
893 </div>
894 <br class="table-break"><div class="table">
895 <a name="boost_multiprecision.perf.rational_performance.operator_int1"></a><p class="title"><b>Table&#160;1.75.&#160;Operator *(int)</b></p>
896 <div class="table-contents"><table class="table" summary="Operator *(int)">
897 <colgroup>
898 <col>
899 <col>
900 <col>
901 <col>
902 <col>
903 </colgroup>
904 <thead><tr>
905 <th>
906 <p>
907 Backend
908 </p>
909 </th>
910 <th>
911 <p>
912 128 Bits
913 </p>
914 </th>
915 <th>
916 <p>
917 256 Bits
918 </p>
919 </th>
920 <th>
921 <p>
922 512 Bits
923 </p>
924 </th>
925 <th>
926 <p>
927 1024 Bits
928 </p>
929 </th>
930 </tr></thead>
931 <tbody>
932 <tr>
933 <td>
934 <p>
935 cpp_rational
936 </p>
937 </td>
938 <td>
939 <p>
940 2.12892 (2.51376s)
941 </p>
942 </td>
943 <td>
944 <p>
945 2.47245 (3.07841s)
946 </p>
947 </td>
948 <td>
949 <p>
950 2.86832 (3.93619s)
951 </p>
952 </td>
953 <td>
954 <p>
955 3.94086 (6.02565s)
956 </p>
957 </td>
958 </tr>
959 <tr>
960 <td>
961 <p>
962 mpq_rational
963 </p>
964 </td>
965 <td>
966 <p>
967 <span class="bold"><strong>1</strong></span> (1.18077s)
968 </p>
969 </td>
970 <td>
971 <p>
972 <span class="bold"><strong>1</strong></span> (1.24508s)
973 </p>
974 </td>
975 <td>
976 <p>
977 <span class="bold"><strong>1</strong></span> (1.3723s)
978 </p>
979 </td>
980 <td>
981 <p>
982 <span class="bold"><strong>1</strong></span> (1.52902s)
983 </p>
984 </td>
985 </tr>
986 </tbody>
987 </table></div>
988 </div>
989 <br class="table-break"><div class="table">
990 <a name="boost_multiprecision.perf.rational_performance.operator_unsigned_long_long3"></a><p class="title"><b>Table&#160;1.76.&#160;Operator *(unsigned long long)</b></p>
991 <div class="table-contents"><table class="table" summary="Operator *(unsigned long long)">
992 <colgroup>
993 <col>
994 <col>
995 <col>
996 <col>
997 <col>
998 </colgroup>
999 <thead><tr>
1000 <th>
1001 <p>
1002 Backend
1003 </p>
1004 </th>
1005 <th>
1006 <p>
1007 128 Bits
1008 </p>
1009 </th>
1010 <th>
1011 <p>
1012 256 Bits
1013 </p>
1014 </th>
1015 <th>
1016 <p>
1017 512 Bits
1018 </p>
1019 </th>
1020 <th>
1021 <p>
1022 1024 Bits
1023 </p>
1024 </th>
1025 </tr></thead>
1026 <tbody>
1027 <tr>
1028 <td>
1029 <p>
1030 cpp_rational
1031 </p>
1032 </td>
1033 <td>
1034 <p>
1035 1.32254 (5.43565s)
1036 </p>
1037 </td>
1038 <td>
1039 <p>
1040 1.56078 (6.73163s)
1041 </p>
1042 </td>
1043 <td>
1044 <p>
1045 1.97701 (9.32522s)
1046 </p>
1047 </td>
1048 <td>
1049 <p>
1050 2.85404 (15.1573s)
1051 </p>
1052 </td>
1053 </tr>
1054 <tr>
1055 <td>
1056 <p>
1057 mpq_rational
1058 </p>
1059 </td>
1060 <td>
1061 <p>
1062 <span class="bold"><strong>1</strong></span> (4.11002s)
1063 </p>
1064 </td>
1065 <td>
1066 <p>
1067 <span class="bold"><strong>1</strong></span> (4.313s)
1068 </p>
1069 </td>
1070 <td>
1071 <p>
1072 <span class="bold"><strong>1</strong></span> (4.71682s)
1073 </p>
1074 </td>
1075 <td>
1076 <p>
1077 <span class="bold"><strong>1</strong></span> (5.31082s)
1078 </p>
1079 </td>
1080 </tr>
1081 </tbody>
1082 </table></div>
1083 </div>
1084 <br class="table-break"><div class="table">
1085 <a name="boost_multiprecision.perf.rational_performance.operator_unsigned_long_long4"></a><p class="title"><b>Table&#160;1.77.&#160;Operator *=(unsigned long long)</b></p>
1086 <div class="table-contents"><table class="table" summary="Operator *=(unsigned long long)">
1087 <colgroup>
1088 <col>
1089 <col>
1090 <col>
1091 <col>
1092 <col>
1093 </colgroup>
1094 <thead><tr>
1095 <th>
1096 <p>
1097 Backend
1098 </p>
1099 </th>
1100 <th>
1101 <p>
1102 128 Bits
1103 </p>
1104 </th>
1105 <th>
1106 <p>
1107 256 Bits
1108 </p>
1109 </th>
1110 <th>
1111 <p>
1112 512 Bits
1113 </p>
1114 </th>
1115 <th>
1116 <p>
1117 1024 Bits
1118 </p>
1119 </th>
1120 </tr></thead>
1121 <tbody>
1122 <tr>
1123 <td>
1124 <p>
1125 cpp_rational
1126 </p>
1127 </td>
1128 <td>
1129 <p>
1130 6.29806 (58.1188s)
1131 </p>
1132 </td>
1133 <td>
1134 <p>
1135 6.30556 (59.5076s)
1136 </p>
1137 </td>
1138 <td>
1139 <p>
1140 6.3385 (62.1007s)
1141 </p>
1142 </td>
1143 <td>
1144 <p>
1145 6.55345 (67.6905s)
1146 </p>
1147 </td>
1148 </tr>
1149 <tr>
1150 <td>
1151 <p>
1152 mpq_rational
1153 </p>
1154 </td>
1155 <td>
1156 <p>
1157 <span class="bold"><strong>1</strong></span> (9.22804s)
1158 </p>
1159 </td>
1160 <td>
1161 <p>
1162 <span class="bold"><strong>1</strong></span> (9.43733s)
1163 </p>
1164 </td>
1165 <td>
1166 <p>
1167 <span class="bold"><strong>1</strong></span> (9.79739s)
1168 </p>
1169 </td>
1170 <td>
1171 <p>
1172 <span class="bold"><strong>1</strong></span> (10.329s)
1173 </p>
1174 </td>
1175 </tr>
1176 </tbody>
1177 </table></div>
1178 </div>
1179 <br class="table-break"><div class="table">
1180 <a name="boost_multiprecision.perf.rational_performance.operator2"></a><p class="title"><b>Table&#160;1.78.&#160;Operator /</b></p>
1181 <div class="table-contents"><table class="table" summary="Operator /">
1182 <colgroup>
1183 <col>
1184 <col>
1185 <col>
1186 <col>
1187 <col>
1188 </colgroup>
1189 <thead><tr>
1190 <th>
1191 <p>
1192 Backend
1193 </p>
1194 </th>
1195 <th>
1196 <p>
1197 128 Bits
1198 </p>
1199 </th>
1200 <th>
1201 <p>
1202 256 Bits
1203 </p>
1204 </th>
1205 <th>
1206 <p>
1207 512 Bits
1208 </p>
1209 </th>
1210 <th>
1211 <p>
1212 1024 Bits
1213 </p>
1214 </th>
1215 </tr></thead>
1216 <tbody>
1217 <tr>
1218 <td>
1219 <p>
1220 cpp_rational
1221 </p>
1222 </td>
1223 <td>
1224 <p>
1225 4.4269 (66.8031s)
1226 </p>
1227 </td>
1228 <td>
1229 <p>
1230 6.40103 (173.527s)
1231 </p>
1232 </td>
1233 <td>
1234 <p>
1235 6.32347 (348.193s)
1236 </p>
1237 </td>
1238 <td>
1239 <p>
1240 6.61148 (824.063s)
1241 </p>
1242 </td>
1243 </tr>
1244 <tr>
1245 <td>
1246 <p>
1247 mpq_rational
1248 </p>
1249 </td>
1250 <td>
1251 <p>
1252 <span class="bold"><strong>1</strong></span> (15.0903s)
1253 </p>
1254 </td>
1255 <td>
1256 <p>
1257 <span class="bold"><strong>1</strong></span> (27.1093s)
1258 </p>
1259 </td>
1260 <td>
1261 <p>
1262 <span class="bold"><strong>1</strong></span> (55.0637s)
1263 </p>
1264 </td>
1265 <td>
1266 <p>
1267 <span class="bold"><strong>1</strong></span> (124.641s)
1268 </p>
1269 </td>
1270 </tr>
1271 </tbody>
1272 </table></div>
1273 </div>
1274 <br class="table-break"><div class="table">
1275 <a name="boost_multiprecision.perf.rational_performance.operator_int2"></a><p class="title"><b>Table&#160;1.79.&#160;Operator /(int)</b></p>
1276 <div class="table-contents"><table class="table" summary="Operator /(int)">
1277 <colgroup>
1278 <col>
1279 <col>
1280 <col>
1281 <col>
1282 <col>
1283 </colgroup>
1284 <thead><tr>
1285 <th>
1286 <p>
1287 Backend
1288 </p>
1289 </th>
1290 <th>
1291 <p>
1292 128 Bits
1293 </p>
1294 </th>
1295 <th>
1296 <p>
1297 256 Bits
1298 </p>
1299 </th>
1300 <th>
1301 <p>
1302 512 Bits
1303 </p>
1304 </th>
1305 <th>
1306 <p>
1307 1024 Bits
1308 </p>
1309 </th>
1310 </tr></thead>
1311 <tbody>
1312 <tr>
1313 <td>
1314 <p>
1315 cpp_rational
1316 </p>
1317 </td>
1318 <td>
1319 <p>
1320 1.78772 (2.50984s)
1321 </p>
1322 </td>
1323 <td>
1324 <p>
1325 2.10623 (3.10606s)
1326 </p>
1327 </td>
1328 <td>
1329 <p>
1330 2.46986 (3.99358s)
1331 </p>
1332 </td>
1333 <td>
1334 <p>
1335 3.37428 (5.96678s)
1336 </p>
1337 </td>
1338 </tr>
1339 <tr>
1340 <td>
1341 <p>
1342 mpq_rational
1343 </p>
1344 </td>
1345 <td>
1346 <p>
1347 <span class="bold"><strong>1</strong></span> (1.40393s)
1348 </p>
1349 </td>
1350 <td>
1351 <p>
1352 <span class="bold"><strong>1</strong></span> (1.4747s)
1353 </p>
1354 </td>
1355 <td>
1356 <p>
1357 <span class="bold"><strong>1</strong></span> (1.61693s)
1358 </p>
1359 </td>
1360 <td>
1361 <p>
1362 <span class="bold"><strong>1</strong></span> (1.76831s)
1363 </p>
1364 </td>
1365 </tr>
1366 </tbody>
1367 </table></div>
1368 </div>
1369 <br class="table-break"><div class="table">
1370 <a name="boost_multiprecision.perf.rational_performance.operator_unsigned_long_long5"></a><p class="title"><b>Table&#160;1.80.&#160;Operator /(unsigned long long)</b></p>
1371 <div class="table-contents"><table class="table" summary="Operator /(unsigned long long)">
1372 <colgroup>
1373 <col>
1374 <col>
1375 <col>
1376 <col>
1377 <col>
1378 </colgroup>
1379 <thead><tr>
1380 <th>
1381 <p>
1382 Backend
1383 </p>
1384 </th>
1385 <th>
1386 <p>
1387 128 Bits
1388 </p>
1389 </th>
1390 <th>
1391 <p>
1392 256 Bits
1393 </p>
1394 </th>
1395 <th>
1396 <p>
1397 512 Bits
1398 </p>
1399 </th>
1400 <th>
1401 <p>
1402 1024 Bits
1403 </p>
1404 </th>
1405 </tr></thead>
1406 <tbody>
1407 <tr>
1408 <td>
1409 <p>
1410 cpp_rational
1411 </p>
1412 </td>
1413 <td>
1414 <p>
1415 1.29695 (5.45454s)
1416 </p>
1417 </td>
1418 <td>
1419 <p>
1420 1.55248 (6.85353s)
1421 </p>
1422 </td>
1423 <td>
1424 <p>
1425 1.93237 (9.28765s)
1426 </p>
1427 </td>
1428 <td>
1429 <p>
1430 2.75211 (14.8541s)
1431 </p>
1432 </td>
1433 </tr>
1434 <tr>
1435 <td>
1436 <p>
1437 mpq_rational
1438 </p>
1439 </td>
1440 <td>
1441 <p>
1442 <span class="bold"><strong>1</strong></span> (4.20568s)
1443 </p>
1444 </td>
1445 <td>
1446 <p>
1447 <span class="bold"><strong>1</strong></span> (4.41458s)
1448 </p>
1449 </td>
1450 <td>
1451 <p>
1452 <span class="bold"><strong>1</strong></span> (4.80635s)
1453 </p>
1454 </td>
1455 <td>
1456 <p>
1457 <span class="bold"><strong>1</strong></span> (5.39734s)
1458 </p>
1459 </td>
1460 </tr>
1461 </tbody>
1462 </table></div>
1463 </div>
1464 <br class="table-break"><div class="table">
1465 <a name="boost_multiprecision.perf.rational_performance.operator_unsigned_long_long6"></a><p class="title"><b>Table&#160;1.81.&#160;Operator /=(unsigned long long)</b></p>
1466 <div class="table-contents"><table class="table" summary="Operator /=(unsigned long long)">
1467 <colgroup>
1468 <col>
1469 <col>
1470 <col>
1471 <col>
1472 <col>
1473 </colgroup>
1474 <thead><tr>
1475 <th>
1476 <p>
1477 Backend
1478 </p>
1479 </th>
1480 <th>
1481 <p>
1482 128 Bits
1483 </p>
1484 </th>
1485 <th>
1486 <p>
1487 256 Bits
1488 </p>
1489 </th>
1490 <th>
1491 <p>
1492 512 Bits
1493 </p>
1494 </th>
1495 <th>
1496 <p>
1497 1024 Bits
1498 </p>
1499 </th>
1500 </tr></thead>
1501 <tbody>
1502 <tr>
1503 <td>
1504 <p>
1505 cpp_rational
1506 </p>
1507 </td>
1508 <td>
1509 <p>
1510 6.19401 (58.4278s)
1511 </p>
1512 </td>
1513 <td>
1514 <p>
1515 6.20135 (59.643s)
1516 </p>
1517 </td>
1518 <td>
1519 <p>
1520 6.21327 (62.0338s)
1521 </p>
1522 </td>
1523 <td>
1524 <p>
1525 6.40576 (67.6778s)
1526 </p>
1527 </td>
1528 </tr>
1529 <tr>
1530 <td>
1531 <p>
1532 mpq_rational
1533 </p>
1534 </td>
1535 <td>
1536 <p>
1537 <span class="bold"><strong>1</strong></span> (9.43295s)
1538 </p>
1539 </td>
1540 <td>
1541 <p>
1542 <span class="bold"><strong>1</strong></span> (9.61774s)
1543 </p>
1544 </td>
1545 <td>
1546 <p>
1547 <span class="bold"><strong>1</strong></span> (9.98407s)
1548 </p>
1549 </td>
1550 <td>
1551 <p>
1552 <span class="bold"><strong>1</strong></span> (10.5652s)
1553 </p>
1554 </td>
1555 </tr>
1556 </tbody>
1557 </table></div>
1558 </div>
1559 <br class="table-break"><div class="table">
1560 <a name="boost_multiprecision.perf.rational_performance.operator_construct"></a><p class="title"><b>Table&#160;1.82.&#160;Operator construct</b></p>
1561 <div class="table-contents"><table class="table" summary="Operator construct">
1562 <colgroup>
1563 <col>
1564 <col>
1565 <col>
1566 <col>
1567 <col>
1568 </colgroup>
1569 <thead><tr>
1570 <th>
1571 <p>
1572 Backend
1573 </p>
1574 </th>
1575 <th>
1576 <p>
1577 128 Bits
1578 </p>
1579 </th>
1580 <th>
1581 <p>
1582 256 Bits
1583 </p>
1584 </th>
1585 <th>
1586 <p>
1587 512 Bits
1588 </p>
1589 </th>
1590 <th>
1591 <p>
1592 1024 Bits
1593 </p>
1594 </th>
1595 </tr></thead>
1596 <tbody>
1597 <tr>
1598 <td>
1599 <p>
1600 cpp_rational
1601 </p>
1602 </td>
1603 <td>
1604 <p>
1605 <span class="bold"><strong>1</strong></span> (0.00978288s)
1606 </p>
1607 </td>
1608 <td>
1609 <p>
1610 <span class="bold"><strong>1</strong></span> (0.0100574s)
1611 </p>
1612 </td>
1613 <td>
1614 <p>
1615 <span class="bold"><strong>1</strong></span> (0.0101393s)
1616 </p>
1617 </td>
1618 <td>
1619 <p>
1620 <span class="bold"><strong>1</strong></span> (0.0101847s)
1621 </p>
1622 </td>
1623 </tr>
1624 <tr>
1625 <td>
1626 <p>
1627 mpq_rational
1628 </p>
1629 </td>
1630 <td>
1631 <p>
1632 39.1516 (0.383015s)
1633 </p>
1634 </td>
1635 <td>
1636 <p>
1637 38.3523 (0.385725s)
1638 </p>
1639 </td>
1640 <td>
1641 <p>
1642 37.5812 (0.381048s)
1643 </p>
1644 </td>
1645 <td>
1646 <p>
1647 37.6007 (0.382953s)
1648 </p>
1649 </td>
1650 </tr>
1651 </tbody>
1652 </table></div>
1653 </div>
1654 <br class="table-break"><div class="table">
1655 <a name="boost_multiprecision.perf.rational_performance.operator_construct_unsigned"></a><p class="title"><b>Table&#160;1.83.&#160;Operator construct(unsigned)</b></p>
1656 <div class="table-contents"><table class="table" summary="Operator construct(unsigned)">
1657 <colgroup>
1658 <col>
1659 <col>
1660 <col>
1661 <col>
1662 <col>
1663 </colgroup>
1664 <thead><tr>
1665 <th>
1666 <p>
1667 Backend
1668 </p>
1669 </th>
1670 <th>
1671 <p>
1672 128 Bits
1673 </p>
1674 </th>
1675 <th>
1676 <p>
1677 256 Bits
1678 </p>
1679 </th>
1680 <th>
1681 <p>
1682 512 Bits
1683 </p>
1684 </th>
1685 <th>
1686 <p>
1687 1024 Bits
1688 </p>
1689 </th>
1690 </tr></thead>
1691 <tbody>
1692 <tr>
1693 <td>
1694 <p>
1695 cpp_rational
1696 </p>
1697 </td>
1698 <td>
1699 <p>
1700 <span class="bold"><strong>1</strong></span> (0.0548151s)
1701 </p>
1702 </td>
1703 <td>
1704 <p>
1705 <span class="bold"><strong>1</strong></span> (0.0557542s)
1706 </p>
1707 </td>
1708 <td>
1709 <p>
1710 <span class="bold"><strong>1</strong></span> (0.055825s)
1711 </p>
1712 </td>
1713 <td>
1714 <p>
1715 <span class="bold"><strong>1</strong></span> (0.0552808s)
1716 </p>
1717 </td>
1718 </tr>
1719 <tr>
1720 <td>
1721 <p>
1722 mpq_rational
1723 </p>
1724 </td>
1725 <td>
1726 <p>
1727 7.21073 (0.395257s)
1728 </p>
1729 </td>
1730 <td>
1731 <p>
1732 7.1016 (0.395944s)
1733 </p>
1734 </td>
1735 <td>
1736 <p>
1737 7.02046 (0.391917s)
1738 </p>
1739 </td>
1740 <td>
1741 <p>
1742 7.16881 (0.396297s)
1743 </p>
1744 </td>
1745 </tr>
1746 </tbody>
1747 </table></div>
1748 </div>
1749 <br class="table-break"><div class="table">
1750 <a name="boost_multiprecision.perf.rational_performance.operator_construct_unsigned_long"></a><p class="title"><b>Table&#160;1.84.&#160;Operator construct(unsigned long long)</b></p>
1751 <div class="table-contents"><table class="table" summary="Operator construct(unsigned long long)">
1752 <colgroup>
1753 <col>
1754 <col>
1755 <col>
1756 <col>
1757 <col>
1758 </colgroup>
1759 <thead><tr>
1760 <th>
1761 <p>
1762 Backend
1763 </p>
1764 </th>
1765 <th>
1766 <p>
1767 128 Bits
1768 </p>
1769 </th>
1770 <th>
1771 <p>
1772 256 Bits
1773 </p>
1774 </th>
1775 <th>
1776 <p>
1777 512 Bits
1778 </p>
1779 </th>
1780 <th>
1781 <p>
1782 1024 Bits
1783 </p>
1784 </th>
1785 </tr></thead>
1786 <tbody>
1787 <tr>
1788 <td>
1789 <p>
1790 cpp_rational
1791 </p>
1792 </td>
1793 <td>
1794 <p>
1795 <span class="bold"><strong>1</strong></span> (0.0605156s)
1796 </p>
1797 </td>
1798 <td>
1799 <p>
1800 <span class="bold"><strong>1</strong></span> (0.0616657s)
1801 </p>
1802 </td>
1803 <td>
1804 <p>
1805 <span class="bold"><strong>1</strong></span> (0.0592056s)
1806 </p>
1807 </td>
1808 <td>
1809 <p>
1810 <span class="bold"><strong>1</strong></span> (0.0603081s)
1811 </p>
1812 </td>
1813 </tr>
1814 <tr>
1815 <td>
1816 <p>
1817 mpq_rational
1818 </p>
1819 </td>
1820 <td>
1821 <p>
1822 35.1604 (2.12775s)
1823 </p>
1824 </td>
1825 <td>
1826 <p>
1827 34.7575 (2.14335s)
1828 </p>
1829 </td>
1830 <td>
1831 <p>
1832 35.7232 (2.11502s)
1833 </p>
1834 </td>
1835 <td>
1836 <p>
1837 35.0437 (2.11342s)
1838 </p>
1839 </td>
1840 </tr>
1841 </tbody>
1842 </table></div>
1843 </div>
1844 <br class="table-break"><div class="table">
1845 <a name="boost_multiprecision.perf.rational_performance.operator_str"></a><p class="title"><b>Table&#160;1.85.&#160;Operator str</b></p>
1846 <div class="table-contents"><table class="table" summary="Operator str">
1847 <colgroup>
1848 <col>
1849 <col>
1850 <col>
1851 <col>
1852 <col>
1853 </colgroup>
1854 <thead><tr>
1855 <th>
1856 <p>
1857 Backend
1858 </p>
1859 </th>
1860 <th>
1861 <p>
1862 128 Bits
1863 </p>
1864 </th>
1865 <th>
1866 <p>
1867 256 Bits
1868 </p>
1869 </th>
1870 <th>
1871 <p>
1872 512 Bits
1873 </p>
1874 </th>
1875 <th>
1876 <p>
1877 1024 Bits
1878 </p>
1879 </th>
1880 </tr></thead>
1881 <tbody>
1882 <tr>
1883 <td>
1884 <p>
1885 cpp_rational
1886 </p>
1887 </td>
1888 <td>
1889 <p>
1890 5.48898 (0.0208949s)
1891 </p>
1892 </td>
1893 <td>
1894 <p>
1895 8.49668 (0.0546688s)
1896 </p>
1897 </td>
1898 <td>
1899 <p>
1900 10.107 (0.121897s)
1901 </p>
1902 </td>
1903 <td>
1904 <p>
1905 10.5339 (0.310584s)
1906 </p>
1907 </td>
1908 </tr>
1909 <tr>
1910 <td>
1911 <p>
1912 mpq_rational
1913 </p>
1914 </td>
1915 <td>
1916 <p>
1917 <span class="bold"><strong>1</strong></span> (0.0038067s)
1918 </p>
1919 </td>
1920 <td>
1921 <p>
1922 <span class="bold"><strong>1</strong></span> (0.00643413s)
1923 </p>
1924 </td>
1925 <td>
1926 <p>
1927 <span class="bold"><strong>1</strong></span> (0.0120606s)
1928 </p>
1929 </td>
1930 <td>
1931 <p>
1932 <span class="bold"><strong>1</strong></span> (0.0294843s)
1933 </p>
1934 </td>
1935 </tr>
1936 </tbody>
1937 </table></div>
1938 </div>
1939 <br class="table-break"><p>
1940 Test code was compiled with Microsoft Visual Studio 2010 with all optimisations
1941 turned on (/Ox), and used MPIR-2.3.0 and <a href="http://www.mpfr.org" target="_top">MPFR</a>-3.0.0.
1942 The tests were run on 32-bit Windows Vista machine.
1943 </p>
1944 </div>
1945 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
1946 <td align="left"></td>
1947 <td align="right"><div class="copyright-footer">Copyright &#169; 2002-2013 John Maddock and Christopher Kormanyos<p>
1948 Distributed under the Boost Software License, Version 1.0. (See accompanying
1949 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>)
1950 </p>
1951 </div></td>
1952 </tr></table>
1953 <hr>
1954 <div class="spirit-nav">
1955 <a accesskey="p" href="integer_performance.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../perf.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="../map.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
1956 </div>
1957 </body>
1958 </html>