In[]:=
Needs["SubKernels`LocalKernels`"];Needs["SubKernels`RemoteKernels`"];​​Block[{$mathkernel=$mathkernel<>" -threadpriority=2"},LaunchKernels[]]
LightweightGridClient`RemoteKernelOpen
::lwgconnect
:Unable to connect to http://second.attlocal.net:3737/WolframLightweightGrid/Manager. Check network connectivity and the spelling of the hostname or URL of the remote computer. Confirm that a Lightweight Grid Manager is running on the remote computer.
​
LightweightGridClient`RemoteKernelOpen
::lwgconnect
:Unable to connect to http://second.attlocal.net:3737/WolframLightweightGrid/Manager. Check network connectivity and the spelling of the hostname or URL of the remote computer. Confirm that a Lightweight Grid Manager is running on the remote computer.
​
LightweightGridClient`RemoteKernelOpen
::lwgconnect
:Unable to connect to http://second.attlocal.net:3737/WolframLightweightGrid/Manager. Check network connectivity and the spelling of the hostname or URL of the remote computer. Confirm that a Lightweight Grid Manager is running on the remote computer.
​
General
:Further output of LightweightGridClient`RemoteKernelOpen::lwgconnect will be suppressed during this calculation.
LightweightGridClient`RemoteKernelOpen
::launchfailed
:Kernel could not be started on
2600:1700:71d0:fd50:0:0:0:49
.
​
LightweightGridClient`RemoteKernelOpen
::launchfailed
:Kernel could not be started on
2600:1700:71d0:fd50:0:0:0:49
.
​
LinkObject
:Unable to communicate with closed link LinkObject[50668@192.168.1.237,50669@192.168.1.237,350,30].
Parallel`Developer`ConnectKernel
::failinit
:1 of 16 kernels failed to initialize.
​
LightweightGridClient`RemoteKernelClose
::nokernel
:Kernel could not be closed because no kernel was found for the given link "
2600:1700:71d0:fd50:0:0:0:48
.
​
Out[]=
{$Failed,$Failed,KernelObject[1,2600:1700:71d0:fd50:0:0:0:48],KernelObject[2,2600:1700:71d0:fd50:0:0:0:48],KernelObject[3,2600:1700:71d0:fd50:0:0:0:48],KernelObject[4,2600:1700:71d0:fd50:0:0:0:48],KernelObject[5,2600:1700:71d0:fd50:0:0:0:48],KernelObject[6,2600:1700:71d0:fd50:0:0:0:48],KernelObject[8,2600:1700:71d0:fd50:0:0:0:48],KernelObject[9,2600:1700:71d0:fd50:0:0:0:48],KernelObject[10,2600:1700:71d0:fd50:0:0:0:48],KernelObject[11,2600:1700:71d0:fd50:0:0:0:48],KernelObject[12,2600:1700:71d0:fd50:0:0:0:48],KernelObject[13,2600:1700:71d0:fd50:0:0:0:48],KernelObject[14,2600:1700:71d0:fd50:0:0:0:48],KernelObject[15,2600:1700:71d0:fd50:0:0:0:48],KernelObject[16,2600:1700:71d0:fd50:0:0:0:48],KernelObject[17,local],KernelObject[18,local],KernelObject[19,local],KernelObject[20,local],KernelObject[21,local],KernelObject[22,local],KernelObject[23,local],KernelObject[24,local],KernelObject[25,local],KernelObject[26,local],KernelObject[27,local],KernelObject[28,local],KernelObject[29,local],KernelObject[30,local],KernelObject[31,local],KernelObject[32,local]}
In[]:=
​​​​Print["Start time is ",ds=DateString[],"."];​​prec=50000;​​(**Numberofrequireddecimals.*.*)ClearSystemCache[];​​T0=SessionTime[];​​expM[pre_]:=Module[{x11,z,t,a,d,s,k,bb,c,end,iprec,xvals,x,pc,cores=100(*=4*numberofphysicalcores*),tsize=75,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=pr/16;​​Do[xvals=Flatten[ParallelTable[Table[ll=start+j*tsize+l;​​x=N[E^(Log[ll]/(ll)),iprec];​​pc=iprec;​​While[pc<pr,pc=Min[4pc,pr];​​x=SetPrecision[x,pc];​​xll=Power[x,ll];z=(ll-xll)/xll;​​t=2ll-1;t2=t^2;​​x*=(1+SetPrecision[4.5,pc](ll-1)/t2+(ll+1)z/(2llt)-SetPrecision[13.5,pc]ll(ll-1)/(3llt2+t^3z))];(**N[Exp[Log[ll]/ll],pr]**)x,{l,0,tsize-1}],{j,0,cores-1},Method"FinestGrained"]];​​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);​​If[kc>1,Print["As of ",DateString[]," there were ",kc," iterations done in ",N[st,5]," seconds. That is ",N[kc/st,5]," iterations/s. ",N[kc/(end*chunksize)*100,7],"% complete."," It should take ",N[ti,6]," days or ",N[ti*24*3600,4],"s, and finish ",DatePlus[ds,ti],"."]];​​Print[];,{k,0,end-1}];​​N[-s/d,pr]];​​t2=Timing[MRB1=expM[prec];];Print["Finished on ",DateString[],". Proccessor and actual time were ",t2[[1]]," and ",SessionTime[]-T0," s. respectively"];​​Print["Enter MRB1 to print ",Floor[Precision[MRB1]]," digits. The error from a 6,500,000 or more digit calculation that used a different method is "];N[m3M-MRB1,20]
Start time is Fri 12 Apr 2024 05:22:45.
Iterations required: 66328
Will give 9 time estimates, each more accurate than the previous.
Will stop at 67500 iterations to ensure precsion of around 50249 decimal places.
As of Fri 12 Apr 2024 05:23:10 there were 7500 iterations done in 24.647 seconds. That is 304.29 iterations/s. 11.11111% complete. It should take 0.00252286 days or 218.0s, and finish Fri 12 Apr 2024 05:26:22.
As of Fri 12 Apr 2024 05:23:22 there were 15000 iterations done in 36.914 seconds. That is 406.35 iterations/s. 22.22222% complete. It should take 0.00188924 days or 163.2s, and finish Fri 12 Apr 2024 05:25:28.
As of Fri 12 Apr 2024 05:23:34 there were 22500 iterations done in 49.219 seconds. That is 457.14 iterations/s. 33.33333% complete. It should take 0.00167932 days or 145.1s, and finish Fri 12 Apr 2024 05:25:10.
As of Fri 12 Apr 2024 05:23:47 there were 30000 iterations done in 61.580 seconds. That is 487.17 iterations/s. 44.44444% complete. It should take 0.00157580 days or 136.1s, and finish Fri 12 Apr 2024 05:25:01.
As of Fri 12 Apr 2024 05:23:59 there were 37500 iterations done in 73.659 seconds. That is 509.10 iterations/s. 55.55556% complete. It should take 0.00150792 days or 130.3s, and finish Fri 12 Apr 2024 05:24:55.
As of Fri 12 Apr 2024 05:24:11 there were 45000 iterations done in 85.892 seconds. That is 523.91 iterations/s. 66.66667% complete. It should take 0.00146529 days or 126.6s, and finish Fri 12 Apr 2024 05:24:51.
As of Fri 12 Apr 2024 05:24:23 there were 52500 iterations done in 98.041 seconds. That is 535.49 iterations/s. 77.77778% complete. It should take 0.00143361 days or 123.9s, and finish Fri 12 Apr 2024 05:24:48.
As of Fri 12 Apr 2024 05:24:34 there were 60000 iterations done in 109.45 seconds. That is 548.22 iterations/s. 88.88889% complete. It should take 0.00140033 days or 121.0s, and finish Fri 12 Apr 2024 05:24:45.
Finished on Fri 12 Apr 2024 05:24:35. Proccessor and actual time were 98.0781 and 109.4753188 s. respectively
Enter MRB1 to print 50243 digits. The error from a 6,500,000 or more digit calculation that used a different method is
Out[]=
1.9641481062269221664×
-50188
10