RH8: Sub-Object selection slow sometimes

For some reason, the sub-object selection gets very slow in RH8 on Mac. Dont know why yet. When sub-object gets slow, Rhino has to be restarted. A recording of the behavior can be seen in the screen capture below:

Rhino 8 SR7 2024-4-16 (Rhino 8, 8.7.24107.13002, Git hash:master @ aa01e3b9820d84a48c2a812d24f0cf42379ee3d8)
License type: Educational, build 2024-04-16
License details: Cloud Zoo

Apple macOS Version 14.4.1 (Build 23E224) (Physical RAM: 16GB)
Mac Model Identifier: MacBookPro16,1
Language: en
.NET 7.0.0

Metal GPU Family Apple 0
Metal GPU Family Common 3
Metal GPU Family Mac 2
Graphics processors
  Intel UHD Graphics 630 (1536 MB)
  AMD Radeon Pro 5300M (4 GB)
    LG Ultra HD (2560 x 1440 @ 60.00Hz)

USB devices
  Generic: USB2.1 Hub
  Apple: composite_device
  Apple Inc.: Touch Bar Backlight
  Apple Inc.: Touch Bar Display
  Apple Inc.: Apple Internal Keyboard / Trackpad
  Apple: Headset
  Apple Inc.: Ambient Light Sensor
  Apple Inc.: FaceTime HD Camera (Built-in)
  Apple Inc.: Apple T2 Controller

Bluetooth devices
  None

Third party kernel extensions
  com.intel.driver.EnergyDriver (3.7.0) 35E739F9-BF6C-3024-A67C-750711B3FB64
  com.Cycling74.driver.Soundflower (2) 2D779840-7439-31E5-8A66-D786C3F47B75
  com.paragon-software.filesystems.ntfs (149.8.15) B3791A17-53DF-3B03-9FF5-298D092ECF8C

Third party plugins
  /usr/lib/swift/libswiftCore.dylib
  /usr/lib/swift/libswiftCoreFoundation.dylib
  /usr/lib/swift/libswiftCoreGraphics.dylib
  /usr/lib/swift/libswiftCoreImage.dylib
  /usr/lib/swift/libswiftDarwin.dylib
  /usr/lib/swift/libswiftDispatch.dylib
  /usr/lib/swift/libswiftIOKit.dylib
  /usr/lib/swift/libswiftMetal.dylib
  /usr/lib/swift/libswiftOSLog.dylib
  /usr/lib/swift/libswiftObjectiveC.dylib
  /usr/lib/swift/libswiftQuartzCore.dylib
  /usr/lib/swift/libswiftUniformTypeIdentifiers.dylib
  /usr/lib/swift/libswiftXPC.dylib
  /usr/lib/swift/libswift_Concurrency.dylib
  /usr/lib/swift/libswiftos.dylib
  /usr/lib/swift/libswiftsimd.dylib
  /usr/lib/swift/libswift_StringProcessing.dylib
  /usr/lib/swift/libswift_RegexParser.dylib
  /Library/Frameworks/3DconnexionClient.framework/Versions/A/3DconnexionClient
  /usr/lib/swift/libswiftCryptoTokenKit.dylib
  /usr/lib/usd/libusd_ms.dylib
  /usr/lib/swift/libswiftCoreAudio.dylib
  /usr/lib/swift/libswiftCoreLocation.dylib
  /usr/lib/swift/libswiftCoreMedia.dylib
  /usr/lib/swift/libswiftCompression.dylib
  /usr/lib/swift/libswiftCoreMIDI.dylib
  /usr/lib/swift/libswiftAVFoundation.dylib
  /usr/lib/swift/libswiftCoreML.dylib
  /usr/lib/swift/libswiftFileProvider.dylib
  /usr/lib/swift/libswiftIntents.dylib
  /usr/lib/swift/libswiftAccelerate.dylib
  /usr/lib/swift/libswiftGLKit.dylib
  /usr/lib/swift/libswiftGameplayKit.dylib
  /usr/lib/swift/libswiftMetalKit.dylib
  /usr/lib/swift/libswiftModelIO.dylib
  /usr/lib/swift/libswiftSceneKit.dylib
  /usr/lib/swift/libswiftSpriteKit.dylib
  /usr/lib/swift/libswiftVision.dylib
  /usr/lib/swift/libswiftRegexBuilder.dylib
  /usr/lib/swift/libswiftDemangle.dylib
  /usr/lib/swift/libswiftShazamKit.dylib
  /usr/lib/swift/libswiftObservation.dylib
  /usr/lib/swift/libswiftVideoToolbox.dylib
  /usr/lib/swift/libswiftWebKit.dylib
  /usr/lib/swift/libswiftNaturalLanguage.dylib
  /usr/lib/swift/libswiftSystem.dylib
  /usr/lib/swift/libswiftMapKit.dylib
  /Users/rudolfneumerkel/Library/Application Support/McNeel/Rhinoceros/8.0/MacPlugIns/bella_rhino.rhp/libbella_dotnet_native.dylib
  /usr/lib/log/liblog_network.dylib
  /Users/rudolfneumerkel/Library/Application Support/McNeel/Rhinoceros/packages/8.0/Karamba3D/2.2.0.161/libkaramba.dylib
  /Users/rudolfneumerkel/Library/Application Support/McNeel/Rhinoceros/packages/8.0/Karamba3D/2.2.0.161/libs/libiomp5.dylib
  /Users/rudolfneumerkel/Library/Application Support/McNeel/Rhinoceros/packages/8.0/Karamba3D/2.2.0.161/libs/libmetis.dylib
  /Users/rudolfneumerkel/Library/Application Support/McNeel/Rhinoceros/packages/8.0/Karamba3D/2.2.0.161/libs/libarpack.2.dylib
  /Users/rudolfneumerkel/Library/Application Support/McNeel/Rhinoceros/packages/8.0/Karamba3D/2.2.0.161/libs/libc++.1.dylib
  /Users/rudolfneumerkel/Library/Application Support/McNeel/Rhinoceros/packages/8.0/Karamba3D/2.2.0.161/libs/libopenblas-r1.dylib
  /Users/rudolfneumerkel/Library/Application Support/McNeel/Rhinoceros/packages/8.0/Karamba3D/2.2.0.161/libs/libgfortran.5.dylib
  /Users/rudolfneumerkel/Library/Application Support/McNeel/Rhinoceros/packages/8.0/Karamba3D/2.2.0.161/libs/libgcc_s.1.1.dylib
  /Users/rudolfneumerkel/Library/Application Support/McNeel/Rhinoceros/packages/8.0/Karamba3D/2.2.0.161/libs/libquadmath.0.dylib
  /Users/rudolfneumerkel/Library/Application Support/McNeel/Rhinoceros/packages/8.0/Karamba3D/2.2.0.161/libs/libc++abi.1.dylib


Rhino plugins that do not ship with Rhino
  /Users/rudolfneumerkel/Library/Application Support/McNeel/Rhinoceros/8.0/MacPlugIns/bella_rhino.rhp	"Bella"	23.4.0.0

Rhino plugins that ship with Rhino
  /Applications/Rhino 8.app/Contents/Frameworks/RhMaterialEditor.framework	"Renderer Development Kit"	8.7.24107.1002
  /Applications/Rhino 8.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/Commands.rhp	"Commands"	8.7.24107.13002
  /Applications/Rhino 8.app/Contents/PlugIns/NamedSnapshots.rhp	"Snapshots"	8.7.24107.1002
  /Applications/Rhino 8.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/RhinoCodePlugin.rhp	"RhinoCodePlugin"	8.7.24107.13002
  /Applications/Rhino 8.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/RDK_EtoUI.rhp	"RDK_EtoUI"	8.7.24107.13002
  /Applications/Rhino 8.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/MeshCommands.rhp	"MeshCommands"	8.7.24107.13002
  /Applications/Rhino 8.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/BlockEdit.rhp	"BlockEdit"	8.7.24107.13002
  /Applications/Rhino 8.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/RhinoRenderCycles.rhp	"Rhino Render"	8.7.24107.13002
  /Applications/Rhino 8.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/RhinoCycles.rhp	"RhinoCycles"	8.7.24107.13002
  /Applications/Rhino 8.app/Contents/PlugIns/AnimationTools.rhp	"AnimationTools"	8.7.24107.1002
  /Applications/Rhino 8.app/Contents/PlugIns/NamedPositions.rhp	"Named Position"	8.7.24107.1002
  /Applications/Rhino 8.app/Contents/PlugIns/SectionTools.rhp	"SectionTools"	8.7.24107.1002
  /Applications/Rhino 8.app/Contents/PlugIns/Displacement.rhp	"Displacement"	8.7.24107.1002
  /Applications/Rhino 8.app/Contents/PlugIns/PanelingTools.rhp	"PanelingTools"	8.7.24107.1002
  /Applications/Rhino 8.app/Contents/PlugIns/SolidTools.rhp	"SolidTools"	8.7.24107.1002
  /Applications/Rhino 8.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/RhinoDLR_Python.rhp	"IronPython"	8.7.24107.13002
  /Applications/Rhino 8.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/GrasshopperPlugin.rhp	"Grasshopper"	8.7.24107.13002


Hi Rudi - can you please try disabling Bella in Settings > Plug-ins and then quit and restart Rhino and see if the problem persists? It seems unlilkely to be related but worth a look since that is a non-standard thing in your setup.

-Pascal

The issue is still persisting.
My theories are that it is caused by:

  • multiple Rhino files open at once
  • when returning from sleep

this is happening constantly, I have to restart Rhino all day…

Hi Rudi - and this is true with Bella disabled completely, correct? And in any file, even a new one?

-Pascal

With completely new files, I have to try.
But it seems to happen with any saved file. And I think only when I open multiple ones.

But I will try

a) only work on one file to see if that changes the behavior
b) only work in new documents (this will be hard)

also: linked blocks also might be a limiting factor… but no idea.
It is happening constantly and RH is unusable

update: It seems to be caused by my monitor setup. I have one and sometimes two 4K monitors attached. When I detach them, then this behavior does not happen. @dan

I however can still get some performance issues regarding frame rate. For some reason - and this is happening since years i believe - Rhino frame rate is slowing down at some point (17fps). A restart of Rhino fixes the issue and I get the full 60fps.

Problem also is, that this slowdown affects all Rhino sessions…

See for yourself.

Slowdown:

Restart of Rhino:

I presume by “this” you mean the laggy sub-object selection, right? If I’m reading the topic correctly, the issue seems to “build up” when both displays are connected, requiring a restart to get back to normal. Is that right?

Let’s treat this as a separate issue for the time being because it sounds like this happens regardless of the number of displays you have connected, correct?

What is odd to me thinking about this is that you say this has been happening for years …and I believe you …but given that we changed the underlying display technology - from OpenGL to Metal - it feels like this ought not be the case at all.

I’m at a loss with this one. Perhaps @jeff has ideas for things we might try to isolate this issue.

Yes

Yes, might be a build up, might also be some event that causes this behavior, have not figured it out yet

updated to Mac - Version
Version 8 (8.7.24134.03002, 2024-05-13)

I have delayed (guessing: 300 ms) sub-Selection after / when recording a tutorial video with screenflick.
restarting rhino helps only for a few minutes / few selections … but then the delay is back.

quite annoying ;-(

Thank you for the info, hopefully we can boil down the problem and fix it

@dan any ideas how we can fix this? It happened to me yesterday again after like 2min of working. No external screen connected, it was a simple 5 MB file… this is extremely annoying and prohibits working with Rhino on Mac, when it happens. I cannot restart Rhino 20x a day. Everything gets clogged up and becomes slower and slower until one looses lots of valuable time while working, not to mention the annoyance and distraction this causes…

Maybe we can use an activity monitor for Rhino or sth?

I have already reported the other 100% CPU issue, which is adding to the annoyance…

did it even get worth with latest SR ?
Version 8 (8.7.24138.15432, 2024-05-17)

system_info_tom_2024-05-21.txt (12.8 KB)

Really annoying

I also have this annoying delay with:

  • rename layers
  • manipulate the viewport with the mouse

please @dan @pascal @Gijs
this is really something that has to be fixed fast - I can not even record a video because the delay is that long, that my voice is not sync with what I do…

hi @Tom_P when you recorded that video, how many Rhino documents do you have open?

(As a test I just opened many new documents (about 30) and then I can see a huge lag even on the M3 max when selecting and panning, though not with renaming layers. I have to ask our developers if something can be done about that other than closing instances that are not in use)

This behavior of Rhino getting slower with multiple instances is not something specific to Rhino 8 though, I have seen the same thing in earlier versions. And this of course happens during teaching when opening lots of student files.

for the video above there have been 3 or 5 open docs.
But it s getting worth after a while (not opening more docs)

EDIT: 2 docs are enough when the screenrecorder (screenflick) is running…
about 5 to 10 min and rhino has this ugly delay

@Tom_P thanks,

With the brutal test of 30 docs it is easy to repeat, I will do more testing and log a bug for this. What’s also interesting is that closing all those documents doesn’t help to solve it. Once the docs have been open, it seems to me the resources for those documents are not (completely) cleared.
In my observations, the Shift button seems to play a role. Selecting goes well, Shift+ selecting shows a delay, and since Shift is also used in panning in perspective, it makes that key all the more suspect.

I wonder if that is after a restart of Rhino or not.

2 Likes

because of this delay I restart rhino before I record something.
for above report of course i startet the screenrecorder as soon as the behaviour / delay was obvious.

I logged RH-82080 Rhino becomes slow after multiple documents have been opened

3 Likes

alchemistical guessing:
maybe also related - the one-shot object snap / pallet not updating - which is also related with shift…

pro