Blender Git Loki
Git Commits -> Revision 0b12e61
Revision 0b12e61 by Brecht Van Lommel (master) September 25, 2014, 22:04 (GMT) |
OpenNL: modify SuperLU to use doubles rather than floats, for better precision. This helps to improve the accuracy of UV unwrapping and laplacian deform for high poly meshes, which could get warped quite badly. It's not much slower, doubles are pretty fast on modern CPUs, but it does double memory usage. This seems acceptable as otherwise high poly meshes would not work correctly anyway. Fixes T39004. |
Commit Details:
Full Hash: 0b12e6104007bb74c1f1450c5a4ee75e81cdfbdc
Parent Commit: 87c27ef
Lines Changed: +311, -315
21 Modified Paths:
/intern/opennl/extern/ONL_opennl.h (+7, -11) (Diff)
/intern/opennl/intern/opennl.c (+51, -51) (Diff)
/intern/opennl/superlu/scolumn_bmod.c (+12, -12) (Diff)
/intern/opennl/superlu/scopy_to_ucol.c (+3, -3) (Diff)
/intern/opennl/superlu/sgssv.c (+1, -1) (Diff)
/intern/opennl/superlu/sgstrf.c (+5, -5) (Diff)
/intern/opennl/superlu/sgstrs.c (+13, -13) (Diff)
/intern/opennl/superlu/smemory.c (+54, -54) (Diff)
/intern/opennl/superlu/smyblas2.c (+16, -16) (Diff)
/intern/opennl/superlu/spanel_bmod.c (+11, -11) (Diff)
/intern/opennl/superlu/spanel_dfs.c (+3, -3) (Diff)
/intern/opennl/superlu/spivotL.c (+6, -6) (Diff)
/intern/opennl/superlu/spruneL.c (+2, -2) (Diff)
/intern/opennl/superlu/ssnode_bmod.c (+6, -6) (Diff)
/intern/opennl/superlu/ssp_blas2.c (+17, -17) (Diff)
/intern/opennl/superlu/ssp_blas3.c (+4, -4) (Diff)
/intern/opennl/superlu/ssp_defs.h (+50, -50) (Diff)
/intern/opennl/superlu/strsv.c (+3, -3) (Diff)
/intern/opennl/superlu/sutil.c (+38, -38) (Diff)
/intern/opennl/superlu/util.c (+7, -7) (Diff)
/intern/opennl/superlu/util.h (+2, -2) (Diff)
/intern/opennl/intern/opennl.c (+51, -51) (Diff)
/intern/opennl/superlu/scolumn_bmod.c (+12, -12) (Diff)
/intern/opennl/superlu/scopy_to_ucol.c (+3, -3) (Diff)
/intern/opennl/superlu/sgssv.c (+1, -1) (Diff)
/intern/opennl/superlu/sgstrf.c (+5, -5) (Diff)
/intern/opennl/superlu/sgstrs.c (+13, -13) (Diff)
/intern/opennl/superlu/smemory.c (+54, -54) (Diff)
/intern/opennl/superlu/smyblas2.c (+16, -16) (Diff)
/intern/opennl/superlu/spanel_bmod.c (+11, -11) (Diff)
/intern/opennl/superlu/spanel_dfs.c (+3, -3) (Diff)
/intern/opennl/superlu/spivotL.c (+6, -6) (Diff)
/intern/opennl/superlu/spruneL.c (+2, -2) (Diff)
/intern/opennl/superlu/ssnode_bmod.c (+6, -6) (Diff)
/intern/opennl/superlu/ssp_blas2.c (+17, -17) (Diff)
/intern/opennl/superlu/ssp_blas3.c (+4, -4) (Diff)
/intern/opennl/superlu/ssp_defs.h (+50, -50) (Diff)
/intern/opennl/superlu/strsv.c (+3, -3) (Diff)
/intern/opennl/superlu/sutil.c (+38, -38) (Diff)
/intern/opennl/superlu/util.c (+7, -7) (Diff)
/intern/opennl/superlu/util.h (+2, -2) (Diff)