Rhino 7 Feature: Display Performance Discussion

Command: Testmaxspeed
Time to regen viewport 100 times = 1.66 seconds. (60.35 FPS)
Command: Testmaxspeed
Time to regen viewport 100 times = 1.66 seconds. (60.39 FPS)
Command: Testmaxspeed
Time to regen viewport 100 times = 1.66 seconds. (60.39 FPS)
Command: TestTogglePbrDisplay
Using rendered mode with PBR material support.
Command: TestMaxSpeed
Time to regen viewport 100 times = 1.66 seconds. (60.39 FPS)
Command: TestMaxSpeed
Time to regen viewport 100 times = 1.66 seconds. (60.39 FPS)
Command: TestMaxSpeed
Time to regen viewport 100 times = 1.64 seconds. (60.94 FPS)

Ok, so that seems to make no difference and the numbers are consistently right at 60 FPS. @jeff do you know if we have vsync on for V7?

Rhino has Vsync on as default in V6 at least.
So use -TestMaxSpeed and type v to toggle it off:

-Testmaxspeed FrameCount=100 DisplayList=NoRebuild DynamicDraw=Disabled VerticalSync=Disabled

Except there was a result in the stratosphere in his first test. I always run at least three tests in a row and throw out anomalies.

1 Like

Good point. My experience is that when I get 60.3 fps then that is a clear indication that Vsync is on :slight_smile: But chanses do happen and it can be a coincidence, so it is important to check!

There is really no point in comparing numbers above 60 FPS for tests. It is only models that run well below 60 FPS that we really need to work on to improve.

1 Like

I’ll take a look at the V7 code. It’s possible that someone changed the command n V7 and broke the VSync setting


You definitely have the VSync enabled on your system…and if the TestMaxSpeed option to disable it isn’t working, then it’s most likely because you’ve got it “Always Enabled” in your GPUs Global Settings. And the only reason I can think of for why V6 doesn’t show the VSync Enabled, is because there is a “Rhino Profile” setup for the V6 “Rhino.exe” that is configured to turn the VSync OFF.

Any time you see a frame rate of (60.xx), it’s almost always the VSync…and you’ll always see it, no matter what the display mode or scene is. Even a blank scene using the Wireframe display mode will only yield 60.xx fps.

Look in your GPUs Control Panel applet, and try disabling VSync there.


Well if VSync = Virtical Sync, the nVidia app has 3 options, Use the 3D application settings, Off and On. It was set to the first. I set to off and restarted WIP7. Resulted in the same times of 59.XX

And you haven’t setup an NVidia Profile for Rhino? If you’ve turned off VerticalSync permanently and are still seeing 60fps, then something else is turning it back on. When I do the same thing here with V7 WIP, everything works as expected… and if I set NVidia to “Use the 3D application settings”, then Rhino’s “-TestMaxSpeed VerticalSync=Disabled” also works as expected.

If you’re seeing 60fps with an empty scene in a wireframe view, then I’m pretty sure you’re still experiencing the vertical retrace delay. I’m also not understanding how it’s possible that your V6 Rendered mode is faster than its Shaded mode…that makes zero sense…unless you’re not working with the default settings for either of those modes.


Typed in “-TestMaxSpeed VerticalSync=Disabled” Ran 3 times Rhino WIP. Got 130 to 133fps.

Options ( FrameCount=100 DisplayList=NoRebuild DynamicDraw=Disabled VerticalSync=Disabled )
Time to regen viewport 100 times = 0.77 seconds. (130.72 FPS)

The more computers I test this with, the more disappointed I am, to be honest. I updated to 10.15.4 on my MacBookPro13,3 (AMD Radeon Pro 460 OpenGL Engine) and I don’t see an appreciable difference using TessellationShaders (testing with CurvesDemo.3dm).

And do you have any ideas why Mac rhino is performing so badly compare to the windows one?

Yes, it is clearly an AMD driver performance difference for tessellation shaders. Windows uses one set of drivers; macOS another.

1 Like

Thanks, let’s hope you guys can solve it.

1 Like

I hope the OpenGL material mapping issues will be fixed in V7.

Hello Steve,

I used my 1.6 GB competition file, with a lot of Surface, Meshes, Linked Blocks , and Curves.

Did TestMaxSpeed.

Rhino 6
1- Shaded Mode = 66.19 (1.51 FPS) faster
2- Rendered Mode = 125.88 (0.79 FPS) slower

Rhino WIP
1- Shaded Mode = 70.88 (1.41 FPS) Slower
2- Rendered Mode = 118.61 (0.84 FPS) Faster.

I immediately noticed a better viewport shadows in the rendered mode which is a great thing. I like how the shadows looks much softer


Core i7 4970K + GTX 1080 + 32GB of RAM


Anything specific?


I’ve posted this bug, months ago, and it’s meaningful because we need the OpenGL mode to be accurate because Raytraced mode is too slow for aligning materials/textures/mappings. The top is not going to map anyway, but that’s okay, the side is the issue. To examine this, it’s like that material is applied, but Rhino thinks the mapping is not necessary because it’s out of view. I’ve seen this behavior before with transparencies, which I think were fixed.

Rendered (OpenGL) View:

Cycles View:

[I wish we could map textures, repeating along/per NURB H/V’s because it’s dozens of times faster than anything in Rhino. I checked out what I think you were working, on, and it;s not the same.]

I’m finding it difficult to understand what you are describing, but are you saying that OCS mapping in V7 doesn’t solve this?