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