08-Jan-2022 11:09:01 wtime_test(): MATLAB/Octave version 9.8.0.1380330 (R2020a) Update 2. Test wtime(). wtime_test01(): Time the RAND function: x = rand ( n, 1 ); Data vectors will be of minimum size 1024 Data vectors will be of maximum size 1048576 Number of repetitions of the operation: 5 Timing results: Vector Size Rep #1 Rep #2 Rep #3 Rep #4 Rep #5 1024 0.001961 0.000402 0.000020 0.000020 0.000020 2048 0.001770 0.000191 0.000010 0.000010 0.000020 4096 0.000332 0.000040 0.000030 0.000030 0.000030 8192 0.000111 0.000060 0.000060 0.000060 0.000050 16384 0.000402 0.000111 0.000111 0.000111 0.000121 32768 0.000302 0.000211 0.000211 0.000231 0.000231 65536 0.000593 0.000412 0.000402 0.000422 0.000453 131072 0.001177 0.000835 0.000805 0.000805 0.000805 262144 0.002243 0.002102 0.001790 0.001609 0.001650 524288 0.004536 0.004275 0.003460 0.003651 0.003370 1048576 0.008680 0.008600 0.007192 0.006608 0.006900 wtime_test02() Time vectorized operations: y(1:n) = x(1:n) y(1:n) = PI * x(1:n) ) y(1:n) = sqrt ( x(1:n) ) y(1:n) = exp ( x(1:n) ) Data vectors will be of minimum size 4096 Data vectors will be of maximum size 4194304 Number of repetitions of the operation: 5 Timing results: Vector Size Rep #1 Rep #2 Rep #3 Rep #4 Rep #5 4096 0.000392 0.000030 0.000030 0.000030 0.000030 8192 0.000121 0.000241 0.000010 0.000020 0.000020 16384 0.000070 0.000060 0.000030 0.000020 0.000030 32768 0.000091 0.000111 0.000050 0.000050 0.000050 65536 0.000523 0.000211 0.000091 0.000091 0.000091 131072 0.000342 0.000433 0.000191 0.000181 0.000181 262144 0.000694 0.000925 0.000412 0.000412 0.000433 524288 0.001368 0.002022 0.000966 0.000935 0.000925 1048576 0.004536 0.004335 0.002193 0.002152 0.002152 2097152 0.012100 0.009696 0.010008 0.009606 0.010270 4194304 0.026453 0.015852 0.015299 0.015409 0.015822 Timing results: Vector Size Rep #1 Rep #2 Rep #3 Rep #4 Rep #5 4096 0.000563 0.000030 0.000030 0.000030 0.000030 8192 0.000070 0.000030 0.000030 0.000040 0.000030 16384 0.000060 0.000040 0.000040 0.000040 0.000040 32768 0.000091 0.000070 0.000070 0.000070 0.000101 65536 0.000433 0.000141 0.000121 0.000131 0.000131 131072 0.000262 0.000251 0.000241 0.000251 0.000231 262144 0.000523 0.000493 0.000714 0.000543 0.000533 524288 0.001137 0.001127 0.001157 0.001137 0.001147 1048576 0.002665 0.002635 0.002645 0.002776 0.002655 2097152 0.010742 0.010038 0.011054 0.011316 0.011446 4194304 0.017833 0.017964 0.018819 0.018437 0.021082 Timing results: Vector Size Rep #1 Rep #2 Rep #3 Rep #4 Rep #5 4096 0.000513 0.000060 0.000050 0.000060 0.000060 8192 0.000151 0.000050 0.000080 0.000060 0.000050 16384 0.000141 0.000070 0.000070 0.000070 0.000070 32768 0.000211 0.000111 0.000111 0.000111 0.000121 65536 0.000654 0.000191 0.000201 0.000201 0.000201 131072 0.000433 0.000433 0.000392 0.000402 0.000412 262144 0.000865 0.001277 0.001026 0.001247 0.000885 524288 0.001800 0.001931 0.001851 0.001921 0.002052 1048576 0.004033 0.005331 0.005240 0.004919 0.004597 2097152 0.014001 0.015087 0.014313 0.015178 0.015580 4194304 0.025749 0.025880 0.025739 0.026524 0.026665 Timing results: Vector Size Rep #1 Rep #2 Rep #3 Rep #4 Rep #5 4096 0.000483 0.000091 0.000080 0.000101 0.000101 8192 0.000111 0.000111 0.000091 0.000121 0.000111 16384 0.000131 0.000141 0.000141 0.000141 0.000141 32768 0.000231 0.000221 0.000221 0.000231 0.000231 65536 0.000674 0.000402 0.000402 0.000402 0.000392 131072 0.000754 0.000734 0.000764 0.000734 0.000744 262144 0.001438 0.001448 0.001559 0.001469 0.001448 524288 0.003440 0.003017 0.003500 0.003188 0.003510 1048576 0.007383 0.006337 0.006447 0.006286 0.006246 2097152 0.018035 0.018467 0.018346 0.018195 0.017753 4194304 0.031593 0.032277 0.032146 0.033132 0.033082 wtime_test03 Time unvectorized operations: for i = 1 : n y(i) = x(i) y(i) = PI * x(i) ) y(i) = sqrt ( x(i) ) y(i) = exp ( x(i) ) end Data vectors will be of minimum size 4096 Data vectors will be of maximum size 4194304 Number of repetitions of the operation: 5 Timing results: Vector Size Rep #1 Rep #2 Rep #3 Rep #4 Rep #5 4096 0.000614 0.000020 0.000020 0.000030 0.000030 8192 0.000121 0.000312 0.000010 0.000020 0.000010 16384 0.000171 0.000161 0.000030 0.000030 0.000020 32768 0.000322 0.000302 0.000050 0.000050 0.000050 65536 0.000835 0.000654 0.000101 0.000101 0.000101 131072 0.001197 0.001287 0.000211 0.000211 0.000211 262144 0.001469 0.001056 0.000422 0.000422 0.000433 524288 0.000925 0.000855 0.000915 0.000845 0.000865 1048576 0.001831 0.001730 0.001770 0.002223 0.001720 2097152 0.003933 0.003812 0.003973 0.004144 0.003762 4194304 0.014383 0.014987 0.014796 0.015510 0.014585 Timing results: Vector Size Rep #1 Rep #2 Rep #3 Rep #4 Rep #5 4096 0.000493 0.000030 0.000020 0.000030 0.000030 8192 0.000151 0.000020 0.000020 0.000020 0.000030 16384 0.000181 0.000030 0.000030 0.000030 0.000030 32768 0.000342 0.000060 0.000060 0.000080 0.000060 65536 0.000885 0.000121 0.000111 0.000111 0.000121 131072 0.001408 0.000251 0.000241 0.000241 0.000231 262144 0.001428 0.000493 0.000503 0.000483 0.000593 524288 0.001026 0.000935 0.000945 0.000976 0.000986 1048576 0.002052 0.002152 0.002334 0.001951 0.002032 2097152 0.003923 0.003903 0.004566 0.004023 0.004235 4194304 0.015007 0.015460 0.015631 0.014977 0.015299 Timing results: Vector Size Rep #1 Rep #2 Rep #3 Rep #4 Rep #5 4096 0.000593 0.000040 0.000040 0.000040 0.000040 8192 0.000161 0.000040 0.000040 0.000040 0.000040 16384 0.000231 0.000070 0.000070 0.000080 0.000080 32768 0.000443 0.000151 0.000141 0.000151 0.000151 65536 0.001177 0.000292 0.000282 0.000332 0.000292 131072 0.001740 0.000714 0.000583 0.000593 0.000624 262144 0.002746 0.001177 0.001257 0.001267 0.001237 524288 0.003017 0.002786 0.002867 0.002977 0.002505 1048576 0.005019 0.004969 0.004727 0.005049 0.004949 2097152 0.010270 0.009948 0.010078 0.009636 0.010561 4194304 0.028042 0.028073 0.028093 0.027721 0.027670 Timing results: Vector Size Rep #1 Rep #2 Rep #3 Rep #4 Rep #5 4096 0.000644 0.000070 0.000070 0.000070 0.000091 8192 0.000211 0.000111 0.000111 0.000111 0.000111 16384 0.000433 0.000221 0.000211 0.000302 0.000231 32768 0.000825 0.000433 0.000483 0.000483 0.000453 65536 0.001800 0.000855 0.000865 0.000945 0.001026 131072 0.002977 0.001700 0.001770 0.001871 0.001780 262144 0.003913 0.004023 0.003561 0.003490 0.003460 524288 0.007081 0.007151 0.007856 0.007685 0.007916 1048576 0.014484 0.014212 0.015550 0.015097 0.015349 2097152 0.030145 0.030778 0.030859 0.030215 0.029692 4194304 0.067270 0.069603 0.067803 0.067059 0.066807 wtime_test04() Time the 2D nearest neighbor problem. Given X(2,N) and Y(2), find X(2,*) closest to Y(2). for i = 1 : n if distance ( x(2,i), y ) < minimum so far x_min = x(2,i) end Data vectors will be of minimum size 1024 Data vectors will be of maximum size 1048576 Number of repetitions of the operation: 5 Timing results: Vector Size Rep #1 Rep #2 Rep #3 Rep #4 Rep #5 1024 0.001096 0.000020 0.000010 0.000010 0.000010 2048 0.000080 0.000231 0.000010 0.000010 0.000010 4096 0.000101 0.000101 0.000020 0.000020 0.000020 8192 0.000181 0.000241 0.000030 0.000030 0.000030 16384 0.000553 0.000603 0.000050 0.000080 0.000040 32768 0.000603 0.000694 0.000091 0.000080 0.000091 65536 0.001267 0.001368 0.000181 0.000181 0.000231 131072 0.002494 0.002625 0.000563 0.000493 0.000362 262144 0.000855 0.002002 0.000764 0.000754 0.000915 524288 0.001589 0.001660 0.001871 0.001700 0.001559 1048576 0.003239 0.003148 0.004154 0.003128 0.003520 wtime_test05() Time the matrix multiplication problem. Compute C = A * B where A is an L by M matrix, B is an M by N matrix, and so C is an L by N matrix. Minimum value of L = M = N = 4 Maximum value of L = M = N = 1024 Number of repetitions of the operation: 5 Use triple loop for matrix multiplication. Timing results using nested loops: Vector Size Rep #1 Rep #2 Rep #3 Rep #4 Rep #5 4 0.001981 0.000231 0.000010 0.000010 0.000010 16 0.000362 0.000302 0.000020 0.000020 0.000020 64 0.005150 0.004949 0.000996 0.000986 0.001026 256 0.110410 0.107000 0.077791 0.077610 0.078746 Use C = A * B matrix multiplication. Timing results using C = A * B: Vector Size Rep #1 Rep #2 Rep #3 Rep #4 Rep #5 4 0.000191 0.000251 0.000010 0.000010 0.000010 16 0.099195 0.000010 0.000000 0.000010 0.000010 64 0.000231 0.000020 0.000010 0.000010 0.000010 256 0.000322 0.000221 0.000282 0.000211 0.000211 wtime_test(): Normal end of execution. 08-Jan-2022 11:09:06