Jump to content

I'm a software engineer and I currently have a 5600x/3090FE primary gaming build but I just got a EVGA 3080 FTW Hybrid card. 

 

I was wanting to build myself a new work machine with this 3080 hybrid and run some flavor of Ubuntu/Linux on it. I know Linus and Luke are doing a similar challenge and wanted to get some input on what Luke's team deals with if any of them use Linux for development. I haven't decided on a CPU yet as I'm waiting for 12th gen Intel but I'm not sure how that will impact Linux performance(If at all).

 

I'd be interested in some gaming on the machine + mostly PHP/Laravel/VueJS stack development. 

 

Currently on a 2020 13" Macbook Pro with 32gb of ram. I was debating a 5800 or 5900x or possibly snagging a 10/11900k once 12th gen releases. 
 

Link to comment
https://linustechtips.com/topic/1383863-pc-build-for-a-software-engineer/
Share on other sites

Link to post
Share on other sites

7 minutes ago, SideDish said:

I was wanting to build myself a new work machine with this 3080 hybrid and run some flavor of Ubuntu/Linux on it.

Honestly speaking youll be better off served with AMD cards on Linux, their community made open source driver is so much stronger for compute and gaming usage.

 

But if you are going to keep that 3000 series instead of scalping it to afford a 6800XT, run Pop_OS!.

Press quote to get a response from someone! | Check people's edited posts! | Be specific! | Trans Rights

 

Link to post
Share on other sites

Unless what you're doing needs CUDA, sell the 3080 and get a 6800XT or 6900XT. Nvidia drivers do work on Linux, but there's a lot of features missing, a lot of things that don't work, and some bugs throughout. AMD's open source drives are just overall better on Linux, have better support for things like Wayland, and are more performant. 

 

For everything else, build it like any other workstation. Avoid having to use wifi since they can be hit or miss. Most everything else has some drivers in the kernel and should work out of the box. As for if Alder Lake will have issues with Linux, I wouldn't expect it to since the Linux kernel has had support for Arm's big/little design for quite a while now, and since Intel does support open source and Linux to some degree, I'd expect good Linux support either at launch or pretty soon after. That said, wait for reviews to be sure, I'm sure Level1Techs will do a piece about how Alder Lake works on Linux. 

 

As for the distro, for a workstation you should stick to the more stability oriented distros like Debian/Ubuntu, Fedora, OpenSUSE, etc. and their derivatives. If this is the first time your running Linux, stick to the Debian/Ubuntu branch since it's very well documented for everything from development to gaming. As said above, Pop_OS! is a very good distro for beginners, it's more up to date than Ubuntu while still being pretty stable and being able to take advantage of almost all of Ubuntu's documentation. If you go more upstream, Vanilla Ubuntu is still an option. 

Link to post
Share on other sites

14 hours ago, SideDish said:

I'm a software engineer and I currently have a 5600x/3090FE primary gaming build but I just got a EVGA 3080 FTW Hybrid card. 

 

I was wanting to build myself a new work machine with this 3080 hybrid and run some flavor of Ubuntu/Linux on it. I know Linus and Luke are doing a similar challenge and wanted to get some input on what Luke's team deals with if any of them use Linux for development. I haven't decided on a CPU yet as I'm waiting for 12th gen Intel but I'm not sure how that will impact Linux performance(If at all).

 

I'd be interested in some gaming on the machine + mostly PHP/Laravel/VueJS stack development. 

 

Currently on a 2020 13" Macbook Pro with 32gb of ram. I was debating a 5800 or 5900x or possibly snagging a 10/11900k once 12th gen releases. 
 

Depending on how comfortable you're with linux, I'd recommend arch (since the AUR is amazing for developers along with the latest packages and rolling release), or PopOS if you consider yourself more of a casual user.

 

Nvidia works flawlessly with linux, the ones complaining probably only used it 10 years ago and haven't had any recent experiences, install nvidia-dkms and you're golden. Nvidia performance is also slightly better than AMD's in most cases, but it should be within a 5% margin from each other.

 

As for alder lake support, intel has made many PRs to bring up their new CPUs, but we'll only know how well it works once it's out.

FX6300 @ 4.2GHz | Gigabyte GA-78LMT-USB3 R2 | Hyper 212x | 3x 8GB + 1x 4GB @ 1600MHz | Gigabyte 2060 Super | Corsair CX650M | LG 43UK6520PSA
ASUS X550LN | i5 4210u | 12GB
Lenovo N23 Yoga

Link to post
Share on other sites

2 minutes ago, SideDish said:

Would dual boot be an option to use for the gaming portion on Windows, and then just run Ubuntu and using the 3080 just for display output? 

Yeah, sure. Even easier if you have 2 different disk for each system (but not a problem if you don't).

FX6300 @ 4.2GHz | Gigabyte GA-78LMT-USB3 R2 | Hyper 212x | 3x 8GB + 1x 4GB @ 1600MHz | Gigabyte 2060 Super | Corsair CX650M | LG 43UK6520PSA
ASUS X550LN | i5 4210u | 12GB
Lenovo N23 Yoga

Link to post
Share on other sites

16 hours ago, SorryClaire said:

Honestly speaking youll be better off served with AMD cards on Linux, their community made open source driver is so much stronger for compute and gaming usage.

 

But if you are going to keep that 3000 series instead of scalping it to afford a 6800XT, run Pop_OS!.

actually nvidia out performs amdgpu still, it's just that the amdgpu driver is just that much easier to get setup with.

Link to post
Share on other sites

1 hour ago, 10leej said:

much easier to get setup with

much easier = works out of the box (unless you need to user professional stuff, then it's a PITA)

FX6300 @ 4.2GHz | Gigabyte GA-78LMT-USB3 R2 | Hyper 212x | 3x 8GB + 1x 4GB @ 1600MHz | Gigabyte 2060 Super | Corsair CX650M | LG 43UK6520PSA
ASUS X550LN | i5 4210u | 12GB
Lenovo N23 Yoga

Link to post
Share on other sites

21 hours ago, SideDish said:

I'm a software engineer

Do you have any experience with functional programming? Do you have any prior experience with Linux?

 

21 hours ago, RONOTHAN## said:

Unless what you're doing needs CUDA, sell the 3080 and get a 6800XT or 6900XT

Seconded. The AMD graphics experience on Linux is just way, way better. With NVIDIA, support for new versions of the graphics stack and new kernels tends to lag by months, so your GPU can hold you back from upgrades to your software stack (or break, when you unwittingly upgrade). In contrast, support for new AMD GPU starts landing in the mainline Linux kernel well in advance of the hardware's release, and once it stabilizes it stays working and you don't have to think about your kernel version or Xorg version or whatever.

Link to post
Share on other sites

16 minutes ago, Patrick C. said:

With NVIDIA, support for new versions of the graphics stack and new kernels tends to lag by months, so your GPU can hold you back from upgrades to your software stack (or break, when you unwittingly upgrade).

Mind giving an example? Ampere had day 0 support, and I've been running the mainline kernel with the latest stable drivers from nvidia for years now.

 

17 minutes ago, Patrick C. said:

In contrast, support for new AMD GPU starts landing in the mainline Linux kernel well in advance of the hardware's release, and once it stabilizes it stays working and you don't have to think about your kernel version or Xorg version or whatever.

They do try to start it in advance, but they still lag way too much with the merge windows usually get behind 1 version (which implies that the mainstream distros won't see support for the next 6 months).

Navi 2 was the first case where they had an almost OOTB experience.

FX6300 @ 4.2GHz | Gigabyte GA-78LMT-USB3 R2 | Hyper 212x | 3x 8GB + 1x 4GB @ 1600MHz | Gigabyte 2060 Super | Corsair CX650M | LG 43UK6520PSA
ASUS X550LN | i5 4210u | 12GB
Lenovo N23 Yoga

Link to post
Share on other sites

13 minutes ago, igormp said:

Mind giving an example? Ampere had day 0 support, and I've been running the mainline kernel with the latest stable drivers from nvidia for years now.

Take the most recent minor release of the Linux kernel, 5.14. The kernel was released on August 29 and NVIDIA didn't have working drivers until September 20. That kind of thing happens all the time, so there's always several weeks where you can't use NVIDIA drivers after the release of each Linux kernel, sometimes longer.

An example of the more persistent case is that NVIDIA drivers require changes from NVIDIA every time the Xorg ABI changes. Sometimes NVIDIA takes their time to do that work, and sometimes they decide they're done doing it forever. Here's one example from the first page of a search engine. (The issue with that particular ABI change affected all Xorg users, including on non-Linux platforms like FreeBSD.) That never happens with AMDGPU for a couple reasons: (1) source code is available, so mere ABI changes are easy to deal with (just recompile) and (2) the drivers themselves are community-maintained, so AMD can't just tell you your hardware is done now.

AMD does often still have incomplete support on hardware launch day, which is disappointing. But the point is this: you can't run a kernel or a display server too new for the AMDGPU driver or AMD's kernel modules, because they're just built into Mesa and the Linux kernel respectively. With NVIDIA, you have to wait on upstream to recompile their magic blob and hand it down to you from on high with every single ABI change.

 

Link to post
Share on other sites

47 minutes ago, Patrick C. said:

Take the most recent minor release of the Linux kernel, 5.14. The kernel was released on August 29 and NVIDIA didn't have working drivers until September 20. That kind of thing happens all the time, so there's always several weeks where you can't use NVIDIA drivers after the release of each Linux kernel, sometimes longer.

Huh, no? That was an specific bug with KMS, the driver worked fine otherwise (source: I was using it already).

 

46 minutes ago, Patrick C. said:

Sometimes NVIDIA takes their time to do that work, and sometimes they decide they're done doing it forever. Here's one example from the first page of a search engine.

Your example uses a legacy driver that was already announced to not be maintained anymore.

52 minutes ago, Patrick C. said:

The issue with that particular ABI change affected all Xorg users, including on non-Linux platforms like FreeBSD

That's also related to an older GPU model that was no longer supported by newer drivers (which kept up with the ABI changes).

 

53 minutes ago, Patrick C. said:

so AMD can't just tell you your hardware is done now.

I'm glad that's a thing for Polaris and onwards models, because for GCN and Terascale that's not a thing and you can't count on AMDGPU for that, and those GPUs are newer than the ones people complained in the posts you linked.

 

49 minutes ago, Patrick C. said:

With NVIDIA, you have to wait on upstream to recompile their magic blob and hand it down to you from on high with every single ABI change.

DKMS is a thing, and the headers file for that are MIT licensed.

The only issue I've faced with nvidia and kernel versions in the past 5 years was when nvidia did an ugly workaround (the gpl condom), which did make me hold back on updating my kernel for almost a month. 

On the other hand, I've had my fair share of problems with AMDGPU (mostly solved by now, but it was a fucking pile of shit 2~3 years ago), and still have issues with the entirety of AMD's compute stack on linux (rocm a shit), while with nvidia it just werks.

FX6300 @ 4.2GHz | Gigabyte GA-78LMT-USB3 R2 | Hyper 212x | 3x 8GB + 1x 4GB @ 1600MHz | Gigabyte 2060 Super | Corsair CX650M | LG 43UK6520PSA
ASUS X550LN | i5 4210u | 12GB
Lenovo N23 Yoga

Link to post
Share on other sites

6 hours ago, 10leej said:

actually nvidia out performs amdgpu still, it's just that the amdgpu driver is just that much easier to get setup with.

Really? Every benchmark on OpenCL on linux has been pretty favorable on AMD. And besides, the nvidia driver is super inconsistent on anything but Pop_OS!, that its really not worth the hassle for newbie.

Press quote to get a response from someone! | Check people's edited posts! | Be specific! | Trans Rights

 

Link to post
Share on other sites

9 minutes ago, SorryClaire said:

Really? Every benchmark on OpenCL on linux has been pretty favorable on AMD. And besides, the nvidia driver is super inconsistent on anything but Pop_OS!, that its really not worth the hassle for newbie.

Would you mind showing some benchmarks? The only ones I've found are old and may not be representative of the current status, where AMD's GPU only won when it came to memory bandwidth (due to HBM2). Other than that, I never deal with raw OpenCL workloads since most of what I do is CUDA-dependant (ROCm should be able to get over that, but alas it doesn't even work properly).

 

The gaming ones show what I said before, nvidia and amd within 5% of each other:

embed.php?i=2105303-IB-MAY35007322&sha=62acef6d54fc&p=2

(source)

 

Can't give an opinion on what you said with distros since I only use Arch on my personal computers and Ubuntu for my remote workstation.

FX6300 @ 4.2GHz | Gigabyte GA-78LMT-USB3 R2 | Hyper 212x | 3x 8GB + 1x 4GB @ 1600MHz | Gigabyte 2060 Super | Corsair CX650M | LG 43UK6520PSA
ASUS X550LN | i5 4210u | 12GB
Lenovo N23 Yoga

Link to post
Share on other sites

3 hours ago, igormp said:

Huh, no? That was an specific bug with KMS, the driver worked fine otherwise (source: I was using it already).

Oh, you're right. Looks like my distro just didn't backport the new NVIDIA drivers as quickly as they backported the 5.14 kernel.

 

3 hours ago, igormp said:

I'm glad that's a thing for Polaris and onwards models, because for GCN and Terascale that's not a thing and you can't count on AMDGPU for that, and those GPUs are newer than the ones people complained in the posts you linked.

Yeah, it took a long time for AMD to rewrite their driver stack. And yeah, I didn't realize how old the cards covered by the 340 series are. Those are really, really old.
 

3 hours ago, igormp said:

DKMS is a thing, and the headers file for that are MIT licensed.

DKMS only helps you with kernel changes that are only ABI changes. It doesn't help you for ABI changes in higher parts of the driver stack or for API changes in the kernel. You can just try your luck and telling the NVIDIA drivers to ignore Xorg ABI changes, though, and Xorg ABI changes seem much less frequent, and it also looks like for recent hardware, NVIDIA updates to keep up with those fairly well.

Link to post
Share on other sites

9 hours ago, finest feck fips said:

and it also looks like for recent hardware, NVIDIA updates to keep up with those fairly well.

My experience with nvidia on Linux begun with the pascal series, which is still fairly recent I guess, so that's why I said that I've never had problems. 

With AMD, on the other hand, I've been using Linux since GCN 1.0, and still currently have a Polaris gpu in my desktop, and it does still gives me headaches on a daily basis. 

FX6300 @ 4.2GHz | Gigabyte GA-78LMT-USB3 R2 | Hyper 212x | 3x 8GB + 1x 4GB @ 1600MHz | Gigabyte 2060 Super | Corsair CX650M | LG 43UK6520PSA
ASUS X550LN | i5 4210u | 12GB
Lenovo N23 Yoga

Link to post
Share on other sites

3 hours ago, igormp said:

till currently have a Polaris gpu in my desktop, and it does still gives me headaches on a daily basis. 

What problems are those? I had problems with a Polaris GPU a couple years ago, but things seem to have settled since.

Anyway I take back the part of my recommendation about graphics cards. For me, personally, when building a new system, I'd still prefer a GPU whose drivers are in-tree in Linux and in Mesa. But since OP already has a very nice and very recent NVIDIA GPU, they'll probably be fine sticking with it.

Link to post
Share on other sites

17 minutes ago, finest feck fips said:

What problems are those? I had problems with a Polaris GPU a couple years ago, but things seem to have settled since.

Probably you faced the same problems as I did a couple years ago (sound not working, low performance and other small stuff).

 

Nowadays, it works fine if all I need is a desktop display output, but for anything compute, well...

 

18 minutes ago, finest feck fips said:

Anyway I take back the part of my recommendation about graphics cards. For me, personally, when building a new system, I'd still prefer a GPU whose drivers are in-tree in Linux and in Mesa. But since OP already has a very nice and very recent NVIDIA GPU, they'll probably be fine sticking with it.

If someone wants a PC just for casual usage, then I'd also recommend AMD since it just werks out of the box, but in case they already have a Nvidia GPU or need to do some compute, then there's nothing wrong going with Nvidia nowadays, as most people like to claim, you just need to install a driver (which they should be used to, since you need to do that on windows too).

FX6300 @ 4.2GHz | Gigabyte GA-78LMT-USB3 R2 | Hyper 212x | 3x 8GB + 1x 4GB @ 1600MHz | Gigabyte 2060 Super | Corsair CX650M | LG 43UK6520PSA
ASUS X550LN | i5 4210u | 12GB
Lenovo N23 Yoga

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×