Love performance on Linux

General discussion about LÖVE, Lua, game development, puns, and unicorns.
Post Reply
User avatar
retrotails
Party member
Posts: 212
Joined: Wed Apr 18, 2012 12:37 am

Love performance on Linux

Post by retrotails »

Specs:
i7 870
Radeon HD 5770 w/experimental fglrx (have tried several, its fastest)
8 GB DDR3
Lubuntu 12.04.2 LTS
Windows 7 (not anymore)

When I was on Winblows I got about 1000 FPS for hello world etc and 500 FPS for Tero vs. Nixon. Now I get about 500 and 300 FPS in each. GPU heavy things skew it even more, so it could just be the graphics drivers, but are they really that bad? I expected a far higher framerate from a more efficient OS with a native port of the same exact thing on Windows.
User avatar
Jasoco
Inner party member
Posts: 3727
Joined: Mon Jun 22, 2009 9:35 am
Location: Pennsylvania, USA
Contact:

Re: Love performance on Linux

Post by Jasoco »

Hey, I'm on OS X on an i7 and I get about 200 on average when drawing and calculating nothing at all. Never ever see this fabled 1000FPS Windows users get.
User avatar
Hexenhammer
Party member
Posts: 175
Joined: Sun Feb 17, 2013 8:19 am

Re: Love performance on Linux

Post by Hexenhammer »

retrotails wrote:Specs:
i7 870
Radeon HD 5770 w/experimental fglrx (have tried several, its fastest)
8 GB DDR3
Lubuntu 12.04.2 LTS
Windows 7 (not anymore)

When I was on Winblows I got about 1000 FPS for hello world etc and 500 FPS for Tero vs. Nixon. Now I get about 500 and 300 FPS in each. GPU heavy things skew it even more, so it could just be the graphics drivers, but are they really that bad? I expected a far higher framerate from a more efficient OS with a native port of the same exact thing on Windows.
Linux is not "more efficient". The whole stack was in fact never designed for gaming and thus is infamously poor in that area and obviously Nvidia and ATI don't invest much time in optimizing their Linux drivers for gaming. Linux gamers are an almost non-existant part of the market.

I have a Geforce GT 610, about the slowest current card on the market but I still get 1000 FPS (artificial limit imposed by LÖVE - not the actual limit of the OS/hardware combination) on Windows 7 i.e. it is not about your hardware.. The standard Linux stack simply sucks there.
User avatar
bartbes
Sex machine
Posts: 4946
Joined: Fri Aug 29, 2008 10:35 am
Location: The Netherlands
Contact:

Re: Love performance on Linux

Post by bartbes »

You are absolutely wrong though, opengl code is typically more performant on linux than on windows. But then, I doubt either of us have definitive proof. (Though I do seem to remember valve saying this when working on their porting.)

In any case, there can be multiple reasons for this, but let's first note that from 1000FPS to 500FPS is exactly 1ms worth of 'loss' 2 times might sound like much, but in absolute time it's barely anything.

Anyway, yes, these could be your graphics drivers, ati/amd's aren't the best, especially on linux, but also keep in mind nvidia's been a long-time opengl supporter. With regards to the max fps in an 'idle' game, this could be related to the sleep call, no OS guarantees it is accurate, but apparently windows does play nice there. (Then, I can't fault linux or osx, since it's documented that, especially on 'tiny sleeps', they can take some more time, as you're basically just saying, "Hey, OS, do a context switch!")
User avatar
Hexenhammer
Party member
Posts: 175
Joined: Sun Feb 17, 2013 8:19 am

Re: Love performance on Linux

Post by Hexenhammer »

bartbes wrote:You are absolutely wrong though,
No, I am not but I am not gonna argue about this. :cool:
User avatar
slime
Solid Snayke
Posts: 3170
Joined: Mon Aug 23, 2010 6:45 am
Location: Nova Scotia, Canada
Contact:

Re: Love performance on Linux

Post by slime »

bartbes wrote:opengl code is typically more performant on linux than on windows. But then, I doubt either of us have definitive proof. (Though I do seem to remember valve saying this when working on their porting.)
Valve found out that OpenGL code is more performant than equivalent DirectX 9 code, likely due to the very high overhead of DX9 function calls (which was improved a lot for DX10/11).

Here are some interesting numbers, but you should still take them with a grain of salt because any numbers will be highly dependent on the code that was written and many other factors:

http://www.g-truc.net/post-0547.html#menu

http://www.g-truc.net/post-0552.html#menu

In LÖVE's case, all of the rendering code is OpenGL for all platforms, and as far as I know there is not a huge difference in performance between the 3 platforms with the same code and hardware, unless the drivers you're using are massively out of date on one of the platforms or something.
Keep in mind the fact that windowed mode will possibly screw a little with performance (and input lag) in different ways on each platform - you should always test in fullscreen using the same resolution. :)

Hexenhammer wrote:Linux is not "more efficient". The whole stack was in fact never designed for gaming and thus is infamously poor in that area and obviously Nvidia and ATI don't invest much time in optimizing their Linux drivers for gaming. Linux gamers are an almost non-existant part of the market.
As long as you're talking about fullscreen games, the "stack" is pretty much the same on all OpenGL platforms.
Also, https://developer.nvidia.com/sites/defa ... 0Linux.pdf
Post Reply

Who is online

Users browsing this forum: Google [Bot] and 3 guests