Skip to content

Instantly share code, notes, and snippets.

@dela3499
Last active August 20, 2016 08:37
Show Gist options
  • Save dela3499/cb226b47d8c9296b8020395be7fb0c0c to your computer and use it in GitHub Desktop.
Save dela3499/cb226b47d8c9296b8020395be7fb0c0c to your computer and use it in GitHub Desktop.
Pattern of error when reducing precision in floats
figsize(10,5)
x = np.linspace(-10,10,10000)
y1 = x.astype(np.float32)
y2 = x.astype(np.float16)
# plt.semilogy(np.abs(x - x))
plt.semilogy(np.abs(x - y1))
plt.semilogy(np.abs(x - y2))
plt.legend(['32','16'])
label('Original value','Error','Error when reducing precision of 64-bit floats')
execfile('/home/carlos/projects/utils/utils.py')
%matplotlib inline
figsize(50,10)
l = 1e-2
alpha = 0.1
x = np.linspace(-l,l,1000000)
y1 = x.astype(np.float32)
y2 = x.astype(np.float16)
plt.semilogy(np.abs(x - y1), '.', alpha = alpha)
plt.semilogy(np.abs(x - y2), '.', alpha = alpha)
plt.legend(['32','16'])
label('Original value','Error','Error when reducing precision of 64-bit floats')
@dela3499
Copy link
Author

image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment