I've looked all over and can't find any reason as to why or how Nvidia names their drivers. for example they have a 330.xxx/340.xxx series that are current but also a 300.xxx and i've found that they aren't always release in order by number.
Here's an example on there site with version and release date
331.38 - January 13
334.16 - Feb 7
331.49 - Feb 18
I'm really confused about what driver to actually go with, a few different series versions seem to work adequately and I just want to have an understanding of it and what the best option to work from would be. I really appreciate any information
You have a version 304.117 named as
NVidia binary X.Org driver ('current' driver) in the Ubuntu Software Center. I'd say - use it if you can get it to run, it is likely to stay where you put it.
https://launchpad.net/~xorg-edgers/+archive/ubuntu/ppa - this may well work, but also break at times. e.g. it broke on 2014-07-10 for me as there was some kind of change in the development build - This is what is currently worked on for Ubuntu.
What you download at nvidia.com - likely to be the very latest there is for nvidia GPU's. But also likely to break at updates, if the updates involve changing things that the driver depends on. Just make sure you check that the driver is for your hardware.
The 'Noveau' driver - cannot comment thoroughly / seems to get in the way for the above.
I agree that Nvidia driver versions are confusing, since
4xx Nvidia have introduced the concept of
Short Lived and
Beta branches, hopefully this will help make things a bit clearer. There are a few rules of thumb that can help you:
435is newer than
435branches are being updated).
430) and some branches are
Long Livedbranches will get updates for a longer period than
Short Livedbranches (this is very similar to how
LTSUbuntu releases work).
Short Livedare not a measure of stability they are a measure of how long the branch will receive updates.
Given the list above you can see that it makes sense to think about Nvidia driver versions like you think about Ubuntu
LTS versions. Some people choose to stick with
Long Lived (
LTS) branches so that they don't need to be upgrading all the time (and possibly they are more stable?). Other people want the latest and greatest so they install the latest
Short Lived branch, this is like running Ubuntu interim releases.
Like with Ubuntu
LTS releases sometimes the
Long Lived branch is the latest branch available.
When it comes to release cadence things are not as clear. I am not sure if there is a fixed number of
Short Lived branches between a
Long Lived branch or not. I also don't know if there is a regular release cadence.
This nvidia devtalkforum post suggests the following:
Short Livedbranches are supported for 3 months
Long Livedbranches are supported for 6 months
I have not seen this actually confirmed by Nvidia themselves though.
In terms of branch numbering it looks like
Long Lived branch use even numbers while
Short Lived branches use odd numbers.
There are also
Beta branches (eg
418) where cutting edge features are available. These seem to be relatively stable and widely used.
You can find the latest releases listed on this page: https://www.nvidia.com/en-us/drivers/unix/. You can find the historical list of releases and release dates here: https://www.nvidia.com/en-us/drivers/unix/linux-amd64-display-archive/.
The following links provide more information:
Branch types in the 4xx series