Open plantec opened 1 month ago
In the first video, it looks like you have the world renderer canvas scale factor set to 2, while you are using a version of Bloc that does not include the changes of pull request #465. That combination makes the drawing of a BlMorphicSpaceHostMorph slower because the Bloc space form has scale 1 and gets scaled to scale 2 every time it is drawn. You could set the world renderer canvas scale factor to 1 as follows:
OSWorldRenderer autoSetCanvasScaleFactor: false; canvasScaleFactor: 1
But I would suggest to instead update the version of Bloc to one including the changes of pull request #465. Those changes were applied to the ‘Pharo12’ branch as well in pull request #537.
For the following screenshot, I created new Pharo 12 build 1521 images and used the menu item ‘Load Toplo and Bloc’, the image on the left has the world renderer canvas scale factor set to 1 and the image on the right has it set to 2, the text on the right looks better in both the Morphic and Bloc parts (click to zoom in):
Thanks ! Now the BlMorphicSpaceHostMorph works as expected and I can continue to use it :). It is more confortable for running examples. Now, the loss of efficiency of Bloc in general still remains. One can compare with ToListElementStresserWithAdditionalSelecters runInSDL
Seems similar on my PC, in fact difficult to see the difference (P11 to the right).
https://github.com/user-attachments/assets/3e2dcdae-ce9c-4e51-a548-51e6df933d67
My config:
FYI, the BlocBenchs project gathers benchmarking utilities for Bloc, and now there is BlbSpaceTallyPrinter runToStdout
that filters the results of SpaceTally
and prints it in a table.
The results show a huge growth of instances during the execution of ToListElementStresserWithAdditionalSelecters
(a stress demo). When I close the window of this demo and check the space tally again, the table returns to the initial situation. So nothing indicates a memory leak, but we may need to trigger garbage collection passes to wipe some of the tons of instances that are accumulated by this stress demo.
no idea where it can come from but the difference is obvious watching at theses video (the slower is on p12)
https://github.com/user-attachments/assets/5210eee4-a48b-4cca-a1fe-48477f1040e1
https://github.com/user-attachments/assets/74d17fa8-5237-4c68-8e43-0efe81126243
https://github.com/user-attachments/assets/94fe579e-180c-49cc-8c17-a4179beedd79
https://github.com/user-attachments/assets/ef16b40f-3a8e-424d-bca4-a6fd9dc1f359