Sculpt dyntopo test BUILD UPDATED

You seem to have quite a pc. What specs does it have? Intel or Amd?

Hi, I have a 5800x with 32gb and 3070.

2 Likes

Windows 10 intel 4770k 16gb ram gtx770

== Starting Test ==
building test mesh. . .
AXIS: 0
AXIS: 1
AXIS: 2
AXIS: 0
AXIS: 1
AXIS: 2
totvert: 633740, totface: 629856, tottri: 1259712
    bmesh mem size: 380.41mb 312.77mb
meshtest2 mem size: 279.38mb
= BMesh random order
  time: 1.56880, 0 of 20
  time: 1.57477, 1 of 20
  time: 1.60824, 2 of 20
  time: 1.58479, 3 of 20
  time: 1.58426, 4 of 20
  time: 1.59324, 5 of 20
  time: 1.58076, 6 of 20
  time: 1.57811, 7 of 20
  time: 1.57665, 8 of 20
  time: 1.57421, 9 of 20
  time: 1.57738, 10 of 20
  time: 1.57512, 11 of 20
  time: 1.57873, 12 of 20
  time: 1.57448, 13 of 20
  time: 1.57238, 14 of 20
  time: 1.57706, 15 of 20
  time: 1.57458, 16 of 20
  time: 1.57655, 17 of 20
  time: 1.57243, 18 of 20
  time: 1.57712, 19 of 20
time: 1.57725
leaf_limit: 7
v 633740 633740
e 1263600 1263600
l 2519424 2519424
f 629856 629856
roots: 118702
= BMesh vertex cluster order
  time: 1.40747, 0 of 20
  time: 1.40222, 1 of 20
  time: 1.40237, 2 of 20
  time: 1.40765, 3 of 20
  time: 1.40032, 4 of 20
  time: 1.39712, 5 of 20
  time: 1.40442, 6 of 20
  time: 1.40024, 7 of 20
  time: 1.40831, 8 of 20
  time: 1.39837, 9 of 20
  time: 1.40097, 10 of 20
  time: 1.40602, 11 of 20
  time: 1.40246, 12 of 20
  time: 1.40033, 13 of 20
  time: 1.40507, 14 of 20
  time: 1.40078, 15 of 20
  time: 1.40495, 16 of 20
  time: 1.40428, 17 of 20
  time: 1.40162, 18 of 20
  time: 1.40038, 19 of 20
time: 1.40236
= Pure data-oriented (struct of arrays)
  time: 1.08889, 1 of 20
  time: 1.08613, 2 of 20
  time: 1.08322, 3 of 20
  time: 1.08660, 4 of 20
  time: 1.08832, 5 of 20
  time: 1.08621, 6 of 20
  time: 1.08592, 7 of 20
  time: 1.09043, 8 of 20
  time: 1.08386, 9 of 20
  time: 1.08061, 10 of 20
  time: 1.08543, 11 of 20
  time: 1.08819, 12 of 20
  time: 1.09144, 13 of 20
  time: 1.08564, 14 of 20
  time: 1.08919, 15 of 20
  time: 1.07984, 16 of 20
  time: 1.07829, 17 of 20
  time: 1.08013, 18 of 20
  time: 1.09131, 19 of 20
  time: 1.08954, 20 of 20
time: 1.08574
= Object-oriented but with integer indices instead of pointers
  time: 1.11345, 0 of 20
  time: 1.11303, 1 of 20
  time: 1.11133, 2 of 20
  time: 1.11237, 3 of 20
  time: 1.11032, 4 of 20
  time: 1.11257, 5 of 20
  time: 1.11243, 6 of 20
  time: 1.11035, 7 of 20
  time: 1.11078, 8 of 20
  time: 1.11716, 9 of 20
  time: 1.11216, 10 of 20
  time: 1.11198, 11 of 20
  time: 1.11566, 12 of 20
  time: 1.11128, 13 of 20
  time: 1.11115, 14 of 20
  time: 1.11229, 15 of 20
  time: 1.11669, 16 of 20
  time: 1.11249, 17 of 20
  time: 1.10873, 18 of 20
  time: 1.11306, 19 of 20
time: 1.11259

== Times ==
  random order : 1.58
  vertex cluser : 1.40 (12.47% improvement)
  data-oriented : 1.09 (45.27% improvement)
  integer indices : 1.11 (41.76% improvement)
== Test Finished ==

hi me on linux
16 GB DDR4 3200, ryzen 1800x, gtx 1080

== Starting Test ==
building test mesh. . .
AXIS: 0
AXIS: 1
AXIS: 2
AXIS: 0
AXIS: 1
AXIS: 2
totvert: 633740, totface: 629856, tottri: 1259712
bmesh mem size: 380.41mb 312.77mb
meshtest2 mem size: 279.38mb
= BMesh random order
time: 1.15552, 0 of 20
time: 1.15532, 1 of 20
time: 1.15325, 2 of 20
time: 1.15149, 3 of 20
time: 1.15052, 4 of 20
time: 1.15167, 5 of 20
time: 1.16350, 6 of 20
time: 1.15720, 7 of 20
time: 1.16072, 8 of 20
time: 1.15227, 9 of 20
time: 1.15445, 10 of 20
time: 1.15678, 11 of 20
time: 1.17059, 12 of 20
time: 1.16025, 13 of 20
time: 1.16026, 14 of 20
time: 1.15313, 15 of 20
time: 1.15142, 16 of 20
time: 1.15180, 17 of 20
time: 1.15476, 18 of 20
time: 1.15406, 19 of 20
time: 1.15686
leaf_limit: 7
v 633740 633740
e 1263600 1263600
l 2519424 2519424
f 629856 629856
roots: 118702
= BMesh vertex cluster order
time: 1.10959, 0 of 20
time: 1.11256, 1 of 20
time: 1.11431, 2 of 20
time: 1.11260, 3 of 20
time: 1.11459, 4 of 20
time: 1.11719, 5 of 20
time: 1.11574, 6 of 20
time: 1.11477, 7 of 20
time: 1.11498, 8 of 20
time: 1.11502, 9 of 20
time: 1.11747, 10 of 20
time: 1.11759, 11 of 20
time: 1.11626, 12 of 20
time: 1.11399, 13 of 20
time: 1.11631, 14 of 20
time: 1.11566, 15 of 20
time: 1.11263, 16 of 20
time: 1.11575, 17 of 20
time: 1.11743, 18 of 20
time: 1.11889, 19 of 20
time: 1.11598
= Pure data-oriented (struct of arrays)
time: 0.75188, 1 of 20
time: 0.75303, 2 of 20
time: 0.75279, 3 of 20
time: 0.75429, 4 of 20
time: 0.75416, 5 of 20
time: 0.75384, 6 of 20
time: 0.75284, 7 of 20
time: 0.75496, 8 of 20
time: 0.75404, 9 of 20
time: 0.75441, 10 of 20
time: 0.75438, 11 of 20
time: 0.75376, 12 of 20
time: 0.75459, 13 of 20
time: 0.75302, 14 of 20
time: 0.75144, 15 of 20
time: 0.75242, 16 of 20
time: 0.75352, 17 of 20
time: 0.75399, 18 of 20
time: 0.75402, 19 of 20
time: 0.75268, 20 of 20
time: 0.75359
= Object-oriented but with integer indices instead of pointers
time: 0.88197, 0 of 20
time: 0.88354, 1 of 20
time: 0.88320, 2 of 20
time: 0.88544, 3 of 20
time: 0.88300, 4 of 20
time: 0.88283, 5 of 20
time: 0.88186, 6 of 20
time: 0.88132, 7 of 20
time: 0.88160, 8 of 20
time: 0.88387, 9 of 20
time: 0.88392, 10 of 20
time: 0.88222, 11 of 20
time: 0.88148, 12 of 20
time: 0.88206, 13 of 20
time: 0.88227, 14 of 20
time: 0.88267, 15 of 20
time: 0.88245, 16 of 20
time: 0.88182, 17 of 20
time: 0.88249, 18 of 20
time: 0.88257, 19 of 20
time: 0.88236

== Times ==
random order : 1.16
vertex cluser : 1.12 (3.66% improvement)
data-oriented : 0.75 (53.51% improvement)
integer indices : 0.88 (31.11% improvement)
== Test Finished ==

1 Like

wow i test now sculping first time now after very long time because the non dyntopo sculp modes still no fun for me. this is super fast now so cool thanks very much joeedh :vulcan_salute:

1 Like

Operating system: Windows-10-10.0.19041-SP0 64 Bits
Blender Version: 3.0.0 Alpha, branch: temp_bmesh_multires, commit date: 2021-08-23 09:28, hash: rB9b8c82e2ed59

Intel(R) Core™ i7-7700 CPU @ 3.60GHz 3.60 GHz
RAM 8,00 GB
NVIDIA GeForce GTX 1060 3GB/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 471.41

== Starting Test ==
building test mesh. . .
AXIS: 0
AXIS: 1
AXIS: 2
AXIS: 0
AXIS: 1
AXIS: 2
totvert: 633740, totface: 629856, tottri: 1259712
    bmesh mem size: 380.41mb 312.77mb
meshtest2 mem size: 279.38mb
= BMesh random order
  time: 1.39279, 0 of 20
  time: 1.39032, 1 of 20
  time: 1.39654, 2 of 20
  time: 1.38360, 3 of 20
  time: 1.38502, 4 of 20
  time: 1.41281, 5 of 20
  time: 1.41880, 6 of 20
  time: 1.41887, 7 of 20
  time: 1.41411, 8 of 20
  time: 1.41858, 9 of 20
  time: 1.41413, 10 of 20
  time: 1.41649, 11 of 20
  time: 1.40737, 12 of 20
  time: 1.40877, 13 of 20
  time: 1.39816, 14 of 20
  time: 1.38243, 15 of 20
  time: 1.39056, 16 of 20
  time: 1.40682, 17 of 20
  time: 1.38076, 18 of 20
  time: 1.41918, 19 of 20
time: 1.40719
leaf_limit: 7
v 633740 633740
e 1263600 1263600
l 2519424 2519424
f 629856 629856
roots: 118702
= BMesh vertex cluster order
  time: 1.19000, 0 of 20
  time: 1.20744, 1 of 20
  time: 1.21316, 2 of 20
  time: 1.20411, 3 of 20
  time: 1.20267, 4 of 20
  time: 1.20414, 5 of 20
  time: 1.18878, 6 of 20
  time: 1.21341, 7 of 20
  time: 1.21178, 8 of 20
  time: 1.18529, 9 of 20
  time: 1.19775, 10 of 20
  time: 1.20953, 11 of 20
  time: 1.19052, 12 of 20
  time: 1.20480, 13 of 20
  time: 1.19061, 14 of 20
  time: 1.21416, 15 of 20
  time: 1.21225, 16 of 20
  time: 1.19171, 17 of 20
  time: 1.19455, 18 of 20
  time: 1.20695, 19 of 20
time: 1.20108
= Pure data-oriented (struct of arrays)
  time: 0.92091, 1 of 20
  time: 0.92290, 2 of 20
  time: 0.92338, 3 of 20
  time: 0.92304, 4 of 20
  time: 0.92272, 5 of 20
  time: 0.92620, 6 of 20
  time: 0.92194, 7 of 20
  time: 0.92337, 8 of 20
  time: 0.92845, 9 of 20
  time: 0.92143, 10 of 20
  time: 0.92443, 11 of 20
  time: 0.92317, 12 of 20
  time: 0.92255, 13 of 20
  time: 0.92185, 14 of 20
  time: 0.92069, 15 of 20
  time: 0.92382, 16 of 20
  time: 0.92620, 17 of 20
  time: 0.92207, 18 of 20
  time: 0.92484, 19 of 20
  time: 0.92683, 20 of 20
time: 0.92386
= Object-oriented but with integer indices instead of pointers
  time: 0.92932, 0 of 20
  time: 0.92156, 1 of 20
  time: 0.92119, 2 of 20
  time: 0.92255, 3 of 20
  time: 0.93210, 4 of 20
  time: 0.93151, 5 of 20
  time: 0.97647, 6 of 20
  time: 0.92966, 7 of 20
  time: 0.91659, 8 of 20
  time: 0.91641, 9 of 20
  time: 0.93654, 10 of 20
  time: 0.93846, 11 of 20
  time: 0.94011, 12 of 20
  time: 0.91952, 13 of 20
  time: 0.93842, 14 of 20
  time: 0.93108, 15 of 20
  time: 0.93801, 16 of 20
  time: 0.93630, 17 of 20
  time: 0.93832, 18 of 20
  time: 0.93676, 19 of 20
time: 0.93494

== Times ==
  random order : 1.41
  vertex cluser : 1.20 (17.16% improvement)
  data-oriented : 0.92 (52.32% improvement)
  integer indices : 0.93 (50.51% improvement)
== Test Finished ==
1 Like

Arch Linux
AMD Zen 2 3700X
32 gb ram
NVidia GTX

== Starting Test ==
building test mesh. . .
AXIS: 0
AXIS: 1
AXIS: 2
AXIS: 0
AXIS: 1
AXIS: 2
totvert: 633740, totface: 629856, tottri: 1259712
    bmesh mem size: 380.41mb 312.77mb
meshtest2 mem size: 279.38mb
= BMesh random order
  time: 0.87238, 0 of 20
  time: 0.86800, 1 of 20
  time: 0.86853, 2 of 20
  time: 0.86830, 3 of 20
  time: 0.86828, 4 of 20
  time: 0.86809, 5 of 20
  time: 0.86809, 6 of 20
  time: 0.86841, 7 of 20
  time: 0.86820, 8 of 20
  time: 0.86827, 9 of 20
  time: 0.86814, 10 of 20
  time: 0.86829, 11 of 20
  time: 0.86809, 12 of 20
  time: 0.86838, 13 of 20
  time: 0.86834, 14 of 20
  time: 0.86835, 15 of 20
  time: 0.86818, 16 of 20
  time: 0.86822, 17 of 20
  time: 0.86850, 18 of 20
  time: 0.86814, 19 of 20
time: 0.86825
leaf_limit: 7
v 633740 633740
e 1263600 1263600
l 2519424 2519424
f 629856 629856
roots: 118702
= BMesh vertex cluster order
  time: 0.76167, 0 of 20
  time: 0.76165, 1 of 20
  time: 0.76185, 2 of 20
  time: 0.76161, 3 of 20
  time: 0.76182, 4 of 20
  time: 0.76182, 5 of 20
  time: 0.76175, 6 of 20
  time: 0.76140, 7 of 20
  time: 0.76151, 8 of 20
  time: 0.76161, 9 of 20
  time: 0.76150, 10 of 20
  time: 0.76175, 11 of 20
  time: 0.76169, 12 of 20
  time: 0.76165, 13 of 20
  time: 0.76140, 14 of 20
  time: 0.76164, 15 of 20
  time: 0.76150, 16 of 20
  time: 0.76170, 17 of 20
  time: 0.76166, 18 of 20
  time: 0.76164, 19 of 20
time: 0.76162
= Pure data-oriented (struct of arrays)
  time: 0.53796, 1 of 20
  time: 0.53809, 2 of 20
  time: 0.53767, 3 of 20
  time: 0.53760, 4 of 20
  time: 0.53757, 5 of 20
  time: 0.53776, 6 of 20
  time: 0.53789, 7 of 20
  time: 0.53762, 8 of 20
  time: 0.53756, 9 of 20
  time: 0.53755, 10 of 20
  time: 0.53794, 11 of 20
  time: 0.53765, 12 of 20
  time: 0.53778, 13 of 20
  time: 0.53750, 14 of 20
  time: 0.53753, 15 of 20
  time: 0.53750, 16 of 20
  time: 0.53775, 17 of 20
  time: 0.53760, 18 of 20
  time: 0.53758, 19 of 20
  time: 0.53830, 20 of 20
time: 0.53770
= Object-oriented but with integer indices instead of pointers
  time: 0.72242, 0 of 20
  time: 0.72255, 1 of 20
  time: 0.72274, 2 of 20
  time: 0.72291, 3 of 20
  time: 0.72264, 4 of 20
  time: 0.72273, 5 of 20
  time: 0.72246, 6 of 20
  time: 0.72268, 7 of 20
  time: 0.72292, 8 of 20
  time: 0.72264, 9 of 20
  time: 0.72254, 10 of 20
  time: 0.72248, 11 of 20
  time: 0.72257, 12 of 20
  time: 0.72271, 13 of 20
  time: 0.72259, 14 of 20
  time: 0.72251, 15 of 20
  time: 0.72262, 16 of 20
  time: 0.72264, 17 of 20
  time: 0.72233, 18 of 20
  time: 0.72258, 19 of 20
time: 0.72260

== Times ==
  random order : 0.87
  vertex cluser : 0.76 (14.00% improvement)
  data-oriented : 0.54 (61.47% improvement)
  integer indices : 0.72 (20.16% improvement)
== Test Finished ==

1 Like

Do you still need more testing or you are good?

1 Like

I think I’m good. Thanks everyone!

4 Likes

I’m wondering about this 200% speedup with data oriented @123ERTYY posted.

Could it be the result of unification of L3 cache across CCX chiplet die? In previous Zen gens cache was split in two 16MB parts, and with 5000 series there is one 32 MB block for all 8 cores.

1 Like

Will this dyntopo changes be in master soon or for 3.0?

1 Like

It’s in the design phase, and there is no patch yet, so I guess that’s unlikely:
https://developer.blender.org/T91329

And this is much bigger than only a dyntopo improvement.

2 Likes

There is a lot of test patches for dyntopo as far as I can see from Joseph https://developer.blender.org/people/commits/3002/
Maybe Joseph can tell us how far away it from master.
I am really appreciate his work for Sculpt Module.

4 Likes