In[]:=
Print["Start time is ",ds=DateString[],"."];prec=100000;(**Numberofrequireddecimals.*.*)ClearSystemCache[];T0=SessionTime[];expM[pre_]:=Module[{a,d,s,k,bb,c,end,iprec,xvals,x,pc,cores=16(*=4*numberofphysicalcores*),tsize=2^7,chunksize,start=1,ll,ctab,pr=Floor[1.005pre]},chunksize=cores*tsize;n=Floor[1.32pr];end=Ceiling[n/chunksize];Print["Iterations required: ",n];Print["Will give ",end," time estimates, each more accurate than the previous."];Print["Will stop at ",end*chunksize," iterations to ensure precsion of around ",pr," decimal places."];d=ChebyshevT[n,3];{b,c,s}={SetPrecision[-1,1.1*n],-d,0};iprec=Ceiling[pr/6912];Do[xvals=Flatten[Parallelize[Table[Table[ll=start+j*tsize+l;x=N[E^(Log[ll]/(ll)),iprec];pc=iprec;While[pc<pr/1024,pc=Min[3pc,pr/1024];x=SetPrecision[x,pc];y=x^ll-ll;x=x(1-2y/((ll+1)y+2llll));];(**N[Exp[Log[ll]/ll],pr/1024]**)x=SetPrecision[x,pr/256];xll=x^ll;z=(ll-xll)/xll;t=2ll-1;t2=t^2;x=x*(1+SetPrecision[4.5,pr/256](ll-1)/t2+(ll+1)z/(2llt)-SetPrecision[13.5,pr/256]ll(ll-1)1/(3llt2+t^3z));(*N[Exp[Log[ll]/ll],pr/256]*)x=SetPrecision[x,pr/64];xll=x^ll;z=(ll-xll)/xll;t=2ll-1;t2=t^2;x=x*(1+SetPrecision[4.5,pr/64](ll-1)/t2+(ll+1)z/(2llt)-SetPrecision[13.5,pr/64]ll(ll-1)1/(3llt2+t^3z));(**N[Exp[Log[ll]/ll],pr/64]**)x=SetPrecision[x,pr/16];xll=x^ll;z=(ll-xll)/xll;t=2ll-1;t2=t^2;x=x*(1+SetPrecision[4.5,pr/16](ll-1)/t2+(ll+1)z/(2llt)-SetPrecision[13.5,pr/16]ll(ll-1)1/(3llt2+t^3z));(**N[Exp[Log[ll]/ll],pr/16]**)x=SetPrecision[x,pr/4];xll=x^ll;z=(ll-xll)/xll;t=2ll-1;t2=t^2;x=x*(1+SetPrecision[4.5,pr/4](ll-1)/t2+(ll+1)z/(2llt)-SetPrecision[13.5,pr/4]ll(ll-1)1/(3llt2+t^3z));(**N[Exp[Log[ll]/ll],pr/4]**)x=SetPrecision[x,pr];xll=x^ll;z=(ll-xll)/xll;t=2ll-1;t2=t^2;x=x*(1+SetPrecision[4.5,pr](ll-1)/t2+(ll+1)z/(2llt)-SetPrecision[13.5,pr]ll(ll-1)1/(3llt2+t^3z));(*N[Exp[Log[ll]/ll],pr]*)x,{l,0,tsize-1}],{j,0,cores-1}]]];ctab=ParallelTable[Table[c=b-c;ll=start+l-2;b*=2(ll+n)(ll-n)/((ll+1)(2ll+1));c,{l,chunksize}],Method"Automatic"];s+=ctab.(xvals-1);start+=chunksize;st=SessionTime[]-T0;kc=k*chunksize;ti=(st)/(kc+10^-4)*(n)/(3600)/(24);Print[kc," iterations done in ",N[st,4]," seconds."," Should take ",N[ti,4]," days or ",N[ti*24*3600,4],"s, finish ",DatePlus[ds,ti],"."],{k,0,end-1}];N[-s/d,pr]];t2=Timing[MRBtest2=expM[prec];];Print["Finished on ",DateString[],". Proccessor time was ",t2[[1]]," s."];Print["Actual time was ",st];(*Print[*)MRBtest2(*]*)(*Remove(**)orenterMRBtest2toprintoutput*);Print["Enter MRBtest2 to print ",Floor[Precision[MRBtest2]]," digits"];Print["If you saved m3M, the difference between this and 3,014,991 known digits is ",N[MRBtest2-m3M,10]]
Start time is Thu 21 Mar 2024 12:10:23.
Iterations required: 132658
Will give 65 time estimates, each more accurate than the previous.
Will stop at 133120 iterations to ensure precsion of around 100499 decimal places.
0 iterations done in 8.903 seconds. Should take 1.367× days or 1.181×s, finish Sun 21 Jun 2398 03:45:14.
5
10
10
10
2048 iterations done in 18.38 seconds. Should take 0.01378 days or 1190.s, finish Thu 21 Mar 2024 12:30:13.
4096 iterations done in 27.78 seconds. Should take 0.01041 days or 899.8s, finish Thu 21 Mar 2024 12:25:22.
6144 iterations done in 37.28 seconds. Should take 0.009316 days or 804.9s, finish Thu 21 Mar 2024 12:23:47.
8192 iterations done in 47.02 seconds. Should take 0.008813 days or 761.5s, finish Thu 21 Mar 2024 12:23:04.
10240 iterations done in 57.05 seconds. Should take 0.008555 days or 739.1s, finish Thu 21 Mar 2024 12:22:42.
12288 iterations done in 66.69 seconds. Should take 0.008333 days or 720.0s, finish Thu 21 Mar 2024 12:22:22.
14336 iterations done in 76.43 seconds. Should take 0.008186 days or 707.3s, finish Thu 21 Mar 2024 12:22:10.
16384 iterations done in 85.98 seconds. Should take 0.008058 days or 696.2s, finish Thu 21 Mar 2024 12:21:59.
18432 iterations done in 95.55 seconds. Should take 0.007959 days or 687.7s, finish Thu 21 Mar 2024 12:21:50.
20480 iterations done in 105.6 seconds. Should take 0.007915 days or 683.9s, finish Thu 21 Mar 2024 12:21:46.
22528 iterations done in 118.3 seconds. Should take 0.008065 days or 696.8s, finish Thu 21 Mar 2024 12:21:59.
24576 iterations done in 128.1 seconds. Should take 0.008002 days or 691.4s, finish Thu 21 Mar 2024 12:21:54.
26624 iterations done in 138.1 seconds. Should take 0.007967 days or 688.3s, finish Thu 21 Mar 2024 12:21:51.
28672 iterations done in 147.5 seconds. Should take 0.007898 days or 682.4s, finish Thu 21 Mar 2024 12:21:45.
30720 iterations done in 156.8 seconds. Should take 0.007838 days or 677.2s, finish Thu 21 Mar 2024 12:21:40.
32768 iterations done in 166.5 seconds. Should take 0.007801 days or 674.0s, finish Thu 21 Mar 2024 12:21:37.
34816 iterations done in 176.3 seconds. Should take 0.007773 days or 671.6s, finish Thu 21 Mar 2024 12:21:34.
36864 iterations done in 185.7 seconds. Should take 0.007734 days or 668.2s, finish Thu 21 Mar 2024 12:21:31.
38912 iterations done in 195.1 seconds. Should take 0.007699 days or 665.2s, finish Thu 21 Mar 2024 12:21:28.
40960 iterations done in 204.6 seconds. Should take 0.007670 days or 662.7s, finish Thu 21 Mar 2024 12:21:25.
43008 iterations done in 214.0 seconds. Should take 0.007640 days or 660.1s, finish Thu 21 Mar 2024 12:21:23.
45056 iterations done in 224.0 seconds. Should take 0.007633 days or 659.5s, finish Thu 21 Mar 2024 12:21:22.
47104 iterations done in 233.7 seconds. Should take 0.007616 days or 658.0s, finish Thu 21 Mar 2024 12:21:21.
49152 iterations done in 243.4 seconds. Should take 0.007603 days or 656.9s, finish Thu 21 Mar 2024 12:21:19.
51200 iterations done in 253.4 seconds. Should take 0.007599 days or 656.6s, finish Thu 21 Mar 2024 12:21:19.
53248 iterations done in 262.7 seconds. Should take 0.007576 days or 654.5s, finish Thu 21 Mar 2024 12:21:17.
55296 iterations done in 272.3 seconds. Should take 0.007562 days or 653.4s, finish Thu 21 Mar 2024 12:21:16.
57344 iterations done in 282.3 seconds. Should take 0.007558 days or 653.0s, finish Thu 21 Mar 2024 12:21:16.
59392 iterations done in 292.4 seconds. Should take 0.007559 days or 653.1s, finish Thu 21 Mar 2024 12:21:16.
61440 iterations done in 302.0 seconds. Should take 0.007547 days or 652.1s, finish Thu 21 Mar 2024 12:21:15.
63488 iterations done in 311.5 seconds. Should take 0.007534 days or 650.9s, finish Thu 21 Mar 2024 12:21:13.
65536 iterations done in 320.8 seconds. Should take 0.007517 days or 649.4s, finish Thu 21 Mar 2024 12:21:12.
67584 iterations done in 330.6 seconds. Should take 0.007510 days or 648.9s, finish Thu 21 Mar 2024 12:21:11.
69632 iterations done in 340.5 seconds. Should take 0.007507 days or 648.6s, finish Thu 21 Mar 2024 12:21:11.
71680 iterations done in 349.7 seconds. Should take 0.007490 days or 647.1s, finish Thu 21 Mar 2024 12:21:10.
73728 iterations done in 359.2 seconds. Should take 0.007480 days or 646.3s, finish Thu 21 Mar 2024 12:21:09.
75776 iterations done in 369.3 seconds. Should take 0.007483 days or 646.6s, finish Thu 21 Mar 2024 12:21:09.
77824 iterations done in 378.9 seconds. Should take 0.007476 days or 645.9s, finish Thu 21 Mar 2024 12:21:08.
79872 iterations done in 388.3 seconds. Should take 0.007464 days or 644.9s, finish Thu 21 Mar 2024 12:21:07.
81920 iterations done in 397.6 seconds. Should take 0.007453 days or 643.9s, finish Thu 21 Mar 2024 12:21:06.
83968 iterations done in 407.6 seconds. Should take 0.007454 days or 644.0s, finish Thu 21 Mar 2024 12:21:06.
86016 iterations done in 417.2 seconds. Should take 0.007447 days or 643.5s, finish Thu 21 Mar 2024 12:21:06.
88064 iterations done in 427.0 seconds. Should take 0.007445 days or 643.2s, finish Thu 21 Mar 2024 12:21:06.
90112 iterations done in 436.2 seconds. Should take 0.007433 days or 642.2s, finish Thu 21 Mar 2024 12:21:05.
92160 iterations done in 445.8 seconds. Should take 0.007427 days or 641.7s, finish Thu 21 Mar 2024 12:21:04.
94208 iterations done in 455.6 seconds. Should take 0.007425 days or 641.6s, finish Thu 21 Mar 2024 12:21:04.
96256 iterations done in 465.2 seconds. Should take 0.007420 days or 641.1s, finish Thu 21 Mar 2024 12:21:04.
98304 iterations done in 475.0 seconds. Should take 0.007419 days or 641.0s, finish Thu 21 Mar 2024 12:21:04.
100352 iterations done in 484.8 seconds. Should take 0.007418 days or 640.9s, finish Thu 21 Mar 2024 12:21:03.
102400 iterations done in 494.3 seconds. Should take 0.007411 days or 640.3s, finish Thu 21 Mar 2024 12:21:03.
104448 iterations done in 503.8 seconds. Should take 0.007406 days or 639.8s, finish Thu 21 Mar 2024 12:21:02.
106496 iterations done in 513.8 seconds. Should take 0.007407 days or 640.0s, finish Thu 21 Mar 2024 12:21:02.
108544 iterations done in 523.9 seconds. Should take 0.007411 days or 640.3s, finish Thu 21 Mar 2024 12:21:03.
110592 iterations done in 533.4 seconds. Should take 0.007405 days or 639.8s, finish Thu 21 Mar 2024 12:21:02.
112640 iterations done in 543.1 seconds. Should take 0.007404 days or 639.7s, finish Thu 21 Mar 2024 12:21:02.
114688 iterations done in 552.5 seconds. Should take 0.007397 days or 639.1s, finish Thu 21 Mar 2024 12:21:02.
116736 iterations done in 562.3 seconds. Should take 0.007396 days or 639.0s, finish Thu 21 Mar 2024 12:21:02.
118784 iterations done in 572.3 seconds. Should take 0.007397 days or 639.1s, finish Thu 21 Mar 2024 12:21:02.
120832 iterations done in 581.5 seconds. Should take 0.007389 days or 638.4s, finish Thu 21 Mar 2024 12:21:01.
122880 iterations done in 591.4 seconds. Should take 0.007390 days or 638.5s, finish Thu 21 Mar 2024 12:21:01.
124928 iterations done in 601.3 seconds. Should take 0.007390 days or 638.5s, finish Thu 21 Mar 2024 12:21:01.
126976 iterations done in 610.8 seconds. Should take 0.007385 days or 638.1s, finish Thu 21 Mar 2024 12:21:01.
129024 iterations done in 620.0 seconds. Should take 0.007377 days or 637.4s, finish Thu 21 Mar 2024 12:21:00.
131072 iterations done in 628.9 seconds. Should take 0.007367 days or 636.5s, finish Thu 21 Mar 2024 12:20:59.
Finished on Thu 21 Mar 2024 12:20:52. Proccessor time was 449.297 s.
Actual time was 628.9158070
Enter MRBtest2 to print 100493 digits
If you saved m3M, the difference between this and 3,014,991 known digits is 0.1878596425-1.000000000m3M
In[]:=
Print["If you saved m3M, the difference between this and 3,014,991 known digits is ",N[MRBtest2-m3M,10]]
If you saved m3M, the difference between this and 3,014,991 known digits is 0.×
-100494
10
In[]:=
Pause[100]