John,
I've been running a modified version of a project called miniFE (found
here). I've altered it to use Stillwater's posit implementation. The project uses the Conjugate Gradient approach to simulate heat flow through a cube of voxels of x, y and z dimensions. As the program approaches a perfect solution, the "residual" reported gets closer and closer to the value zero (never actually reaching zero). The residual is the norm of the vector r = b - Ax, and as x converges to the solution of the linear system, the norm of r become small.
How the program decides when to stop iterating is determined by a tolerance parameter, which by default is set to the epsilon value of the number format in use. I'm not sure whether this is appropriate for a posit implementation; do you have any insight? The program's residual does not seem to be able to actually solve down to the accuracy of the particular posit's epsilon, which I believe is due to the "tapered accuracy" behavior inherent to posit math.
I'm still working on understanding posits fully, but one thing I've gleaned is that the choice of the optimum es value seems to be very problem-dependent. I haven't dug into the internals of the miniFE application to determine the dynamic range of the numbers it uses; perhaps I will attempt that. Do you have any guidelines for how to choose es, and is there any "general-purpose" value that works in most cases as a replacement for IEEE floats and doubles?
I will definitely be investigating the Lawrence Livermore studies that you mention!
Thanks,
-Jack