Current RhinoWIP Very Slow

Hi all,

Just downloaded the latest WIP as my previous one was out of date. I opened a legacy file (V7) with nothing but a bunch of curves in groups (not a heavy file) and started to move stuff around, ungrouping and grouping, copying, and using the gumball to move stuff. I usually work in Testmetal mode (MacBook Pro M1Max chip) but was shocked to find it way slower than when I last used RhinoWIP in January.

Previously, I was getting 100+fps in Testmetal, but tonight it couldn’t have been over about 5 fps.

I switched into legacy OpenGL to keep editing my curves and after maybe 5 minutes of move copy delete commands, I tried to do a free gumball rotation on a group of 10 or so curves, WIP froze and crashed! I can’t remember the last time rhino actually pinwheeled and crashed. :sob: :sleepy:

I submitted the crash report of course, but was wondering if others were also having performance losses in the latest WIP release.

-Jesse

I reopened the file (of course I lost my revisions because I didn’t upgrade) and did a Testmaxspeed in wireframe view.

testmetal: 210FPS
legacy openGL: 123FPS

I switched into shaded mode and set the single color background, and altered the curve thickness in Preferences → Display Modes → Shaded as I did before my crash last time and repeated the Testmaxspeed command again with the following results:

testmetal: 19 FPS (viewport froze)
legacyopenGL: 17.66 FPS

When doing these tests, in Testmetal the viewport froze for the duration of the test and in openGL it did actually spin. I reverted the background setting back to Use Application settings and repeated the tests:

testmetal: 19FPS (and viewport froze)
legacyopenGL: 17.79 FPS

I set the curve width back to 1 (from 2) and pressed the Restore Defaults button and repeated the test:

testmetal: 19FPS (and viewport froze)
legacyopenGL: 17.21 FPS

I switched into default Wireframe view mode:

testmetal: 215 FPS (and viewport froze)
legacyopenGL: 137 FPS

I reentered the settings I had in the previous file to the Wireframe view mode (Curve width 2 px, Single color background) and repeated the test in the two modes again:

testmetal: 222FPS (and viewport froze)
legacyopenGL: 138 FPS

Is shaded mode just broken right now?

I’ve moved your post to the more appropriate Serengeti category that is about RhinoWIP.

I remember noticing sluggish viewport behaviour, but instantly rolled back to the previous version (8.0.22130.14236, 2022-05-10), when I noticed that Grasshopper was broken. I’m skipping this one.
You can find the link to the download here in Wim’s reply:

Here are my stats for my Mac Studio:

  • Rhino 7 (7.18.22145.08132) [OpenGL]

    • 60.50 FPS Wireframe
    • 60.20 FPS Ghosted
    • 59.52 FPS Arctic
  • Rhino 8 (8.0.22130.14236) [Metal]

    • 4166.67 FPS Wireframe (?)
    • 152.48 FPS Ghosted

Thanks for the movement to the correct place.

That is a lot of FPS from the Mac Studio :eyes:

I wonder whether the test is working right, but it’s a beast of a computer considering its size and energy consumption. :slight_smile:

As you may know, Rhino doesn’t take full advantage of Apple Silicon chips yet. However, in other, more optimized applications - like Blender - you really notice what it can do.

Yesterday, I saw this on the Bella Renderer website:

On the right they compare their render engine Vs. Cycles on the left.

So I tried the classroom scene in Blender with Cycles GPU and 800 samples, which produces a much less noisy and clear image than in the Bella comparison.

It took 3 minutes and 17 seconds. :rofl:
It might not be fair comparison and their website might be outdated, but I find it amusing either way.

1 Like

It is not outdated, here is 3m 17s, reaching 80 samples, on the current version 7 rhino cycles, using all cores on my 5950x:

The scene is not identical to the one from blender, it was given to me by a user who converted it by hand, and it uses different lighting – I’ll redo this comparison on the site using some different scene, since I see it caused some confusion here.

1 Like

is cycles in blender not already updated to cyclesX? and is blender adding any denoiser right out the box?

I did 800 samples in Blender in the same time.

No idea. It’s still called Cycles.

Yes, but my render tests were done without.

Cycles X was only the project name, it continues being called Cycles since the update in Blender.

1 Like

Rhino 7 vs Rhino 8 is a big diference in performance. Rhino 7 is maybe 3 times fasters than 8.

And where is GPU tessalation opinion? :slight_smile:
Rhino 8

Rhino 7

Hi Peter -

At this point, we are still working on just making things work with different scenes and different hardware. Performance optimizations come after that work is done. That said, without specific information and a model, you are not giving us anything that we can work with. What is slower? Launching Rhino, exporting a STEP file, modifying an annotation style, …? I can only guess…

That turned out to be crashing on many Macs and was taken out. Rhino 8 will be running Metal and OpenGL, if still available, will only be a backup.
-wim

Hi Win. Thank you for an answer.

I have macbook pro 2017 with radeon pro 560.
When i turn off antialiasing in both version and switch viewport mode on shaded in Rhino 7 is moving with complicated model very smooth and no lagging compared to verison 8.

I will record short video in the evening.

P.S. Maybe reading 3dm file is a little bit longer in v8. But I’m not sure now.

Hi Peter -

Just to make sure, are you testing Rhino 8 with the Metal pipeline or with the legacy OpenGL display?
-wim

legacy opengl display

We haven’t turned on Metal by default because of a few remaining issues on specific hardware, but, to test display performance of the Rhino WIP on macOS, you’ll have to run TestMetal to switch to that. As I said, OpenGL will only serve as a backup, if at all it’s still included when we ship Rhino 8. If it is, we’ll try to make sure that it won’t crash on systems but you shouldn’t expect performance in that mode.
-wim

2 Likes

Woooooow. Yeeeah now is the perfect. :slight_smile: Thank you.

1 Like

hello. it happens to me in rhino wip for a long time that after 3 -4 hours of work rhino is terribly slow and I have to restart it. Does anyone have a similar problem?

M2 procesor, macbook pro 13"

Hi Peter -

Please run the Rhino SystemInfo command and copy-paste the result here.
-wim

Rhino 8 SR0 2023-8-15 (Rhino WIP, 8.0.23227.12306, Git hash:master @ 1c08cfad3cf1091b87da2d9643585abee78578d9)
License type: Commercial, build 2023-08-15
License details: Cloud Zoo
Expires on: 2023-09-29

Apple macOS Version 13.5 (Build 22G74) (Physical RAM: 24Gb)
Mac Model Identifier: Mac14,7
Language: en-GB (MacOS default)

Apple M2 (OpenGL ver:4.1 Metal - 83.1)

OpenGL Settings
Safe mode: Off
Use accelerated hardware modes: On
Redraw scene when viewports are exposed: On

Anti-alias mode: 4x
Mip Map Filtering: Linear
Anisotropic Filtering Mode: High

Vendor Name: Apple
Render version: 4.1
Shading Language: 4.10
Maximum Texture size: 16384 x 16384
Z-Buffer depth: n/a
Maximum Viewport size: 16384 x 16384
Total Video Memory: 16 GB
Graphics: Apple M2
Displays: Unknown (108dpi 1x)

Metal GPU Family Apple 7
Metal GPU Family Common 3
Metal GPU Family Mac 2
Graphics processors
Apple M2
DELL U2719DC (2560 x 1440 @ 60.00Hz)

USB devices
CalDigit, Inc.: USB-C SOHO Card Reader
3Dconnexion: CadMouse Pro Wireless
CalDigit, Inc. : USB-C SOHO Dock

Bluetooth devices
None

Third party kernel extensions
None

Third party plugins
/usr/lib/swift/libswiftCore.dylib
/usr/lib/swift/libswiftCoreFoundation.dylib
/usr/lib/swift/libswiftDarwin.dylib
/usr/lib/swift/libswiftDispatch.dylib
/usr/lib/swift/libswiftIOKit.dylib
/usr/lib/swift/libswiftObjectiveC.dylib
/usr/lib/swift/libswiftXPC.dylib
/usr/lib/swift/libswift_Concurrency.dylib
/usr/lib/swift/libswift_StringProcessing.dylib
/usr/lib/swift/libswiftos.dylib
/usr/lib/swift/libswift_RegexParser.dylib
/usr/lib/swift/libswiftMetal.dylib
/usr/lib/swift/libswiftsimd.dylib
/usr/lib/usd/libIex.dylib
/usr/lib/usd/libHalf.dylib
/usr/lib/usd/libAlembic.dylib
/usr/lib/usd/libusd_ms.dylib
/usr/lib/usd/libosdCPU.dylib
/usr/lib/usd/libImath.dylib
/usr/lib/usd/libIlmThread.dylib
/usr/lib/usd/libIexMath.dylib
/usr/lib/usd/libtbb.dylib
/usr/lib/usd/libMaterialXCore.dylib
/usr/lib/usd/libMaterialXFormat.dylib
/usr/lib/swift/libswiftAVFoundation.dylib
/usr/lib/swift/libswiftCoreAudio.dylib
/usr/lib/swift/libswiftCoreLocation.dylib
/usr/lib/swift/libswiftCoreMIDI.dylib
/usr/lib/swift/libswiftCoreMedia.dylib
/usr/lib/swift/libswiftQuartzCore.dylib
/usr/lib/swift/libswiftUniformTypeIdentifiers.dylib
/usr/lib/swift/libswiftNetwork.dylib
/usr/lib/swift/libswiftCryptoTokenKit.dylib
/usr/lib/swift/libswiftCoreGraphics.dylib
/usr/lib/swift/libswiftOSLog.dylib
/usr/lib/swift/libswiftAccelerate.dylib
/usr/lib/swift/libswiftAppKit.dylib
/usr/lib/swift/libswiftCoreImage.dylib
/usr/lib/swift/libswiftCompression.dylib
/usr/lib/swift/libswiftFileProvider.dylib
/usr/lib/swift/libswiftIntents.dylib
/usr/lib/swift/libswiftPrivate_BiomePubSub.dylib
/usr/lib/swift/libswiftPrivate_BiomeStreams.dylib
/usr/lib/swift/libswiftExtensionFoundation.dylib
/usr/lib/swift/libswiftCoreML.dylib
/usr/lib/swift/libswiftVision.dylib
/usr/lib/swift/libswiftDemangle.dylib
/usr/lib/swift/libswiftSystem.dylib
/usr/lib/swift/libswiftExtensionKit.dylib
/usr/lib/swift/libswiftRegexBuilder.dylib
/usr/lib/swift/libswiftWebKit.dylib
/usr/lib/swift/libswiftGLKit.dylib
/usr/lib/swift/libswiftMapKit.dylib
/usr/lib/swift/libswiftModelIO.dylib
/usr/lib/swift/libswiftSceneKit.dylib
/Users/petermasek/Library/Application Support/McNeel/Rhinoceros/MacPlugIns/DatasmithRhino7.rhp/DatasmithFacadeCSharp.dylib
/Users/petermasek/Library/Application Support/McNeel/Rhinoceros/MacPlugIns/DatasmithRhino7.rhp/libtbbmalloc.dylib
/Users/petermasek/Library/Application Support/McNeel/Rhinoceros/MacPlugIns/bella_rhino.rhp/libbella_dotnet_native.dylib
/usr/lib/log/liblog_network.dylib

Rhino plugins that do not ship with Rhino
/Users/petermasek/Library/Application Support/McNeel/Rhinoceros/MacPlugIns/DatasmithRhino7.rhp “Datasmith Exporter” 5.2.1.0
/Users/petermasek/Library/Application Support/McNeel/Rhinoceros/MacPlugIns/bella_rhino.rhp “Bella” 23.4.0.0

Rhino plugins that ship with Rhino
/Applications/RhinoWIP.app/Contents/Frameworks/RhMaterialEditor.framework “Renderer Development Kit” 8.0.23227.1002
/Applications/RhinoWIP.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/Commands.rhp “Commands” 8.0.23227.12306
/Applications/RhinoWIP.app/Contents/PlugIns/NamedSnapshots.rhp “Snapshots” 8.0.23227.1002
/Applications/RhinoWIP.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/RhinoCodePlugin.rhp “RhinoCodePlugin” 8.0.23227.12306
/Applications/RhinoWIP.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/RDK_EtoUI.rhp “RDK_EtoUI” 8.0.23227.12306
/Applications/RhinoWIP.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/MeshCommands.rhp “MeshCommands” 8.0.23227.12306
/Applications/RhinoWIP.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/RhinoRenderCycles.rhp “Rhino Render” 8.0.23227.12306
/Applications/RhinoWIP.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/RhinoCycles.rhp “RhinoCycles” 8.0.23227.12306
/Applications/RhinoWIP.app/Contents/PlugIns/SectionTools.rhp “SectionTools” 8.0.23227.1002
/Applications/RhinoWIP.app/Contents/PlugIns/export_STEP.rhp “STEP Export” 8.0.23227.1002
/Applications/RhinoWIP.app/Contents/PlugIns/Displacement.rhp “Displacement” 8.0.23227.1002
/Applications/RhinoWIP.app/Contents/PlugIns/import_STEP.rhp “STEP Import” 8.0.23227.1002
/Applications/RhinoWIP.app/Contents/PlugIns/PanelingTools.rhp “PanelingTools” 8.0.23227.1002
/Applications/RhinoWIP.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/RhinoDLR_Python.rhp “IronPython” 8.0.23227.12306
/Applications/RhinoWIP.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/GrasshopperPlugin.rhp “Grasshopper” 8.0.23227.12306